Jo-Philipp Wich edited this page Jan 15, 2016 · 1 revision

Table of Contents

Reference: Templates

LuCI has a simple regex based template processor which parses HTML-files to Lua functions and allows to store precompiled template files. The simplest form of a template is just an ordinary HTML-file. It will be printed out to the user as is.

In LuCI every template is an object with an own scope. It can therefore be instanciated and each instance can has a different scope. As every template processor. LuCI supports several special markups. Those are enclosed in -Tags.

By adding a - right after the opening every whitespace before the markup will be stripped. Adding a - right before the closing %> will equivalently strip every whitespace behind the markup.

Builtin functions and markups

Including Lua code


<% code %>

Writing variables and function values


<% write (value) %>



Including templates


<% include (templatename) %>





<%= translate("Text to translate") %>


<%:Text to translate%>



<%# comment %>

Builtin constants

Name Value
REQUEST_URI The current URL (without server part)
controller Path to the Luci main dispatcher
resource Path to the resource directory
media Path to the active theme directory
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.