49 lines
1.3 KiB
Plaintext
49 lines
1.3 KiB
Plaintext
sitegen = require "sitegen"
|
|
lfs = require "lfs"
|
|
tools = require "sitegen.tools"
|
|
site = require "sitegen.site"
|
|
|
|
rootname = (str) ->
|
|
result = string.gsub str, "%..+", ""
|
|
result
|
|
|
|
split = (str, delimiter="/") ->
|
|
[capture for capture in string.gmatch str, "[^#{delimiter}]+"]
|
|
|
|
last = (list) -> list[#list]
|
|
join = (first, last, delimiter="/") -> table.concat {first, last}, delimiter
|
|
target = (path, prefix) -> join prefix, rootname(last(split path))
|
|
|
|
posts = (path=".") ->
|
|
files = [file for file in lfs.dir path when file != "." and file != ".."]
|
|
{join(path, file), target(file, "/posts") for _, file in ipairs files}
|
|
|
|
-- renderer = require "sitegen.renderers.html"
|
|
|
|
|
|
-- Change output dir to what Openresty prefers
|
|
-- site = site!
|
|
-- site.config.out_dir = "html/"
|
|
|
|
-- oof = site!
|
|
|
|
-- templates = site.templates
|
|
|
|
-- require"moon".p [k for k,v in pairs templates]
|
|
-- require"moon".p [k for k,v in pairs site.templates]
|
|
-- require"moon".p templates
|
|
-- require"moon".p renderer.Renderer.can_load("test.md")
|
|
-- require"moon".p renderer\helpers!
|
|
|
|
css = tools.system_command "cat < %s > %s", "css"
|
|
|
|
sitegen.create =>
|
|
@title = "Hello World"
|
|
@app_name = "stasis"
|
|
@version = "0.2.12"
|
|
add "index.md"
|
|
add path, target: target for path, target in pairs posts "docs"
|
|
|
|
|
|
build css, "app.css"
|