JabRef
v5
v5
  • JabRef Bibliography Management
  • Installation
  • Getting started
  • Collect
    • Add entry manually
    • Add entry using an ID
    • Add entry using reference text
    • Searching externally using Online Services
    • Add entry using PDFs
    • Browser Extension
    • Import
      • Custom import filters
      • Import inspection window
  • Organize
    • Edit an entry
    • Groups
    • Keywords
    • Mark and grade
    • Comment on an entry
    • Searching within the library
    • Complete information using online databases
    • Manage associated files
    • Manage field names and their content
    • Best practices
    • Cleanup entries
    • Check integrity
    • Find duplicates
    • Merge entries
    • Save actions
  • Cite
    • BibTeX and biblatex
    • Pushing to external editor application
    • Export to Microsoft Word
    • OpenOffice/LibreOffice integration
  • Share
    • Sharing a Bib(la)TeX Library
    • Shared SQL Database
      • Migration of pre-3.6 SQL databases into a shared SQL database
    • Export
      • Custom export filters
    • Send as email
  • Configuration
    • Customize the citation key generator
    • Customize entry types
    • Customize general fields
    • Customize key bindings
    • Library properties
    • Entry preview setup
    • Manage external file types
    • Manage protected terms
    • The string editor
  • Advanced information
    • Main Window
    • Entry Editor
      • Links to other entries
      • The Bibtex / Biblatex source tab
      • The 'owner' field
      • Time stamp field
      • LaTeX Citations Tab
    • About BibTeX and its fields
    • Strings
    • Field content selector
    • URL and DOI links in JabRef
    • Command line use and options
    • Automatic Backup (.sav and .bak) and Autosave
    • XMP metadata support in JabRef
    • Remote operation
    • Custom themes
    • Journal abbreviations
    • New subdatabase based on AUX file
    • How to expand first names of an entry
    • Debugging your library file
    • Resources
    • License
    • Knowledge
      • MS Office Bibliography XML format
      • Comparison of the Medline (txt), Medline (xml), and RIS format
      • EndNote Export Filter
  • Frequently Asked Questions
    • Linux
    • Mac OS X
    • Windows
  • Discussion Forum
  • Contribute to JabRef
    • How to Improve the Help Page
    • How to translate the JabRef User Interface
Powered by GitBook
On this page
  • Introduction
  • Improving an existing translation
  • Translating JabRef into a new language
  • Testing the translation
  • Localization in JabRef code
  • File location
  • File format

Was this helpful?

Edit on GitHub
Export as PDF
  1. Contribute to JabRef

How to translate the JabRef User Interface

PreviousHow to Improve the Help Page

Was this helpful?

Introduction

JabRef comes with a set of translations into 20 different languages: Chinese (simplified), Danish, Dutch, English, Farsi, French, German, Greek, Indonesian, Italian, Japanese, Norwegian, Persian, Portuguese, Portuguese (Brazil), Russian, Spanish, Swedish, Tagalog, Turkish and Vietnamese.

If the JabRef interface already exists in your language, you can help improve it. Otherwise, you can start translating JabRef into your own language.

Improving an existing translation

We use the service of to keep our translations updated. It is a service directly running in the browser and one can quickly join and start translating.

  • Visit to get started

  • Select your preferred language, login, and click on JabRef_en.properties

  • Choose the string you want to translate in the left panel (strings to be translated are listed first)

    and enter the translation in the central panel (suggestions are given at the bottom)

Translating JabRef into a new language

Crowdin offers to quickly add a new language. Please contact us so that we add a new language for you.

Testing the translation

Crowdin allows for downloading the current translation file:

Place the downloaded file in the path src/main/resources/l10n. Then, execute gradlew run in the root directory and JabRef should start.

For a new language to be available within JabRef, a corresponding line must be added in the Java class GUIGlobals (found in the directory /src/main/java/org/jabref/logic/l10n/Languages.java in the JabRef source code tree). The line is inserted in the static {} section where the map LANGUAGES is populated. The code must of course be recompiled after this modification.

Localization in JabRef code

File location

File format

Each entry is first given in English, then in the other language, with the two parts separated by an '=' character. For instance, a line can look like this in a German translation file:

Background\ color\ for\ optional\ fields=Hintergrundfarbe für optionale Felder

Note that each space character is escaped (\) to make it a valid property key. The translation value does not need any escapes.

Some entries contain "variables" that are inserted at runtime by JabRef - this can for instance be a file name or a file type name:

Synchronizing\ %0\ links...=Synchronisiere %0-Links...

A variable is denoted by %0, %1, %2 etc. In such entries, simply repeat the same notation in the translated version.

As we can see, there are several "special" characters: the percent sign and the equals sign, along with the colon character. If these characters are to be part of the actual text in an entry, they must be escaped in the English version, as with the colon in the following example:

Error\ writing\ XMP\ to\ file\:_%0=Fehler beim Schreiben von XMP in die Datei: %0

The character encoding should be UTF-8. Please avoid Unicode escaping such as \u2302.

You may decide to wait for .

To test directly your translation, you must be able to compile the source tree after making your additions. This requires you to install the . Ensure that you use the most recent version.

For each language, there is the file JabRef_xx.properties (xx denotes the country code for the language). It contains all translations in a key/value format. In the JabRef source code tree, the property files reside in the directory.

a new test version of JabRef to be published
Java Development Kit
/src/main/resources/l10n
Crowdin
https://translate.jabref.org/
Screenshot of Crowdin download dialog