Internationalizing Messages in Groovy Views
We do not encourage creating views in Groovy for internationalization, Jelly is the preferred way to do this. |
Introduction
In Jenkins, you need add a similar .properties
file with the .groovy
file in the same directory. Any changes of .properties
does not need restart Jenkins or plugins.
Example
As an example, consider the following groovy page:
src/main/resources/org/example/package/index.groovy
:
package jenkins.security.DownloadSettings
def f = namespace(lib.FormTagLib)
f.section(title:_("title.pluginManager")) {
f.entry(field: "useBrowser", title:_("useBrowser"))
f.checkbox(title: _("title.browserCheckbox"))
}
}
Then you could add, for example, a Chinese localization file simply as:
src/main/resources/org/example/package/index_zh_CN.properties
:
title.pluginManager=\u63D2\u4EF6\u7BA1\u7406
field.useBrowser=\u4F7F\u7528\u6D4F\u89C8\u5668
title.browserCheckbox=\u4F7F\u7528\u6D4F\u89C8\u5668\u4E0B\u8F7D\u5143\u6570\u636E
In property files all non-ASCII characters need to be converted into hexcode. Modern IDEs do it automatically, so you can be just writing localizations in the target languages there.