Commit graph

32 commits

Author SHA1 Message Date
Kunal Mehta
e0193327bd Fix MediaWiki.Commenting.LicenseComment.InvalidLicenseTag errors
Change-Id: I936c3f5fca1a0061f215e80469f5d882cb32ee29
2018-05-23 16:23:42 -07:00
Bartosz Dziewoński
eb6bb6b7b9 Generalize non-digit-grouping of four-digit numbers
In some languages it's conventional not to insert a thousands
separator in numbers that are four digits long (1000-9999).
Rather than copy-paste the custom code to do this between 13 files,
introduce another option and have the base Language class handle it.

This also fixes an issue in several languages where this logic
previously would not work for negative or fractional numbers.

To implement this, a new option is added to MessagesXx.php files,
`$minimumGroupingDigits = 2;`, with the meaning as defined in
<http://unicode.org/reports/tr35/tr35-numbers.html>. It is a little
roundabout, but it could allow us to migrate the number formatting
(currently all custom code) to some generic library easily.

Bug: T177846
Change-Id: Iedd8de5648cf2de1c94044918626de2f96365d48
2018-01-02 11:17:25 +01:00
Umherirrender
255d76f2a1 build: Updating mediawiki/mediawiki-codesniffer to 15.0.0
Clean up use of @codingStandardsIgnore
- @codingStandardsIgnoreFile -> phpcs:ignoreFile
- @codingStandardsIgnoreLine -> phpcs:ignore
- @codingStandardsIgnoreStart -> phpcs:disable
- @codingStandardsIgnoreEnd -> phpcs:enable

For phpcs:disable always the necessary sniffs are provided.
Some start/end pairs are changed to line ignore

Change-Id: I92ef235849bcc349c69e53504e664a155dd162c8
2018-01-01 14:10:16 +01:00
Umherirrender
b5cddfb27b Remove empty lines at begin of function, if, foreach, switch
Organize phpcs.xml a bit

Change-Id: Ifb767729b481b4b686e6d6444cf48b1f580cc478
2017-07-01 11:34:16 +00:00
Chad Horohoe
aa21e125a3 Remove obvious function-level profiling
Xhprof generates this data now. Custom profiling of various
sub-function units are kept.

Calls to profiler represented about 3% of page execution
time on Special:BlankPage (1.5% in/out); after this change
it's down to about 0.98% of page execution time.

Change-Id: Id9a1dc9d8f80bbd52e42226b724a1e1213d07af7
2015-01-07 11:14:24 -08:00
Siebrand Mazeland
03b2b42084 Make languages/classes pass phpcs-strict
Change-Id: I0985f3c7e4b36338c68a4a63cfba4eaa4af567c0
2014-04-22 14:13:02 +02:00
umherirrender
55e8a9abfd Fixed some @params documentation (languages)
Swapped some "$var type" to "type $var" or added missing types
before the $var. Changed some other types to match the more common
spelling. Makes beginning of some text in captial.

Change-Id: I7a4dec6a8de96ee21ef34e52bb755f723aa3b0e6
2014-04-17 13:32:54 +00:00
Santhosh Thottingal
1441f511a2 Update plural rules to CLDR 24
Updated plurals.xml with new data from CLDR 24.

This data is according to UTS #35 Rev 33.

Update the CLDRPluralRuleParser.js to version 1.1 from upstream
https://github.com/santhoshtr/CLDRPluralRuleParser

Changes to the plural rules:

* Hebrew override removed since CLDR 24 matches with MW plural rules.

* Updated the syntax of overridden rules to TR35 Rev 33 for
  Lower Sorbian (dsb), Upper Sorbian (hsb), Belarusian in Taraskievica
  orthography (be_tarask), Old Church Slavonic (cu), Bhojpuri (bho),
  Samogitian (sgs).

* Removed Manx (gv) override. See I46ab3dadc7fe08c1e60bbd81a1ee841e166e9608.

