<feed xmlns='http://www.w3.org/2005/Atom'>
<title>luci/modules/luci-base/src/template_lmo.c, branch master</title>
<subtitle>Lua Configuration Interface (mirror)</subtitle>
<id>https://git.openwrt.org/project/luci/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/project/luci/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/'/>
<updated>2022-10-24T23:03:37Z</updated>
<entry>
<title>treewide: separate Lua runtime resources</title>
<updated>2022-10-24T23:03:37Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2022-09-13T21:50:12Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=673f38246ac3548caefec41183e3dd7477d9f6f6'/>
<id>urn:sha1:673f38246ac3548caefec41183e3dd7477d9f6f6</id>
<content type='text'>
Move classes required for Lua runtime support into a new `luci-lua-runtime`
package. Also replace the `luci.http` and `luci.util` classes in
`luci-lib-base` with stubbed versions interacting with the ucode based
runtime environment.

Finally merge `luci-base-ucode` into the remainders of `luci-base`.

Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>luci-base: add support for plural translations and contexts in Lua api</title>
<updated>2020-01-25T22:21:35Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2020-01-23T20:53:26Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=9939fc5a26d07da4756497bb6a7dc51dcf379e98'/>
<id>urn:sha1:9939fc5a26d07da4756497bb6a7dc51dcf379e98</id>
<content type='text'>
 - Introduce a new luci.template.parser.ntranslate() function which
   takes a count, a singular and a plural translation string as well
   as an optional context argument and returns the appropriate,
   language specific plural translation.

 - Introduce an optional translation context argument in the existing
   luci.template.parser.translate() function

 - Support translation contexts in LuCI template directives.
   Translation messages are split on the first unescaped pipe
   character and the reamining string after the pipe is treated
   as context.

Examples:

 - `string.format(p.ntranslate(n, "1 apple", "%d apples"), n)` will
   return an appropriate plural translation for the given amount.

 - `translate("Load", "The system load")` will return an appropiate
   translation for `Load`, using `The system load` as disambiguation
   context (a `msgctxt` directive in *.po files).

 - Likewise `&lt;%:Load|The system load%&gt;` will translate the word
   `Load` while using the remainder of the string as context.

 - To use pipes in translations strings literally, they must be
   escaped: `&lt;%:Use the "\|" character%&gt;` will translate the literal
   string `Use the "|" character`.

Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>luci-base: further hash calculation signedness bugfixes</title>
<updated>2018-11-19T12:31:43Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2018-11-19T12:28:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=51de74d5201b0a1e314ed24cb1003dc3cf701633'/>
<id>urn:sha1:51de74d5201b0a1e314ed24cb1003dc3cf701633</id>
<content type='text'>
 - cbi.js: make sure to treat single bytes as signed char when
   handling end cases

 - template_lmo.c: make sure to treat single bytes as signed
   char when handling end cases, avoids hash miscalculations
   on ARM

Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>luci-base: template: add translation iterator function</title>
<updated>2018-11-05T10:01:45Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2018-10-17T10:57:34Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=62102f4f0e8a88ffbdf44517f4ff737049a3f3bf'/>
<id>urn:sha1:62102f4f0e8a88ffbdf44517f4ff737049a3f3bf</id>
<content type='text'>
Introduce a new luci.template.parser.get_translations() function which will
iterate all loaded translation entries and pass the to the given callback
function.

This is useful to expose the loaded translations in other formats, e.g. for
wrapping them into JSON feeds.

Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>Update my email addresses in the license headers</title>
<updated>2015-01-16T22:49:44Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2015-01-16T22:46:42Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=41d2b33087da393453c45f5d923d690c88ee5474'/>
<id>urn:sha1:41d2b33087da393453c45f5d923d690c88ee5474</id>
<content type='text'>
Signed-off-by: Jo-Philipp Wich &lt;jow@openwrt.org&gt;
</content>
</entry>
<entry>
<title>Rework LuCI build system</title>
<updated>2015-01-08T15:26:20Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2014-12-03T14:17:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=1bb4822dca6113f73e3bc89e2acf15935e6f8e92'/>
<id>urn:sha1:1bb4822dca6113f73e3bc89e2acf15935e6f8e92</id>
<content type='text'>
 * Rename subdirectories to their repective OpenWrt package names
 * Make each LuCI module its own standalone package
 * Deploy a shared luci.mk which is used by each module Makefile

Signed-off-by: Jo-Philipp Wich &lt;jow@openwrt.org&gt;
</content>
</entry>
</feed>
