I love you all, I do.
Your code is nothing short of brilliant and each of your deploys (when you don't forget to svn ci first) is a nugget of joy. Yes, even when stuff breaks; as far as I'm concerned, it is only proof that it is alive and someone is tweaking it.
You are not making this translator's life any easier, and I suspect I am not the only one. Here's why:
- Strings need context, part I — Unlike WordPress.org, which most of us also translate, all of .com's strings files are in a gigantic file. Nothing against gigantic files, but .org's separation into smaller, specific files gives us an immediate idea of the general sense of the text (i.e. it's in wp-admin, in wp_admin/network, you get the drift).
- Strings need context, part II — .org points each string to the source code that uses it. I can appreciate that this might be a sensitive issue on .com, even if I don't agree that it is, and that such functionality may not be desired here. That said, there must be some kind of middle ground, no? Retrieve just the line of code, maybe? (or do a better job at part I)
- The same string in English, isn't the same in our language — I haven't researched this extensively , but I suspect that strings are unique; take "Search", which can be a verb (Procurar), or even a noun with more than one meaning, as in "Search term" (Termo de pesquisa) or "The search" (Pesquisa)
- English has no gender, but we do — What does "New (%s)" mean? Its it a post (which for me is masculine)? A page (feminine)?
- Do you know Otto? (he's cool) — Strings like these, aren't ideal… I'm sure there's something being injected before that string, and many languages (if not all) need the whole sentence, not just fragments, since the position of what's being injected isn't necessarily at the beginning of the sentence.
- Finally, the obligatory minute request: countries — They aren't translatable, (see what .org did there?).
Hence, in an ideal world:
- Context everywhere! Use and abuse _x, _ex and _nx. It's never too much
- Separate "areas" (whatever that means) into translatable projects, i.e. if the code for say, the Store, isn't something you want to show publicly, fine, don't. But at least create a separate project for it, it's not as if we don't know it's there (we just need to look at the dashboard, basically)
- Look into the unique string situation, but perhaps separation would make that irrelevant.
- Go have a drink with Otto (always a good idea)
- Come have a drink with me (mostly a good idea)
The blog I need help with is caveatautomattor.wordpress.com.