* Removed the overriden convertPlural method for Serbian from LanguageSr.php,
  since CLDR 24 matches with MW rules. Updated and added more tests.
  Tests updated for Serbocroatian (sh), too. Old CLDR versions had 4 plural
  rules and MW had only 3. In CLDR 24, the form 'many' was removed and it
  became identical to the MW. Same for Bosnian (bs) and Croatian (hr).
  Also for variants sr-ec and sr-el

* Macedonian (mk) used to count 11 as 'other' form.
  CLDR 24 counts it as 'one'.
  Not overriding, using CLDR 24 here.
  Updated the tests. MW will not override this.

* Armenian (hy) used to count 0 as 'other'.
  Now it is 'one' form.
  Updated the tests. MW will not override this.

* Latvian (lv) used to count only 0 as 'zero' form, but CLDR 24, any number
  satisifying the following formula is counted as zero:
  n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19
  Examples: 0, 10~20, 30, 40, 50, 60, 100.
  Updated the tests accordingly. Not overriding it in MW.
  Users will see different plural form for the above numbers.

* Removed Ukranian custom plural rule since it match with MW

* Russian (ru) plural rules have a major change.
  The 'few' form is merged with the 'other' form.
  The current forms are 'one', 'many', 'other'.
  In MW ru plural rules were overridden using convertPlural methdod
  in LanguagesRu.php with 3 forms.
  Effectively forms[1] and forms[2] are swapped.
  This will affect the messages, and such messages
  must be reviewed and updated. This change is not included in this patch and
  wil be done separately.

Russian is the only remaining language class with convertPlural method overridden.

Notable impact on the exising messages:

* For languages ru, uk, be_tarask, sr, For the special case
  of two plural forms and first mapped to 1 and rest to the other form, syntax like
  {{plural:$1|1=one|other}} should be used.

For further information regarding each of the above language changes, see
1. http://unicode.org/cldr/trac/ticket/3727
2. http://goo.gl/H2HEz

CLDR 24 can handle fractions. Ideally it should start working
in MW without any code changes, but MW language test suite
does not have enough tests to confirm.

Followup: e571717e06

Bug: 56931
Change-Id: I9930b290d004667a3bb09e5c1663ec2c9c27d8a6
2014-01-03 11:53:10 +05:30
Pavel Selitskas
81fc875c0b Handle explicit plural forms in custom convertPlural in language classes
A new protected method looks for explicitly defined forms.
Every overriden language class is required to use this method.

Includes tests.

Redoing old patch I6dc759e3dfb05d6673209ba00da6592a384d5300

Bug: 46422
Change-Id: I2a9f93567087babb896999f1214d3c56afc67c96
2013-12-03 12:50:02 +00:00
umherirrender
3c7bcf4658 Fixed spacing in languages folder
Added spaces before if
Added some braces for one line statements

Change-Id: I980771894369499646532b13b801db6447381773
2013-04-17 21:10:02 +02:00
Alexandre Emsenhuber
52aa2aaba1 Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ie60ee0a8137d750a66892ea5b0cc751c74d662f9
2012-06-05 22:18:51 +02:00
Antoine Musso
fc6bc233be Fix doxygen docs before REL1_19 branching 2012-02-01 20:53:38 +00:00
Amir E. Aharoni
8c5c8d1b8f Follow up to r109021, corrected the comment, and added a translation from Russian. 2012-01-16 10:45:01 +00:00
Amir E. Aharoni
3af279116e Improved the comment about the two-forms plural shortcut. 2012-01-16 09:46:56 +00:00
Sam Reed
f54cfa1001 More documentation! 2011-05-29 15:53:18 +00:00
Sam Reed
810610a153 Some language love 2011-05-29 15:03:33 +00:00
Platonides
82fb370dfc Changes to doc-comments. /* to /** in language folder. 2011-05-22 22:05:18 +00:00
Siebrand Mazeland
75c6696aa8 Use consistent notation for "@todo FIXME". Should update http://svn.wikimedia.org/doc/todo.html nicely. 2011-05-17 22:03:20 +00:00
Sam Reed
e476b51e3a Stylize languages/*, languages/classes/*, but not languages/messages/* 2010-07-29 09:43:18 +00:00
Siebrand Mazeland
923329f60f (bug 23156) Commafy and search normalization update for Belarusian (Taraškievica). Contributed by Jaska Zedlik. 2010-04-12 21:12:34 +00:00
Max Semenik
09951b7e0e Removed a couple of ancient @bug's 2010-01-07 21:54:39 +00:00
Siebrand Mazeland
62546832cc Update plural forms per http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html. Complete per Date: 2009/05/12 11:24:52 for languages currently supported in MediaWiki.
Added FIXME where CLDR definition is different from MediaWiki's.
2009-10-02 18:30:23 +00:00
Siebrand Mazeland
2cab477f44 * (bug 14165, bug 14294) Wikimedia specific configuration in convertGrammar() for 13 localisations (be, be-tarask, bs, cs, dsb, ga, gsw, hsb, hu, lv, rmy, sk, sl) removed. The settings have been put in extension WikimediaMessages. For be, be-tarask, bs, dsb, hsb some duplicates (1=1) were removed. Patch for Czech by Danny B.
* Also put the wgGrammarForms from the Wikimedia configuration in here, so everything is in one place. Bonus with this setup is that there will be a little less work for Wikimedia shell operators, as the wgGrammarForms configuration is now accessible to i18n committers.
* Header for WikimediaMessages.php, and add myself to extension credits.

WARNING to Wikimedia shell operators: the whole section "wgGrammarForms" in InitialiseSettings.php.html should be remove after updating to this version. It will most probably overrule all settings in WikimediaMessages because of "'default' => array()"
2008-08-10 18:32:10 +00:00
Niklas Laxström
be880b39cb * Update plural code 2008-05-22 17:56:29 +00:00
Alexandre Emsenhuber
087a9f70c5 WARNING: HUGE COMMIT
Doxygen documentation update:
* Changed alls @addtogroup to @ingroup. @addtogroup adds the comment to the group description, but doesn't add the file, class, function, ... to the group like @ingroup does. See for example http://svn.wikimedia.org/doc/group__SpecialPage.html where it's impossible to see related files, classes, ... that should belong to that group.
* Added @file to file description, it seems that it should be explicitely decalred for file descriptions, otherwise doxygen will think that the comment document the first class, variabled, function, ... that is in that file.
* Removed some empty comments
* Removed some ?>

Added following groups:
* ExternalStorage
* JobQueue
* MaintenanceLanguage

One more thing: there are still a lot of warnings when generating the doc.
2008-05-20 17:13:28 +00:00
Siebrand Mazeland
555019a2c6 remove EOL whitespace, and excess empty lines 2008-05-17 17:10:18 +00:00
Raimond Spekking
e1f5154143 * (bug 12431) Update Belarusian (Tarashkevitsa orthography)
Patch by Eugene Zelenko
2008-01-02 18:40:05 +00:00
Niklas Laxström
6d97bfde47 * Reworked convertPlural so that it accepts variable number of arguments nicely
* Should also fix bug 11991
2007-11-18 20:15:49 +00:00
Aryeh Gregor
a15c419b3d Remove ?>'s from files. They're pointless, and just asking for people to mess with the files and add trailing whitespace. (Yes, I looked over every one and reverted those that were bogus. Slash-enter a million times in less worked well enough, although it was a bit mind-numbing.) 2007-06-29 01:19:14 +00:00
Raimond Spekking
0d9a99d31f * (bug 10108) Update Belarussian (tarask) translations
Fallback to 'be' removed
  LanguageBe_tarask restored
  File by Eugene Zelenko
2007-06-02 20:13:51 +00:00
Tim Starling
8469880aef Removed identical language class, used a fallback instead. 2007-05-11 20:03:05 +00:00
Tim Starling
27ae00ba86 Renaming be-x-old to be-tarask, changing name to "Беларуская (тарашкевіца)" as suggested on wikipedia-l. 2007-05-11 15:00:19 +00:00
Renamed from languages/classes/LanguageBe_x_old.php (Browse further)