The configuration processing works as follows - the configuration parameters are set in memory, and an apply function applies all the changes directly to the device. While this works during startup and reload, it adds a needless overhead when processing config set commands from the command socket. This change makes it such that a `config set` command would update the configuration for that particular key, and then immediately call the callback function for that key. This has the effect that individual configuration changes are visible immediately, without having to reapply every other configuration that hasn't changed. This commit also removes the `config apply` command, since it is no longer needed. The `config load` and `config reload` already handle applying the configuration after reading it. |
||
---|---|---|
.. | ||
LINGUAS | ||
Makevars | ||
POTFILES.in | ||
README.md | ||
libx52.pot | ||
xx_PL.po |
README.md
Notes for translators
libx52 is slowly being migrated to use the GNU gettext library to support
internationalization (i18n). Contributions are welcome to both update the
existing code to use gettext
, and to add new translations.
xx_PL
xx_PL is a translation of English strings into Pig Latin that is used in lieu of any real translations. This file is used to test that the translation functionality is working as expected.
Adding new code to i18n (maintainers)
Most code should be using the _("...")
format to refer to a translatable
string. Some strings can be left untranslated, but these are mostly just
whitespace, such as line breaks.
Once you add new strings to be translated, update po/POTFILES.in
to include
any new files that have to be translated. The file path is relative to the root
of the project.
The next step is to rebuild the translation template libx52.pot
. To do
this, run make -C po update-po
from your build directory (where you ran
configure
). This also updates any translation files (with .po
extension) to
include the new source strings.
Adding new languages (translators)
Run msginit -l <language-code> libx52.pot
to generate a new .po
file
for that language. Language code is a 2 letter
ISO-639-1 code with an
optional ISO-3166-1 region
suffix. Edit this file to add your translation, and add the new language to
po/LINGUAS
.
po/LINGUAS
must be in alphabetical order.
Testing the i18n functionality
TODO