SoftwareQuality/jabref/docs/decisions/0006-only-translated-strings-in-language-file.md
2025-01-11 12:30:11 +01:00

52 lines
1.9 KiB
Markdown

---
parent: Decision Records
nav_order: 6
---
# Only translated strings in language file
## Context and Problem Statement
JabRef has translation files `JabRef_it.properties`, ... There are translated and untranslated strings. Which ones should be in the translation file?
## Decision Drivers
* Translators should find new strings to translate easily
* New strings to translate should be written into `JabRef_en.properties` to enable translation by the translators
* Crowdin should be kept as translation platform, because 1\) it is much easier for the translators than the GitHub workflow and 2\) it is free for OSS projects.
## Considered Options
* Only translated strings in language file
* Translated and untranslated strings in language file, have value the untranslated string to indicate untranslated
* Translated and untranslated strings in language file, have empty to indicate untranslated
## Decision Outcome
Chosen option: "Only translated strings in language file", because comes out best \(see below.
## Pros and Cons of the Options
### Only translated strings in language file
* Good, because Crowdin supports it
* Bad, because translators need tooling to see untranslated strings
* Bad, because issues with FXML \([https://github.com/JabRef/jabref/issues/3796](https://github.com/JabRef/jabref/issues/3796)\)
### Translated and untranslated strings in language file, have value the untranslated string to indicate untranslated
* Good, because no issues with FXML
* Good, because Crowdin supports it
* Bad, because untranslated strings cannot be identified easily in Latin languages
### Translated and untranslated strings in language file, have empty to indicate untranslated
* Good, because untranslated strings can be identified easily
* Good, because works with FMXL \(?\)
* Bad, because Crowdin does not support it
## Links
* Related to [ADR-0001](0001-use-crowdin-for-translations.md).
<!-- markdownlint-disable-file MD024 -->