CKFinder 3 Documentation

Translating CKFinder

You are welcome to help localize CKFinder into your native language and update existing localizations. You can use one of the methods described below to submit your translation.

Your help will be much appreciated!

CKFinder Translations Repository

The ckfinder-translations repository was created to simplify the process of updating or providing new translations. It contains language files for CKFinder 3.

There are two branches available:

  • master – Language files from the latest stable CKFinder release.
  • major (default) – Language files from the most current development snapshot of the next CKFinder release. May contain language strings for new features that are not published in any release available now.

Contributing

All untranslated entries are marked with [MISSING]. When you translate, remove the [MISSING] part to mark the translation "done" and provide your localization. For example:

Untranslated:

"deleteFiles": "[MISSING]Delete Files",

Translated:

"deleteFiles": "Dateien löschen",

Note: If you think the original English phrase for a particular entry should be used in the localized version, just remove the [MISSING] part to indicate the translation is approved.

CKFinder language files are in JSON format. A few language strings contain some HTML tags like <strong> or placeholders such as {name} or {count}. Please leave these untouched as changing them may prevent CKFinder from working correctly.

Creating a Pull Request

If you are familiar with Git, you can fork the ckfinder-translations repository and submit a pull request with your changes for the major branch.

Editing Files on GitHub

Alternatively, you can edit existing language files directly on GitHub. You will need to register on GitHub first.

Choose the file that you want to translate from the list and open it in your browser by clicking its name. Then click the Fork this project and edit this file ("Fork this project and edit this file") button in the top right-hand corner.

Editing CKFinder language files directly on GitHub

Before you begin, set the GitHub code editor to:

  • Indent mode: Tabs
  • Indent size: 4
  • Line wrap mode: No wrap

Setting the code editor on GitHub

You can now add your translations in the online code editor on GitHub. Feel free to both provide missing translations and correct existing ones.

Translating CKFinder on GitHub

Remember to use the "Preview changes" tab to check the result. Pay special attention not to remove the quotes or change the placeholders.

Previewing changes to CKFinder language files

When you are done, add a commit message to explain your changes. Click the "Propose file change" button to submit a pull request with your translation. Thank you!

Commit message for CKFinder localization

Sending Translations by E-mail

Last but not least, if you are not familiar with Git and GitHub, please send us the translations to info@cksource.com and we will do the rest. Thank you!

Adding New Languages

To add a new language file and use it in CKFinder, you need to adjust the configuration first:

  • config.languages must be edited to include information about the newly added translation.
  • Optionally, you might need to set config.language if the language detection mechanism turns on a different language by default.

Finally create an appropriate language file in the lang folder of CKFinder. Use _template.json as a base for creating your language file. Use the two-letter ISO 639-1 language code as a name for the language file, optionally using the two-letter ISO 3166-1 country code as a suffix.

Example: For French (Canada), copy the _template.json file and save it as fr-ca.json.

When your translation is ready, you can share it by submitting a pull request on GitHub or sending it to us to info@cksource.com. We will be happy to add it to the official repository. Thank you for your help!

Translating Edit Image Options

CKFinder includes some image editing options provided by CamanJS. If you find some captions from this section unclear (like some filter or preset names) and would like to see working examples of what these effects do, visit the CamanJS Interactive Example page. Another idea is to check your favorite (localized) photo editing application for clues.