Hello List,
I’m a bit confused about several commits on properties files in the past and would like to get feedback for a best practices guide we can properly merge into the developer guide.
IMHO there are 3 major change types on how to work with these kind of files if translations already/not exists:
- Add new key/values to properties files that ends up in UI
- Remove properties
- rename property keys
Here is what I’d like to suggest to get a clear workflow for developers and translators:
-
Developers should only maintain the original source language - in this case English - for properties file name GeoServerApplication.properties. Because of the standard java properties file behavior the keys/values are taken from the origin file, if not exists in the preferred language files, e.g. GeoServerApplication_es.properties for Spanish. Therefor there is no need to copy all (not translated) keys with original language (English) into translation files.
-
If a Developer removes a key from properties file, all other existing translation properies files should be updated as well by removing the key, otherwise translators maintain these Strings and are properly confused about where to find it in the UI.
-
IMHO avoid the third scenario, it leads into problems when working with translation management systems/services like transifex and crowdin. But if its required (because of revactorings on the java classes/names/package names) then all existing properties files should maintained as well.
What do you thing about a new sub-page down under Programming-Guide with content about how to’s for developers and how to’s for translators? (http://docs.geoserver.org/latest/en/developer/programming-guide/index.html)
And last but not least, do you know a handy tool how to show deltas between properties files of source language and the translated files (missing keys, keys that do not exists in origin).
Feedback is warmly welcome!
Cheers
-Frank