1 |
1 |
2 # lgen |
2 # lgen |
3 |
3 |
4 This is a very simple website templating engine based on markdown and Lua, |
4 This is a very simple website templating engine based on markdown and Lua, |
5 written by Tuomo Valkonen 〈<tuomov@iki.fi>〉. |
5 written by Tuomo Valkonen ⟨<tuomov@iki.fi>⟩. |
6 |
6 |
7 It is not particularly supported or maintained; it was created back in 2009 |
7 It is not particularly supported or maintained; it was created back in 2009 |
8 to build [my own website](http://tuomov.iki.fi/). The engine is still being |
8 to build [my own website](http://tuomov.iki.fi/). The engine is still being |
9 used for that purpose. I decided to put the code online in 2017 after |
9 used for that purpose. I decided to put the code online in 2017 after |
10 having had to spend some time to convert it to Lua 5.3 from which the |
10 having had to spend some time to convert it from earlier versions to [Lua 5.3][Lua] from which the `module()` function had been removed. |
11 module() function had been removed. |
|
12 |
11 |
13 Features (see the included example): |
12 ## Features |
|
13 |
|
14 For details see the included example. |
14 |
15 |
15 * Embedded Lua code with the ltp engine. |
16 * Embedded Lua code with the ltp engine. |
16 * Advanced markdown features, including syntax highlighting of code blocks, via Pandoc |
17 * Advanced markdown features, including syntax highlighting of code blocks |
17 (select `renderer: pandoc` in the page meta section). |
18 and LaTeX mathematics via |
|
19 [markdown-it][] and [KaTeX][] or [Pandoc][]. Markdown-it is now the default renderer. To select lua-markdown, use `renderer: lua-markdown` in the page YAML meta section. Use `renderer: pandoc` for Pandoc. |
|
20 |
|
21 ## Installation |
|
22 |
|
23 You need to install [Lua 5.3][Lua]. |
|
24 To use [markdown-it][], you need to install [NodeJS][] and then execute `npm install` to install in the top directory of this project. |
|
25 |
|
26 ## License |
18 |
27 |
19 Aside from the included `compat_env.lua` and the ltp engine (which is has not |
28 Aside from the included `compat_env.lua` and the ltp engine (which is has not |
20 updated to Lua 5.3, and requires on the compat_env module), the code is in |
29 updated to Lua 5.3, and requires on the compat_env module), the code is in |
21 the public domain. |
30 the public domain. |
|
31 |
|
32 [KaTeX]: https://katex.org/ |
|
33 [markdown-it]: https://github.com/markdown-it/markdown-it |
|
34 [Pandoc]: https://pandoc.org/ |
|
35 [Lua]: http://www.lua.org/ |
|
36 [NodeJS]: https://nodejs.org/en/ |