libx52/po
nirenjan e8abbd0374 Allow for a greater range in mouse speeds
Prior to this change, the virtual mouse update was restricted to
updating once every `mouse_delay` microseconds, and the allowed values
were a small fixed set. Some users reported that even at the highest
speed, the speed was slower than they were used to (with a high DPI
mouse).

This change modifies the speed calculation algorithm as follows. It
keeps the slowest speed to refresh the mouse every 70 ms. As the speed
increases, the refresh rate drops by 5 ms for every increment in speed,
until the refresh rate caps at once every 10 ms. Beyond that, a
multiplicative factor begins to take effect, with each speed increase
adding 0.25 to the factor. That is, speed 13 would multiply the axis
components by 1.25 _and_ refresh every 10 ms. Speed 14 would bump the
factor to 1.50, speed 15 to 1.75, and so on, until the factor tops out
at 6.0.
2021-09-19 16:39:49 -07:00
..
LINGUAS Add internationalization support for x52test 2020-05-20 14:36:40 -07:00
Makevars Add gettext support to libx52 2020-05-19 08:07:10 -07:00
POTFILES.in Create I/O thread to read and process events 2021-09-14 13:33:36 -07:00
README.md Add internationalization support for x52test 2020-05-20 14:36:40 -07:00
x52pro-linux.pot Allow for a greater range in mouse speeds 2021-09-19 16:39:49 -07:00
xx_PL.po Allow for a greater range in mouse speeds 2021-09-19 16:39:49 -07:00

README.md

Notes for translators

x52pro-linux 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 x52pro-linux.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> x52pro-linux.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