handlers/render.lua

Mon, 31 Mar 2025 16:19:17 -0500

author
Tuomo Valkonen <tuomov@iki.fi>
date
Mon, 31 Mar 2025 16:19:17 -0500
changeset 47
242ea28b8cad
parent 46
86950ef7dbcb
permissions
-rwxr-xr-x

bib insertion plugin

7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
1 --@module handlers.render
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
2
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
3 local handlers_render = {}
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
4
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
5 local ltp = require('ltp.template')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
6 local markdown = require('markdown')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
7 local config = require('config')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
8 local path = require('mypath')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
9 local filecache = require('filecache')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
10 local log = require('log')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
11 local dependency = require('dependency')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
12 local pandoc = require('pandoc')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
13 local markdown_it = require('markdown_it')
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
14 local err = require('err')
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
15
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
16 --
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
17 -- Phase 1: load & markup
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
18 --
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
19
7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
20 function handlers_render.phase1(file, env)
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
21 local f = io.open(path.join(env.paths.src, file), 'r')
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
22 local data = nil
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
23 local in_meta = false
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
24 local linenum = 1
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
25 local meta = {}
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
26
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
27 for l in f:lines() do
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
28 if (linenum == 1 or in_meta) and string.match(l, config.meta_marker) then
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
29 in_meta = not in_meta
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
30 elseif in_meta then
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
31 local key, val = string.match(l, "%s*([^:]*)%s*:%s*(.*)%s*")
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
32 if key and val then
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
33 -- very primitive quoting, primarily as a hack to
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
34 -- not need converting my files that much from Webgen.
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
35 local val_unq = string.match(val, '^"(.*)"$')
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
36 meta[key] = val_unq or val
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
37 else
23
0ea4b0786b43 Only parse metadata if starts on first line
Tuomo Valkonen <tuomov@iki.fi>
parents: 22
diff changeset
38 err.file_pos(file, linenum, "meta data syntax error: " .. l)
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
39 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
40 else
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
41 if data then
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
42 data = data .. "\n" .. l
29
Tuomo Valkonen <tuomov@iki.fi>
parents: 26
diff changeset
43 else
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
44 data = l
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
45 end
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
46 end
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
47 linenum = linenum + 1
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
48 end
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
49
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
50 log.log("Load " .. file .. "\n")
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
51
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
52 f:close()
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
53
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
54 local destination
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
55 if meta.destination then
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
56 destination = path.join(path.dirname(file), meta.destination)
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
57 else
25
11ae9103f59d Destination name creation changes
Tuomo Valkonen <tuomov@iki.fi>
parents: 23
diff changeset
58 -- If the file has two extensions, then only remove last extension.
11ae9103f59d Destination name creation changes
Tuomo Valkonen <tuomov@iki.fi>
parents: 23
diff changeset
59 -- Otherwise replace extension with .html.
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
60 destination = path.rmext(file)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
61 base = path.rmext(destination)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
62 if base == destination then
25
11ae9103f59d Destination name creation changes
Tuomo Valkonen <tuomov@iki.fi>
parents: 23
diff changeset
63 destination = destination .. ".html"
11ae9103f59d Destination name creation changes
Tuomo Valkonen <tuomov@iki.fi>
parents: 23
diff changeset
64 end
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
65 end
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
66
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
67 local deps = nil
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
68 if meta.dependencies then
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
69 deps = {}
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
70 for s in string.gmatch(meta.dependencies, "[^%s,]+") do
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
71 table.insert(deps, s)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
72 end
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
73 meta.dependencies = nil
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
74 end
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
75
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
76 local page = {
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
77 data = data,
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
78 meta = meta,
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
79 destination = destination,
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
80 dependencies = deps,
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
81 file = file,
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
82 }
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
83
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
84 env.pages[file] = page
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
85 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
86
7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
87 function handlers_render.process_lua(template, env)
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
88 env = table.join(env, { env = env }) -- TODO: should use __index
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
89 --return ltp.render(nil, 1, template, env, {}, "<%", "%>", {})
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
90 return ltp.render_template(template, "<%", "%>",
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
91 ltp.merge_index(env, _G))
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
92 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
93
7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
94 function handlers_render.env_for(file, env, path_prefix)
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
95 local newenv = table.copy(env)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
96
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
97 newenv.source_file = file
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
98 newenv.base_url = path.to_root(file)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
99 newenv.path_prefix = (path_prefix or "")
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
100 newenv.page = env.pages[file]
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
101
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
102 return newenv
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
103 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
104
30
3ac53da03439 Support loading TEMPLATE_PATH/katex_config.json.
Tuomo Valkonen <tuomov@iki.fi>
parents: 29
diff changeset
105 function handlers_render.render(file, env, path_prefix, renderer)
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
106 local data = env.pages[file].data
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
107 if data then
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
108 local newenv = handlers_render.env_for(file, env, path_prefix)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
109 local data2 = handlers_render.process_lua(data, newenv)
16
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
110 meta = env.pages[file].meta
21
3c71c525cec2 Use markdown-it as default markdown parser.
Tuomo Valkonen <tuomov@iki.fi>
parents: 17
diff changeset
111 if renderer == "markdown-it" then
3c71c525cec2 Use markdown-it as default markdown parser.
Tuomo Valkonen <tuomov@iki.fi>
parents: 17
diff changeset
112 return markdown_it.markdown(data2, env)
3c71c525cec2 Use markdown-it as default markdown parser.
Tuomo Valkonen <tuomov@iki.fi>
parents: 17
diff changeset
113 elseif renderer == "pandoc" then
16
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
114 return pandoc.pandoc(data2)
21
3c71c525cec2 Use markdown-it as default markdown parser.
Tuomo Valkonen <tuomov@iki.fi>
parents: 17
diff changeset
115 elseif renderer == "lua-markdown" then
15
82d254b8f01e added markdown: true/false meta-tag
Tuomo Valkonen <tuomov@iki.fi>
parents: 7
diff changeset
116 return markdown(data2)
16
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
117 elseif renderer == "none" then
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
118 return data2
15
82d254b8f01e added markdown: true/false meta-tag
Tuomo Valkonen <tuomov@iki.fi>
parents: 7
diff changeset
119 else
16
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
120 error('Unknown renderer')
15
82d254b8f01e added markdown: true/false meta-tag
Tuomo Valkonen <tuomov@iki.fi>
parents: 7
diff changeset
121 end
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
122 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
123 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
124
7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
125 function handlers_render.phase2(file, env)
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
126 local page = env.pages[file]
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
127 local src = path.join(env.paths.src, file)
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
128 local dst = path.join(env.paths.dst, page.destination)
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
129 local tmpl = path.join(env.paths.tmpl,
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
130 page.meta.template or "page.template")
30
3ac53da03439 Support loading TEMPLATE_PATH/katex_config.json.
Tuomo Valkonen <tuomov@iki.fi>
parents: 29
diff changeset
131 renderer = page.meta.renderer or "markdown-it"
3ac53da03439 Support loading TEMPLATE_PATH/katex_config.json.
Tuomo Valkonen <tuomov@iki.fi>
parents: 29
diff changeset
132
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
133 local build = page.meta.always_build
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
134 if not build then
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
135 local deps = { src, tmpl }
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
136 if page.dependencies then
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
137 for _, v in ipairs(page.dependencies) do
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
138 table.insert(deps, v)
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
139 end
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
140 end
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
141 if renderer == "markdown-it" then
30
3ac53da03439 Support loading TEMPLATE_PATH/katex_config.json.
Tuomo Valkonen <tuomov@iki.fi>
parents: 29
diff changeset
142 markdown_it.add_deps(deps, env)
3ac53da03439 Support loading TEMPLATE_PATH/katex_config.json.
Tuomo Valkonen <tuomov@iki.fi>
parents: 29
diff changeset
143 end
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
144 build = dependency.simple_update_check(dst, deps)
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
145 end
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
146
16
e377590e9b19 Support Pandoc rendering
Tuomo Valkonen <tuomov@iki.fi>
parents: 15
diff changeset
147 if build then
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
148 log.log("Render " .. file .. "\n")
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
149 local content = handlers_render.render(file, env, page.meta, renderer)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
150 local page_template = filecache.get(tmpl)
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
151
46
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
152 local newenv = table.join({ content = content }, handlers_render.env_for(file, env))
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
153 local data2 = handlers_render.process_lua(page_template, newenv)
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
154
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
155 log.log("Write " .. page.destination .. "\n")
86950ef7dbcb Dependency handling improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 42
diff changeset
156 local f = io.openX(dst, "w")
3
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
157 f:write(data2)
b2df1b3f2c83 Improvements
Tuomo Valkonen <tuomov@iki.fi>
parents: 2
diff changeset
158 end
2
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
159 end
3975fa5ed630 (don't know)
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
160
7
038275cd92ed Convert module stuff to lua 5.3
Tuomo Valkonen <tuomov@iki.fi>
parents: 4
diff changeset
161 return handlers_render

mercurial