mirror of
https://github.com/TangentFoxy/etlua.git
synced 2025-07-27 18:42:17 +00:00
5abbc2fc7cd76cdf25c848ace0b6c4ddde7e6b80
elua
Embedded Lua (5.1/5.2) templating
Tutorial
local elua = require "elua"
local template = elua.compile([[
Hello <%= name %>,
Here are your items:
<% for i, item in pairs(items) do %>
* <%= name -%>
<% end %>
]])
print(template({
name: "leafo",
items: { "Shoe", "Reflector", "Scarf" }
}))
Reference
The following tags are supported
<% lua_code %>
runs lua code verbatim<%= lua_expression %>
writes result of expression to output, HTML escaped<%- lua_expression %>
same as above but with no HTML escaping
Any of the embedded Lua tags can use the -%>
closing tag to suppress a
following newline if there is one, for example: <%= 'hello' -%>
.
Methods
func = elua.compile(template_string)
Compiles the template into a function, the returned function can be called to
render the template. The function takes one argument: a table to use as the
environment within the template. _G
is used to look up a variable if it can't
be found in the environment.
result = elua.render(template_string, env)
Compiles and renders the template in a single call. If you are concerned about
high performance this should be avoided in favor of compile
if it's possible
to cache the compiled template.
License
MIT
Description
Languages
Lua
55.5%
MoonScript
44%
Makefile
0.5%