photoprism/frontend/src/locales
Michael Mayer e10cd76f7c Frontend: Update Japanese translation
The full locale happened to be "ja_JP", not just "ja".
2021-01-04 18:36:31 +01:00
..
de.mo Stacks: Fix slider label and update translations.pot #616 #667 2020-12-19 19:20:38 +01:00
de.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
en.mo Use gettext for backend translations too 2020-07-15 01:26:54 +02:00
en.po Use gettext for backend translations too 2020-07-15 01:26:54 +02:00
es.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
es.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
fr.mo FR: Translation for stackable / purge of suppressed entries (#726) 2020-12-21 19:24:58 +01:00
fr.po FR: Translation for stackable / purge of suppressed entries (#726) 2020-12-21 19:24:58 +01:00
he.mo RTL and Hebrew translation (#801) 2021-01-04 18:13:54 +01:00
he.po RTL and Hebrew translation (#801) 2021-01-04 18:13:54 +01:00
hi.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
hi.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
ja.mo Frontend: Update Japanese translation 2021-01-04 18:36:31 +01:00
ja.po Frontend: Update Japanese translation 2021-01-04 18:36:31 +01:00
nl.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
nl.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
pl.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
pl.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
pt_BR.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
pt_BR.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
README.md Translations: Update frontend README.md 2020-07-16 10:29:03 +02:00
ru.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
ru.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
sk.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
sk.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
translations.json Frontend: Update Japanese translation 2021-01-04 18:36:31 +01:00
translations.pot Frontend: Update Japanese translation 2021-01-04 18:36:31 +01:00
zh.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
zh.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00
zh_TW.mo Update .po files and translations.json 2020-12-19 14:42:13 +01:00
zh_TW.po Settings: Update description of thumb render options 2020-12-21 15:45:33 +01:00

Frontend Translations

PhotoPrism uses gettext for localizing frontend and backend. It's one of the most widely adopted standards for translating user interfaces.

Human readable messages like File not found are used as ids for finding matching translations, and used as defaults whenever there is no translation available.

Messages may optionally contain placeholders, like Found %{n} files, for numbers and other variables.

We strongly recommend Poedit for creating and updating translations. Download is free for Mac, Windows and Linux. It's source code can be obtained on GitHub.

*.po files contain localized messages for each language, identified by their two-letter locale, like de.po for German. You can open, edit and save them with Poedit to update existing translations.

As it doesn't seem necessary for now, and to reduce the amount of work, we don't maintain translations for dialects like de_AT or pt_BR.

To add a new translation, open translations.pot, click on "Create New Translation" at the bottom, select the language, and start translating. When done, save your translation as *.po file using the two-letter language locale as name. In addition, the new language needs to be added to the Languages function in /frontend/src/options/options.js.

A binary *.mo (machine object) file will be automatically saved along with every *.po file. You won't be able to open those in a text editor, but please include them in git commits or when sending translations via email. The compiled translations.json file is not required for pull requests and often causes merge conflicts.

If you have a working development environment in place:

Running npm run gettext-compile in the frontend directory compiles existing translations into a single translations.json file.

Now start a frontend build using npm run build or keep

npm run watch

running in the background to automatically recompile JS and CSS whenever there are changes. Lastly, make sure photoprism is running and open the Web UI in a supported browser. Changing the language in Settings automatically triggers a reload.

To extract new or changed text needing translation from *.js and *.vue source code, run

npm run gettext-extract

in the frontend directory. This updates the POT file translations.pot.

Apply changes to existing translations by clicking on "Catalogue" > "Update from POT File..." in the Poedit app menu.