Currently there's no direction for translators for strings like "yyyy-MM" or "HH:mm". As a result, we get translations like this:
18:12:27 brian@brian-MCP6P3:~/0ad/binaries/data/mods/public/l10n$ grep "msgid \"yyyy-MM\"" * -A1 | grep -v "^\-" | grep -v "\"\"" | grep -v "\"yyyy-MM\"" ar.public-gui-other.po-msgstr "MM/yyyy" br.public-gui-other.po-msgstr "MM-yyyy" ca.public-gui-other.po-msgstr "aaaa-MM" cs.public-gui-other.po-msgstr "rrrr-MM" de.public-gui-other.po-msgstr "MM yyyy" eu.public-gui-other.po-msgstr "uuuu-HH" fi.public-gui-other.po-msgstr "vvvv-KK" fr.public-gui-other.po-msgstr "MM-yyyy" hu.public-gui-other.po-msgstr "éééé-HH" it.public-gui-other.po-msgstr "aaaa-MM" lv.public-gui-other.po-msgstr "MM.yyyy" nb.public-gui-other.po-msgstr "åååå-MM" nl.public-gui-other.po-msgstr "MM-yyyy" pt_BR.public-gui-other.po-msgstr "aaaa-MM" tr.public-gui-other.po-msgstr "yyyy-AA" uk.public-gui-other.po-msgstr "рррр-ММ"
Six of these are fine, they just rearrange MM and yyyy, but the others probably don't do what the translators intended. Here's another example:
18:12:53 brian@brian-MCP6P3:~/0ad/binaries/data/mods/public/l10n$ grep "msgid \"HH:mm\"" * -A1 | grep -v "^\-" | grep -v "\"\"" | grep -v "\"HH:mm\"" el.public-gui-ingame.po-msgstr "ΩΩ:λλ" el.public-gui-lobby.po-msgstr "ΩΩ:λλ" fi.public-gui-gamesetup.po-msgstr "TT:mm" fi.public-gui-ingame.po-msgstr "TT:mm" fi.public-gui-lobby.po-msgstr "TT:mm" ga.public-gui-lobby.po-msgstr "UU:nn" ko.public-gui-lobby.po-msgstr "시간:분" pt_PT.public-gui-lobby.po-msgstr "HH:mm " ro.public-gui-lobby.po-msgstr "OO:mm" tr.public-gui-gamesetup.po-msgstr "SS:dd" tr.public-gui-ingame.po-msgstr "SS:dd" tr.public-gui-lobby.po-msgstr "SS:dd" uk.public-gui-lobby.po-msgstr "ГГ:хх"
In each translation comment I've given an explanation of what the format is used for along with a link to a site that explains the symbols.
These are the instances I found:
- Chat timestamp. This occurs in three separate places (lobby, game setup, session), so I've combined all three into one function.
- Game start time, in the lobby when you have a game selected.
- Time elapsed/remaining counters, for the game duration (replay, load, session, summary) and ceasefire, wonder-victory, etc. countdowns. The production queue had been using something separate because I didn't want to show extra zeros, e.g. 01:00 if there's one minute of training time remaining. But actually I don't see any reason why the others would want the extra zero either, so I've changed the format from "mm:ss" to "m:ss" (meaning use two digits only if you need two digits). Similarly, if the time is over an hour it will now only show one digit for the hour rather than two.
- Game dates in the load game menu and save game dialog.
- Game dates in the replay menu.
- Month filter in the replay menu.