ref: 5f5f50cecd1641d96a7febf813f067997b703626 bibliogram-docs/docs/Translating.md -rw-r--r-- 3.4 KiB
5f5f50ce — Cadence Ember Add creating themes documentation 2 months ago

#Translating Bibliogram

Scroll to the bottom of this document for the reference of which string corresponds to which part of the page.

#Creating a new translation

#The easy way: just translate the file

In the Bibliogram code repository, copy /src/lang/en.js to a new file. Translate all the parts. Paste the result into the body of an email, and send it to the bibliogram-devel mailing list.

You won't be able to actually test your changes with this. If you want to test, you must follow the next section, "the complete way".

#The complete way: create a patch to add the language

Before you can start, get set up with the submitting a patchset guide.

Then copy /src/lang/en.js to a new file, saving it as the two letter code of your language with the .js extension in the same folder.

Translate the contents of the new file to your language. While working on the translation, you may wish to comment out lines that you haven't translated yet using // at the start of the line. This way, things that you haven't translated will be syntax highlighted in your editor, and they will show as MISSING STRING on the webpage.

Open /src/lang/index.js and inside the Lang constructor, find the array of language codes (at time of writing, it's on line 10 with contents ["en", "en-us"]) and add your new language to that array.

Open /src/site/pug/settings.pug and find the +select language mixin. Add your new language to that list, with the country code as value, and the name (e.g. Fran├žais) as text.

Save all the files, start Bibliogram, go to the settings page, select the language, and make sure everything works as intended. If it doesn't, go back and edit the files. At the time of writing this document, you will need to restart Bibliogram to apply changes to language strings.

Once everything works properly, create and send a patchset as described in the patchset guide. Thank you for contributing!!

#String prefix reference

  • html_ means the contents must be HTML text. You can either write HTML directly, or invoke the Pug compiler to produce it.
  • pug_ means the contents must be a Pug template function. You must use the Pug compiler.
  • fn_ means the contents must be a JavaScript function. Arrow functions => are suggested.

When in doubt, just copy whatever en.js is doing.

#String location reference

These images show where strings are located on pages so that you can easily find the context for what you're translating, without having to run Bibliogram yourself to test.

#Home page

#User page

#Post page