9 local path=require('path') |
9 local path=require('path') |
10 local filecache=require('filecache') |
10 local filecache=require('filecache') |
11 local log=require('log') |
11 local log=require('log') |
12 local dependency=require('dependency') |
12 local dependency=require('dependency') |
13 local pandoc=require('pandoc') |
13 local pandoc=require('pandoc') |
|
14 local markdown_it=require('markdown_it') |
14 |
15 |
15 -- |
16 -- |
16 -- Phase 1: load & markup |
17 -- Phase 1: load & markup |
17 -- |
18 -- |
18 |
19 |
88 local data=env.pages[file].data |
89 local data=env.pages[file].data |
89 if data then |
90 if data then |
90 local newenv=handlers_render.env_for(file, env, path_prefix) |
91 local newenv=handlers_render.env_for(file, env, path_prefix) |
91 local data2=handlers_render.process_lua(data, newenv) |
92 local data2=handlers_render.process_lua(data, newenv) |
92 meta = env.pages[file].meta |
93 meta = env.pages[file].meta |
93 renderer = meta.renderer or "markdown" |
94 renderer = meta.renderer or "markdown-it" |
94 if renderer == "pandoc" then |
95 if renderer == "markdown-it" then |
|
96 return markdown_it.markdown(data2, env) |
|
97 elseif renderer == "pandoc" then |
95 return pandoc.pandoc(data2) |
98 return pandoc.pandoc(data2) |
96 elseif renderer == "markdown" then |
99 elseif renderer == "lua-markdown" then |
97 return markdown(data2) |
100 return markdown(data2) |
98 elseif renderer == "none" then |
101 elseif renderer == "none" then |
99 return data2 |
102 return data2 |
100 else |
103 else |
101 error('Unknown renderer') |
104 error('Unknown renderer') |