mirror of
https://github.com/TangentFoxy/etlua.git
synced 2026-08-16 08:08:17 -06: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
Languages
Lua
55.5%
MoonScript
44%
Makefile
0.5%