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

Prune world and city names down to a size manageable for translators. #4660

Closed
wants to merge 2 commits into from
Closed

Prune world and city names down to a size manageable for translators. #4660

wants to merge 2 commits into from

Conversation

yobbobanana
Copy link
Contributor

Removed 70% of city names (now there are 300 or so) and 99% of world names (now there are 200 or so), completely at random.

@KA101
Copy link
Contributor

KA101 commented Nov 24, 2013

Hoping Monroeville's still in. ;-) (Joking reference. No worries, dunno if it ever was in.)

Just in case: city/world names weren't involved in any way with the kickstarter? (I don't think they were.)

@desrik
Copy link
Contributor

desrik commented Nov 25, 2013

Good deal :) Didn't even realize I had added 22k names until Narc pointed it out. Good example of too much automation.

@yobbobanana
Copy link
Contributor Author

@KA101 i think it was just the people names for the kickstarter – those i've left alone. The city names were from a list of actual New England place names, but as they're not really being used i figure i'll trim it down a little.

@desrik yeah, there were more world names than all the other translatable strings in cata combined :).

it'd be nice if we could have different name files for each language, so people could just add however many they felt like in their local language, but there's no support for it at the moment. Translators have to replace each and every one with a localized version.

@desrik
Copy link
Contributor

desrik commented Nov 25, 2013

Seems like localization wouldn't be too difficult. Add a setting for language, and load from like-named json. Could be designed to accommodate any language the community would like to give translations for. Not gonna go off-topic here... Might post in the toolbox about my ideas.

EDIT::Just realized that there would be a bit more to achieve complete localization. Basically every string in the game would need to be read from files instead of hard-coded.

@kevingranade
Copy link
Member

Why translate them at all? They're english place names.

@yobbobanana
Copy link
Contributor Author

@kevingranade in chinese for example they need to be transliterated into chinese characters, even if the name doesn't change. I think any script that's not based on latin has the same problem.

@desrik it's also complicated by the fact that most translators don't code at all, so even editing json can be confusing. Currently we've got everything going thru gettext, which means all translators have to do is use the web interface at translations.launchpad.net/cdda. It has some serious flaws, but the convenience of the translation interface outweighs them.

@desrik
Copy link
Contributor

desrik commented Nov 25, 2013

@yobbobanana What I'm saying is that rather than transliterating randomw names, just compile a seperate list for each language.

@kevingranade
Copy link
Member

Yea, this strikes me as something where gettext is just getting in the way,
I'm fairly against removing content, however minor to, "make translating
easier", it's a "bad smell" I guess.

@yobbobanana
Copy link
Contributor Author

i don't disagree that a different list of names for each language would be better, but there needs to be some sort of system in place to handle it.

theoretically special-casing names.json wouldn't be too hard, we could move it out to, say, data/names/en.json, and then check for data/names/<locale>.json on startup, and load that if available, otherwise load en.json. But this needs to be implemented in a robust way, and made obvious to current and future translators somehow.

additionally, having your name in the game was a kickstarter reward. How does that work if each language team replaces all the names?

@desrik
Copy link
Contributor

desrik commented Nov 26, 2013

@yobbobanana The way I see it, if someone decided to work on implementing a system like that, it would be pretty pointless to do it for only names.json... I'm thinking more along the lines of a data/locale/ID folder where ID is an language identifier such as en, fr, ru, etc. that includes different json files such as names.json, traits.json, strings.json, ect. Basically I'm talking moving every hard-coded in-game string to json to allow translation without recompilation.

@yobbobanana
Copy link
Contributor Author

The game doesn't have to be recompiled to work with new translations, only the translations have to be compiled, and Launchpad does that automatically. You can just drop in the .mo files and it works.

I can't think of anything other than names that doesn't need to have them all translated.

@narc0tiq
Copy link
Contributor

having your name in the game was a kickstarter reward. How does that work if each language team replaces all the names?

Special-cased language-independent file that always gets loaded and tacked on to the localized name list? E.g. data/names/kickstarters.json

@yobbobanana
Copy link
Contributor Author

But then there's the same problem as before where they're not in the correct script… well anyway all the current ones have them translated, so probably a non-issue.

@yobbobanana
Copy link
Contributor Author

superceded by #4721

@yobbobanana yobbobanana closed this Dec 1, 2013
@yobbobanana yobbobanana deleted the translators_have_to_translate_those branch December 18, 2014 09:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants