Last modified: 2014-11-02 12:50:15 UTC
Originally from: http://sourceforge.net/p/pywikipediabot/patches/617/ Reported by: Anonymous user Created on: 2013-05-28 23:05:42 Subject: important fix for i18n.py Original description: the "i18n.py" file in the "/pywikibot" directory has a useful "translate" function; but it doesn't work well with multiple "\{\{PLURAL\}\}" directives in the same string: for example, the following code: pywikibot.i18n.translate\('en',\{'en':'%\(links\)d \{\{PLURAL:%\(links\)d|link|links\}\} and %\(apples\)d \{\{PLURAL:%\(apples\)d|apple|apples\}\}'\},\{'links':1,'apples':4\}\) returns "1 link and 4 link" instead of "1 link and 4 apples". I've fixed that doing a "while" loop for each \{\{PLURAL\}\} and replacing/translating only one of them at a time; probably other functions need such fixes as well. My version is attached, feel free to improve it and include it in the pywikipediabot rewrite branch.
fixed and tested version
see https://gerrit.wikimedia.org/r/#/c/80698/
Change 91414 had a related patch set uploaded by Ladsgroup: Bugfix for python 2.5: "plural_rules" is the valid function https://gerrit.wikimedia.org/r/91414
This bug is not related to Gerrit change #91414 but to Gerrit change #80698
(In reply to comment #0) > Reported by: Anonymous user That was me. @xqt: any updates?
Ah yes. I am just testing a new function for both translation methods to prevent code duplication. Hm, it should become ready to commit ;)
Important for both.
Ok, so please take care of the backport when you're finished ;-)
https://gerrit.wikimedia.org/r/80698/ merged, waiting for https://gerrit.wikimedia.org/r/119338/
Same for compat