Interface Translations
Add a New Language to Remark42
Translation files are stored in /frontend/apps/remark42/app/locales
directory with .json
extension and content like following:
{
"anonymousLoginForm.length-limit": "Username must be at least 3 characters long",
"anonymousLoginForm.log-in": "Log in",
"anonymousLoginForm.symbol-limit": "Username must start from the letter and contain only Latin letters, numbers, underscores, and spaces",
<...>
}
Add a new translation
We truly appreciate people spending time contributing their translations to remark42. Please go through the steps
below to have your translation available to all remark42 users and included in the next release.
Create a fork of umputun/remark42 repo, and if you already have one, please pull the latest changes from the upstream master branch. It could be done like that:
git remote add upstream https://github.com/umputun/remark42.git git fetch upstream git rebase upstream/master git push
Add a new locale with a two-letter code of the language you want to do the translation into to list in frontend/apps/remark42/tasks/supportedLocales.json
Run
npm install
in thefrontend
folderRun
npm run translation:extract
in thefrontend
folderRun
npm run translation:generate
in thefrontend
folderTranslate all values in the newly created JSON file in
frontend/apps/remark42/app/locales/Commit all changes above in your fork
Test your changes in the interface:
Uncomment
locale: "ru"
line in frontend/apps/remark42/templates/demo.ejs and replaceru
with your translation language codeRun remark42 in Docker by issuing the following commands from the root directory of your remark42 fork:
shell docker compose -f compose-dev-frontend.yml build docker compose -f compose-dev-frontend.yml up
open http://127.0.0.1:8080/web/, log in, make a comment, make a reply to a comment, and make sure your translation looks as you expect it to look
make a screenshot from http://127.0.0.1:8080 with your translation in place
after all previous steps are done, create a Pull Request to umputun/remark42 repo with your changes, attaching a screenshot or two from your local test instance to it