Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create 0006-only-translated-strings-in-language-file.md #5420

Merged
merged 1 commit into from
Oct 11, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions docs/adr/0006-only-translated-strings-in-language-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Only translated strings in language file

## Context and Problem Statement

JabRef has translation files `JabRef_it.properties`, ...
There are translated and unstranslated 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)

### Translated and untranslated strings in language file, have value the untranslated string to indicate untranslated

* Good, because no issues with FXML
* Good, because Crowin 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).
2 changes: 2 additions & 0 deletions docs/adr/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

# Architectural Decision Log

This log lists the architectural decisions for JabRef.
Expand All @@ -10,6 +11,7 @@ This log lists the architectural decisions for JabRef.
- [ADR-0003](0003-use-gradle-as-build-tool.md) - Use Gradle as build tool
- [ADR-0004](0004-use-mariadb-connector.md) - Use MariaDB Connector
- [ADR-0005](0005-fully-support-utf8-only-for-latex-files.md) - Fully Support UTF-8 Only For LaTeX Files
- [ADR-0006](0006-only-translated-strings-in-language-file.md) - Only translated strings in language file

<!-- adrlogstop -->

Expand Down