Ok, definelty dont know whats going on here.
@Nescio do you see the name correctly without the diff ?
left with diff, right without
Details
:)
Diff Detail
- Repository
- rP 0 A.D. Public Repository
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
Event Timeline
Build is green
builderr-debug-macos.txt ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking. ld: warning: text-based stu
See https://jenkins.wildfiregames.com/job/macos-differential/2766/display/redirect for more details.
@Nescio do you see the name correctly without the diff ?
Yes, actually I do, this is how it looks on my end (Fedora 33) without the patch:
Now I have no idea what's going on either. Isn't the way 0 A.D. renders texts supposed to be independent from the operating system used?
With the patch it doesn't look any different to me, but if whatever is changed allows the name to be rendered correctly on your end, then it's an improvement.
Any other strings that have problems being displayed?
There does seem to be a strange whitespace chart at the end of the text though. That could be a result from copypasting.
What I don't get is that the font is the same for all platforms, which meanns there is something different when doing the actual XML parsing.
Could be a bug (or a feature, previously unsupported chars now recognized correctly) in libxml, but then I would get it on windows too, and I do not.
That shouldn't matter. The font files used by the game are images generated by script and located under binaries/data/mods/mod/fonts/.
For instance, my text editor and editor have no difficulty with displaying Chinese (e.g. 漢語拼音), but when pasting that to a name string in 0 A.D., it's displayed as unrecognized characters, because those glyphs are not present in the game fonts:
Thanks for the explanation. What version is used by the Windows builds? I have:
Package libxml2-devel-2.9.10-8.fc33.x86_64 is already installed.
@Angen, would I be right in thinking that you've set the language of 0 A.D. to "English (United States)"? (It also looks like Catalan, Bavarian, Scottish Gaelic, or Swedish would also have the same problem.)
Now we've identified the troublesome character (U+FEFF), we can grep for it... which reveals that the kush template elephant_stables.xml has it lurking between the first two (visible) characters (Ỉ and ḥ) of its SpecificName. This structure does not appear to be buildable in-game, so it doesn't appear in the structree. It is accessible through Atlas, however, where this can be confirmed (once setting 0AD to an appropriate language...).
greping also reveals that:
- The ca (Catalan), bar (Bavarian), gd (Scottish Gaelic), and sv (Swedish) languages will need their respective translations of "Parthenōn" cleared/corrected
- The bar, gd, and gl (Galician) languages will need their translations of "Ỉḥ Abu" (Kushite Elephant Stables) and "Pr-ỉwn n ms" (Kushite Arsenal) cleared/corrected
@Angen, would I be right in thinking that you've set the language of 0 A.D. to "English (United States)"?
Oops, I forgot I'm using the UK translation, that explains the difference. When using the US default the problem does show up:
This patch fixes it.
Now we've identified the troublesome character (U+FEFF), we can grep for it... which reveals that the kush template elephant_stables.xml has it lurking between the first two (visible) characters (Ỉ and ḥ) of its SpecificName.
Please fix that string as well in this patch.
Build is green
builderr-debug-macos.txt ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking. ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking. ld: warning: text-based stu
See https://jenkins.wildfiregames.com/job/macos-differential/2794/display/redirect for more details.
@s0600204 thank you for investigation, I have windows so I avoid doing grep related things :)
translations will take care of themselves :) probably they did copy paste, maybe transifex will screw it with auto translation, but we can just add comment there, maybe @Gallaecio could force clear these after this is commited but there is still chance they will reuse old translations?
translations will take care of themselves :) probably they did copy paste, maybe transifex will screw it with auto translation, but we can just add comment there, maybe @Gallaecio could force clear these after this is commited but there is still chance they will reuse old translations?
If strings are changed they are automatically prompted for retranslation, so committing this patch (without the builder entities line, of course) most likely means those characters will be gone too (in a few days).
nah, there is odd featurre on transifex which will keep translation if string is "the same", it happened with "Learn To Play" -> "Learn to Play" so can happen here too.
Then just check next week whether they're still there, and if so, manually retranslate them on transifex.