Last modified: 2014-09-01 23:21:58 UTC
In many languages (French in my case, but also a lot of Slavic languages according to http://www.mail-archive.com/wikibugs-l@lists.wikimedia.org/msg04551.html), “user” (among many words) has two translations according to the gender of the user (in French, it is “utilisateur” for men and “utilisatrice” for women). Some calls to *Template->msg() do provide the username, either for rendering it or specifically for the {{GENDER}} tag (whose syntax is {{GENDER:username|masculine form|male form|neutral form}}), but many of them do not. For instance, in includes/actions/InfoAction.php, the user referred to in “$this->msg( 'pageinfo-lastuser' )” can be known by the code at this point, but is not passed to $this->msg(), which prevents translators from providing the appropriate gender. So, my request is to make — as far as possible; I know all such instances cannot be found automatically — all those calls provide the user name. A good start could be running this command: grep "this->msg(.*user[^,]*)" includes/ -ri
Missing gender on messages is Internationalization -> moving FYI: Usually unspecified bugs like this does not find a developer to process. Tip: It is better, when you can list the necessary messages, which needs extra gender parameter and you can create a bug per topic, where the messages was found.
Created attachment 15930 [details] List of (most) potentially affected messages to check The request is correct, but in practice this is a duplicate of the tracking bug 30443. (In reply to db from comment #1) > Tip: It is better, when you can list the necessary messages, which needs > extra gender parameter and you can create a bug per topic, where the > messages was found. Indeed, that's the same advice I gave to Macofe for <https://translatewiki.net/wiki/Thread:Support/GENDER_support_for_%27user%27_and_%27username%27> Unless of course Shirayuki's detective magic provides us with a list of messages to fix. (In reply to Valentin Lorentz from comment #0) > A good start could be running this command: grep "this->msg(.*user[^,]*)" > includes/ -ri I prefer: find . -name en.json -exec grep -E '": ".+(user|user name|administrator|translator|bureaucrat)[^s]' {} \; I attach the output (721 messages across core + all gerrit extensions).
[not tracking any other tickets; removing keyword]