r102466 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r102465‎ | r102466 | r102467 >
Date:23:35, 8 November 2011
Author:platonides
Status:ok
Tags:
Comment:
Readd Names.php and other files removed in r102465
(that had been copied in r91439) with the current versions.

This results in incorporation of the following revs:
Names.php r92342 r94068 r94690+r94831 r96295+r96296 r96712 r98884 r100021 r102460 [1]
LanguageHu.php r99809
LanguageKk_cyrl.php r99809
LanguageSma.php r92352
LanguageSr_el.php r102464 (indirectly)
LanguageTr.php r99074 r99290

1- r1=90217&r2=102460">http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/languages/Names.php?r1=90217&r2=102460
Modified paths:
  • /trunk/tools/ToolserverI18N/language/mw-classes/LanguageHu.php (added) (history)
  • /trunk/tools/ToolserverI18N/language/mw-classes/LanguageKk_cyrl.php (added) (history)
  • /trunk/tools/ToolserverI18N/language/mw-classes/LanguageSma.php (added) (history)
  • /trunk/tools/ToolserverI18N/language/mw-classes/LanguageSr_el.php (added) (history)
  • /trunk/tools/ToolserverI18N/language/mw-classes/LanguageTr.php (added) (history)
  • /trunk/tools/ToolserverI18N/language/mw-classes/Names.php (added) (history)

Diff [purge]

Index: trunk/tools/ToolserverI18N/language/mw-classes/LanguageHu.php
@@ -0,0 +1,30 @@
 2+<?php
 3+
 4+/** Hungarian localisation for MediaWiki
 5+ *
 6+ * @ingroup Language
 7+ */
 8+class LanguageHu extends Language {
 9+
 10+ /**
 11+ * @param $word string
 12+ * @param $case
 13+ * @return string
 14+ */
 15+ function convertGrammar( $word, $case ) {
 16+ global $wgGrammarForms;
 17+ if ( isset( $wgGrammarForms[$this->getCode()][$case][$word] ) ) {
 18+ return $wgGrammarForms[$this->getCode()][$case][$word];
 19+ }
 20+
 21+ switch ( $case ) {
 22+ case 'rol':
 23+ return $word . 'ról';
 24+ case 'ba':
 25+ return $word . 'ba';
 26+ case 'k':
 27+ return $word . 'k';
 28+ }
 29+ return '';
 30+ }
 31+}
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/LanguageHu.php
___________________________________________________________________
Added: svn:eol-style
132 + native
Added: svn:keywords
233 + Author Date Id Revision
Index: trunk/tools/ToolserverI18N/language/mw-classes/LanguageSma.php
@@ -0,0 +1,29 @@
 2+<?php
 3+/**
 4+ * Southern Sami (Åarjelsaemien)
 5+ *
 6+ * @ingroup Language
 7+ */
 8+class LanguageSma extends Language {
 9+
 10+ /**
 11+ * @param $count int
 12+ * @param $forms array
 13+ * @return string
 14+ */
 15+ function convertPlural( $count, $forms ) {
 16+ if ( !count( $forms ) ) { return ''; }
 17+
 18+ // plural forms per http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#sma
 19+ $forms = $this->preConvertPlural( $forms, 3 );
 20+
 21+ if ( $count == 1 ) {
 22+ $index = 0;
 23+ } elseif ( $count == 2 ) {
 24+ $index = 1;
 25+ } else {
 26+ $index = 2;
 27+ }
 28+ return $forms[$index];
 29+ }
 30+}
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/LanguageSma.php
___________________________________________________________________
Added: svn:eol-style
131 + native
Added: svn:keywords
232 + Id
Index: trunk/tools/ToolserverI18N/language/mw-classes/LanguageTr.php
@@ -0,0 +1,39 @@
 2+<?php
 3+
 4+/**
 5+ * Turkish (Türkçe)
 6+ *
 7+ * Turkish has two different i, one with a dot and another without a dot. They
 8+ * are totally different letters in this language, so we have to override the
 9+ * ucfirst and lcfirst methods.
 10+ * See http://en.wikipedia.org/wiki/Dotted_and_dotless_I
 11+ * and @bug 28040
 12+ * @ingroup Language
 13+ */
 14+class LanguageTr extends Language {
 15+
 16+ /**
 17+ * @param $string string
 18+ * @return string
 19+ */
 20+ function ucfirst ( $string ) {
 21+ if ( strlen( $string ) && $string[0] == 'i' ) {
 22+ return 'İ' . substr( $string, 1 );
 23+ } else {
 24+ return parent::ucfirst( $string );
 25+ }
 26+ }
 27+
 28+ /**
 29+ * @param $string string
 30+ * @return mixed|string
 31+ */
 32+ function lcfirst ( $string ) {
 33+ if ( strlen( $string ) && $string[0] == 'I' ) {
 34+ return 'ı' . substr( $string, 1 );
 35+ } else {
 36+ return parent::lcfirst( $string );
 37+ }
 38+ }
 39+
 40+}
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/LanguageTr.php
___________________________________________________________________
Added: svn:eol-style
141 + native
Added: svn:keywords
242 + Author Date Id Revision
Index: trunk/tools/ToolserverI18N/language/mw-classes/LanguageKk_cyrl.php
@@ -0,0 +1,742 @@
 2+<?php
 3+/** Kazakh (Қазақша)
 4+ *
 5+ * @ingroup Language
 6+ */
 7+
 8+class LanguageKk_cyrl extends Language {
 9+
 10+ # Convert from the nominative form of a noun to some other case
 11+ # Invoked with {{GRAMMAR:case|word}}
 12+ /**
 13+ * Cases: genitive, dative, accusative, locative, ablative, comitative + possessive forms
 14+ *
 15+ * @param $word string
 16+ * @param $case string
 17+ *
 18+ * @return string
 19+ */
 20+ function convertGrammarKk_cyrl( $word, $case ) {
 21+ global $wgGrammarForms;
 22+ if ( isset( $wgGrammarForms['kk-kz'][$case][$word] ) ) {
 23+ return $wgGrammarForms['kk-kz'][$case][$word];
 24+ }
 25+ if ( isset( $wgGrammarForms['kk-cyrl'][$case][$word] ) ) {
 26+ return $wgGrammarForms['kk-cyrl'][$case][$word];
 27+ }
 28+ // Set up some constants...
 29+ // Vowels in last syllable
 30+ $frontVowels = array( "е", "ө", "ү", "і", "ә", "э", "я", "ё", "и" );
 31+ $backVowels = array( "а", "о", "ұ", "ы" );
 32+ $allVowels = array( "е", "ө", "ү", "і", "ә", "э", "а", "о", "ұ", "ы", "я", "ё", "и" );
 33+ // Preceding letters
 34+ $Nasals = array( "м", "н", "ң" );
 35+ $Sonants = array( "и", "й", "л", "р", "у", "ю" );
 36+ $Consonants = array( "п", "ф", "к", "қ", "т", "ш", "с", "х", "ц", "ч", "щ", "б", "в", "г", "д" );
 37+ $Sibilants = array( "ж", "з" );
 38+ $Sonorants = array( "и", "й", "л", "р", "у", "ю", "м", "н", "ң", "ж", "з" );
 39+
 40+ // Possessives
 41+ $firstPerson = array( "м", "ң" ); // 1st singular, 2nd unformal
 42+ $secondPerson = array( "з" ); // 1st plural, 2nd formal
 43+ $thirdPerson = array( "ы", "і" ); // 3rd
 44+
 45+ $lastLetter = $this->lastLetter( $word, $allVowels );
 46+ $wordEnding =& $lastLetter[0];
 47+ $wordLastVowel =& $lastLetter[1];
 48+
 49+ // Now convert the word
 50+ switch ( $case ) {
 51+ case "dc1":
 52+ case "genitive": # ilik
 53+ if ( in_array( $wordEnding, $Consonants ) ) {
 54+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 55+ $word = $word . "тің";
 56+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 57+ $word = $word . "тың";
 58+ }
 59+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
 60+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 61+ $word = $word . "нің";
 62+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 63+ $word = $word . "ның";
 64+ }
 65+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 66+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 67+ $word = $word . "дің";
 68+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 69+ $word = $word . "дың";
 70+ }
 71+ }
 72+ break;
 73+ case "dc2":
 74+ case "dative": # barıs
 75+ if ( in_array( $wordEnding, $Consonants ) ) {
 76+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 77+ $word = $word . "ке";
 78+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 79+ $word = $word . "қа";
 80+ }
 81+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 82+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 83+ $word = $word . "ге";
 84+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 85+ $word = $word . "ға";
 86+ }
 87+ }
 88+ break;
 89+ case "dc21":
 90+ case "possessive dative": # täweldık + barıs
 91+ if ( in_array( $wordEnding, $firstPerson ) ) {
 92+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 93+ $word = $word . "е";
 94+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 95+ $word = $word . "а";
 96+ }
 97+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 98+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 99+ $word = $word . "ге";
 100+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 101+ $word = $word . "ға";
 102+ }
 103+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 104+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 105+ $word = $word . "не";
 106+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 107+ $word = $word . "на";
 108+ }
 109+ }
 110+ break;
 111+ case "dc3":
 112+ case "accusative": # tabıs
 113+ if ( in_array( $wordEnding, $Consonants ) ) {
 114+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 115+ $word = $word . "ті";
 116+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 117+ $word = $word . "ты";
 118+ }
 119+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
 120+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 121+ $word = $word . "ні";
 122+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 123+ $word = $word . "ны";
 124+ }
 125+ } elseif ( in_array( $wordEnding, $Sonorants ) ) {
 126+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 127+ $word = $word . "ді";
 128+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 129+ $word = $word . "ды";
 130+ }
 131+ }
 132+ break;
 133+ case "dc31":
 134+ case "possessive accusative": # täweldık + tabıs
 135+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 136+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 137+ $word = $word . "ді";
 138+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 139+ $word = $word . "ды";
 140+ }
 141+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 142+ $word = $word . "н";
 143+ }
 144+ break;
 145+ case "dc4":
 146+ case "locative": # jatıs
 147+ if ( in_array( $wordEnding, $Consonants ) ) {
 148+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 149+ $word = $word . "те";
 150+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 151+ $word = $word . "та";
 152+ }
 153+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 154+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 155+ $word = $word . "де";
 156+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 157+ $word = $word . "да";
 158+ }
 159+ }
 160+ break;
 161+ case "dc41":
 162+ case "possessive locative": # täweldık + jatıs
 163+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 164+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 165+ $word = $word . "де";
 166+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 167+ $word = $word . "да";
 168+ }
 169+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 170+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 171+ $word = $word . "нде";
 172+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 173+ $word = $word . "нда";
 174+ }
 175+ }
 176+ break;
 177+ case "dc5":
 178+ case "ablative": # şığıs
 179+ if ( in_array( $wordEnding, $Consonants ) ) {
 180+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 181+ $word = $word . "тен";
 182+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 183+ $word = $word . "тан";
 184+ }
 185+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 186+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 187+ $word = $word . "ден";
 188+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 189+ $word = $word . "дан";
 190+ }
 191+ } elseif ( in_array( $wordEnding, $Nasals ) ) {
 192+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 193+ $word = $word . "нен";
 194+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 195+ $word = $word . "нан";
 196+ }
 197+ }
 198+ break;
 199+ case "dc51":
 200+ case "possessive ablative": # täweldık + şığıs
 201+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
 202+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 203+ $word = $word . "нен";
 204+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 205+ $word = $word . "нан";
 206+ }
 207+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 208+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 209+ $word = $word . "ден";
 210+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 211+ $word = $word . "дан";
 212+ }
 213+ }
 214+ break;
 215+ case "dc6":
 216+ case "comitative": # kömektes
 217+ if ( in_array( $wordEnding, $Consonants ) ) {
 218+ $word = $word . "пен";
 219+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 220+ $word = $word . "мен";
 221+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 222+ $word = $word . "бен";
 223+ }
 224+ break;
 225+ case "dc61":
 226+ case "possessive comitative": # täweldık + kömektes
 227+ if ( in_array( $wordEnding, $Consonants ) ) {
 228+ $word = $word . "пенен";
 229+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 230+ $word = $word . "менен";
 231+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 232+ $word = $word . "бенен";
 233+ }
 234+ break;
 235+ default: # dc0 #nominative #ataw
 236+ }
 237+ return $word;
 238+ }
 239+
 240+ /**
 241+ * @param $word string
 242+ * @param $case string
 243+ * @return string
 244+ */
 245+ function convertGrammarKk_latn( $word, $case ) {
 246+ global $wgGrammarForms;
 247+ if ( isset( $wgGrammarForms['kk-tr'][$case][$word] ) ) {
 248+ return $wgGrammarForms['kk-tr'][$case][$word];
 249+ }
 250+ if ( isset( $wgGrammarForms['kk-latn'][$case][$word] ) ) {
 251+ return $wgGrammarForms['kk-latn'][$case][$word];
 252+ }
 253+ // Set up some constants...
 254+ // Vowels in last syllable
 255+ $frontVowels = array( "e", "ö", "ü", "i", "ä", "é" );
 256+ $backVowels = array( "a", "o", "u", "ı" );
 257+ $allVowels = array( "e", "ö", "ü", "i", "ä", "é", "a", "o", "u", "ı" );
 258+ // Preceding letters
 259+ $Nasals = array( "m", "n", "ñ" );
 260+ $Sonants = array( "ï", "y", "ý", "l", "r", "w" );
 261+ $Consonants = array( "p", "f", "k", "q", "t", "ş", "s", "x", "c", "ç", "b", "v", "g", "d" );
 262+ $Sibilants = array( "j", "z" );
 263+ $Sonorants = array( "ï", "y", "ý", "l", "r", "w", "m", "n", "ñ", "j", "z" );
 264+
 265+ // Possessives
 266+ $firstPerson = array( "m", "ñ" ); // 1st singular, 2nd unformal
 267+ $secondPerson = array( "z" ); // 1st plural, 2nd formal
 268+ $thirdPerson = array( "ı", "i" ); // 3rd
 269+
 270+ $lastLetter = $this->lastLetter( $word, $allVowels );
 271+ $wordEnding =& $lastLetter[0];
 272+ $wordLastVowel =& $lastLetter[1];
 273+
 274+ // Now convert the word
 275+ switch ( $case ) {
 276+ case "dc1":
 277+ case "genitive": # ilik
 278+ if ( in_array( $wordEnding, $Consonants ) ) {
 279+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 280+ $word = $word . "tiñ";
 281+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 282+ $word = $word . "tıñ";
 283+ }
 284+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
 285+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 286+ $word = $word . "niñ";
 287+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 288+ $word = $word . "nıñ";
 289+ }
 290+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 291+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 292+ $word = $word . "diñ";
 293+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 294+ $word = $word . "dıñ";
 295+ }
 296+ }
 297+ break;
 298+ case "dc2":
 299+ case "dative": # barıs
 300+ if ( in_array( $wordEnding, $Consonants ) ) {
 301+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 302+ $word = $word . "ke";
 303+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 304+ $word = $word . "qa";
 305+ }
 306+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 307+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 308+ $word = $word . "ge";
 309+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 310+ $word = $word . "ğa";
 311+ }
 312+ }
 313+ break;
 314+ case "dc21":
 315+ case "possessive dative": # täweldık + barıs
 316+ if ( in_array( $wordEnding, $firstPerson ) ) {
 317+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 318+ $word = $word . "e";
 319+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 320+ $word = $word . "a";
 321+ }
 322+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 323+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 324+ $word = $word . "ge";
 325+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 326+ $word = $word . "ğa";
 327+ }
 328+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 329+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 330+ $word = $word . "ne";
 331+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 332+ $word = $word . "na";
 333+ }
 334+ }
 335+ break;
 336+ case "dc3":
 337+ case "accusative": # tabıs
 338+ if ( in_array( $wordEnding, $Consonants ) ) {
 339+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 340+ $word = $word . "ti";
 341+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 342+ $word = $word . "tı";
 343+ }
 344+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
 345+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 346+ $word = $word . "ni";
 347+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 348+ $word = $word . "nı";
 349+ }
 350+ } elseif ( in_array( $wordEnding, $Sonorants ) ) {
 351+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 352+ $word = $word . "di";
 353+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 354+ $word = $word . "dı";
 355+ }
 356+ }
 357+ break;
 358+ case "dc31":
 359+ case "possessive accusative": # täweldık + tabıs
 360+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 361+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 362+ $word = $word . "di";
 363+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 364+ $word = $word . "dı";
 365+ }
 366+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 367+ $word = $word . "n";
 368+ }
 369+ break;
 370+ case "dc4":
 371+ case "locative": # jatıs
 372+ if ( in_array( $wordEnding, $Consonants ) ) {
 373+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 374+ $word = $word . "te";
 375+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 376+ $word = $word . "ta";
 377+ }
 378+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 379+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 380+ $word = $word . "de";
 381+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 382+ $word = $word . "da";
 383+ }
 384+ }
 385+ break;
 386+ case "dc41":
 387+ case "possessive locative": # täweldık + jatıs
 388+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 389+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 390+ $word = $word . "de";
 391+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 392+ $word = $word . "da";
 393+ }
 394+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 395+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 396+ $word = $word . "nde";
 397+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 398+ $word = $word . "nda";
 399+ }
 400+ }
 401+ break;
 402+ case "dc5":
 403+ case "ablative": # şığıs
 404+ if ( in_array( $wordEnding, $Consonants ) ) {
 405+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 406+ $word = $word . "ten";
 407+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 408+ $word = $word . "tan";
 409+ }
 410+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 411+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 412+ $word = $word . "den";
 413+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 414+ $word = $word . "dan";
 415+ }
 416+ } elseif ( in_array( $wordEnding, $Nasals ) ) {
 417+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 418+ $word = $word . "nen";
 419+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 420+ $word = $word . "nan";
 421+ }
 422+ }
 423+ break;
 424+ case "dc51":
 425+ case "possessive ablative": # täweldık + şığıs
 426+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
 427+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 428+ $word = $word . "nen";
 429+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 430+ $word = $word . "nan";
 431+ }
 432+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 433+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 434+ $word = $word . "den";
 435+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 436+ $word = $word . "dan";
 437+ }
 438+ }
 439+ break;
 440+ case "dc6":
 441+ case "comitative": # kömektes
 442+ if ( in_array( $wordEnding, $Consonants ) ) {
 443+ $word = $word . "pen";
 444+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 445+ $word = $word . "men";
 446+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 447+ $word = $word . "ben";
 448+ }
 449+ break;
 450+ case "dc61":
 451+ case "possessive comitative": # täweldık + kömektes
 452+ if ( in_array( $wordEnding, $Consonants ) ) {
 453+ $word = $word . "penen";
 454+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 455+ $word = $word . "menen";
 456+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 457+ $word = $word . "benen";
 458+ }
 459+ break;
 460+ default: # dc0 #nominative #ataw
 461+ }
 462+ return $word;
 463+ }
 464+
 465+ /**
 466+ * @param $word string
 467+ * @param $case string
 468+ * @return string
 469+ */
 470+ function convertGrammarKk_arab( $word, $case ) {
 471+ global $wgGrammarForms;
 472+ if ( isset( $wgGrammarForms['kk-cn'][$case][$word] ) ) {
 473+ return $wgGrammarForms['kk-cn'][$case][$word];
 474+ }
 475+ if ( isset( $wgGrammarForms['kk-arab'][$case][$word] ) ) {
 476+ return $wgGrammarForms['kk-arab'][$case][$word];
 477+ }
 478+ // Set up some constants...
 479+ // Vowels in last syllable
 480+ $frontVowels = array( "ە", "ٶ", "ٷ", "ٸ", "ٵ", "ە" );
 481+ $backVowels = array( "ا", "و", "ۇ", "ى" );
 482+ $allVowels = array( "ە", "ٶ", "ٷ", "ٸ", "ٵ", "ە", "ا", "و", "ۇ", "ى" );
 483+ // Preceding letters
 484+ $Nasals = array( "م", "ن", "ڭ" );
 485+ $Sonants = array( "ي", "ي", "ل", "ر", "ۋ" );
 486+ $Consonants = array( "پ", "ف", "ك", "ق", "ت", "ش", "س", "ح", "تس", "چ", "ب", "ۆ", "گ", "د" );
 487+ $Sibilants = array( "ج", "ز" );
 488+ $Sonorants = array( "ي", "ي", "ل", "ر", "ۋ", "م", "ن", "ڭ", "ج", "ز" );
 489+
 490+ // Possessives
 491+ $firstPerson = array( "م", "ڭ" ); // 1st singular, 2nd unformal
 492+ $secondPerson = array( "ز" ); // 1st plural, 2nd formal
 493+ $thirdPerson = array( "ى", "ٸ" ); // 3rd
 494+
 495+ $lastLetter = $this->lastLetter( $word, $allVowels );
 496+ $wordEnding = $lastLetter[0];
 497+ $wordLastVowel = $lastLetter[1];
 498+
 499+ // Now convert the word
 500+ switch ( $case ) {
 501+ case "dc1":
 502+ case "genitive": # ilik
 503+ if ( in_array( $wordEnding, $Consonants ) ) {
 504+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 505+ $word = $word . "تٸڭ";
 506+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 507+ $word = $word . "تىڭ";
 508+ }
 509+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
 510+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 511+ $word = $word . "نٸڭ";
 512+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 513+ $word = $word . "نىڭ";
 514+ }
 515+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 516+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 517+ $word = $word . "دٸڭ";
 518+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 519+ $word = $word . "دىڭ";
 520+ }
 521+ }
 522+ break;
 523+ case "dc2":
 524+ case "dative": # barıs
 525+ if ( in_array( $wordEnding, $Consonants ) ) {
 526+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 527+ $word = $word . "كە";
 528+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 529+ $word = $word . "قا";
 530+ }
 531+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 532+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 533+ $word = $word . "گە";
 534+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 535+ $word = $word . "عا";
 536+ }
 537+ }
 538+ break;
 539+ case "dc21":
 540+ case "possessive dative": # täweldık + barıs
 541+ if ( in_array( $wordEnding, $firstPerson ) ) {
 542+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 543+ $word = $word . "ە";
 544+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 545+ $word = $word . "ا";
 546+ }
 547+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 548+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 549+ $word = $word . "گە";
 550+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 551+ $word = $word . "عا";
 552+ }
 553+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 554+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 555+ $word = $word . "نە";
 556+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 557+ $word = $word . "نا";
 558+ }
 559+ }
 560+ break;
 561+ case "dc3":
 562+ case "accusative": # tabıs
 563+ if ( in_array( $wordEnding, $Consonants ) ) {
 564+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 565+ $word = $word . "تٸ";
 566+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 567+ $word = $word . "تى";
 568+ }
 569+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
 570+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 571+ $word = $word . "نٸ";
 572+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 573+ $word = $word . "نى";
 574+ }
 575+ } elseif ( in_array( $wordEnding, $Sonorants ) ) {
 576+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 577+ $word = $word . "دٸ";
 578+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 579+ $word = $word . "دى";
 580+ }
 581+ }
 582+ break;
 583+ case "dc31":
 584+ case "possessive accusative": # täweldık + tabıs
 585+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 586+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 587+ $word = $word . "دٸ";
 588+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 589+ $word = $word . "دى";
 590+ }
 591+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 592+ $word = $word . "ن";
 593+ }
 594+ break;
 595+ case "dc4":
 596+ case "locative": # jatıs
 597+ if ( in_array( $wordEnding, $Consonants ) ) {
 598+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 599+ $word = $word . "تە";
 600+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 601+ $word = $word . "تا";
 602+ }
 603+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
 604+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 605+ $word = $word . "دە";
 606+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 607+ $word = $word . "دا";
 608+ }
 609+ }
 610+ break;
 611+ case "dc41":
 612+ case "possessive locative": # täweldık + jatıs
 613+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
 614+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 615+ $word = $word . "دە";
 616+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 617+ $word = $word . "دا";
 618+ }
 619+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
 620+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 621+ $word = $word . "ندە";
 622+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 623+ $word = $word . "ندا";
 624+ }
 625+ }
 626+ break;
 627+ case "dc5":
 628+ case "ablative": # şığıs
 629+ if ( in_array( $wordEnding, $Consonants ) ) {
 630+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 631+ $word = $word . "تەن";
 632+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 633+ $word = $word . "تان";
 634+ }
 635+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants ) ) {
 636+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 637+ $word = $word . "دەن";
 638+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 639+ $word = $word . "دان";
 640+ }
 641+ } elseif ( in_array( $wordEnding, $Nasals ) ) {
 642+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 643+ $word = $word . "نەن";
 644+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 645+ $word = $word . "نان";
 646+ }
 647+ }
 648+ break;
 649+ case "dc51":
 650+ case "possessive ablative": # täweldık + şığıs
 651+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
 652+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 653+ $word = $word . "نەن";
 654+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 655+ $word = $word . "نان";
 656+ }
 657+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
 658+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
 659+ $word = $word . "دەن";
 660+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
 661+ $word = $word . "دان";
 662+ }
 663+ }
 664+ break;
 665+ case "dc6":
 666+ case "comitative": # kömektes
 667+ if ( in_array( $wordEnding, $Consonants ) ) {
 668+ $word = $word . "پەن";
 669+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 670+ $word = $word . "مەن";
 671+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 672+ $word = $word . "بەن";
 673+ }
 674+ break;
 675+ case "dc61":
 676+ case "possessive comitative": # täweldık + kömektes
 677+ if ( in_array( $wordEnding, $Consonants ) ) {
 678+ $word = $word . "پەنەن";
 679+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
 680+ $word = $word . "مەنەن";
 681+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
 682+ $word = $word . "بەنەن";
 683+ }
 684+ break;
 685+ default: # dc0 #nominative #ataw
 686+ }
 687+ return $word;
 688+ }
 689+
 690+ /**
 691+ * @param $word string
 692+ * @param $allVowels array
 693+ * @return array
 694+ */
 695+ function lastLetter( $word, $allVowels ) {
 696+ $lastLetter = array();
 697+
 698+ // Put the word in a form we can play with since we're using UTF-8
 699+ $ar = preg_split( '//u', parent::lc( $word ), -1, PREG_SPLIT_NO_EMPTY );
 700+
 701+ // Here's an array with the order of the letters in the word reversed
 702+ // so we can find a match quicker *shrug*
 703+ $wordReversed = array_reverse( $ar );
 704+
 705+ // Here's the last letter in the word
 706+ $lastLetter[0] = $ar[count( $ar ) - 1];
 707+
 708+ // Find the last vowel in the word
 709+ $lastLetter[1] = NULL;
 710+ foreach ( $wordReversed as $xvalue ) {
 711+ foreach ( $allVowels as $yvalue ) {
 712+ if ( strcmp( $xvalue, $yvalue ) == 0 ) {
 713+ $lastLetter[1] = $xvalue;
 714+ break;
 715+ } else {
 716+ continue;
 717+ }
 718+ }
 719+ if ( $lastLetter[1] !== NULL ) {
 720+ break;
 721+ } else {
 722+ continue;
 723+ }
 724+ }
 725+
 726+ return $lastLetter;
 727+ }
 728+
 729+ /**
 730+ * Avoid grouping whole numbers between 0 to 9999
 731+ *
 732+ * @param $_ string
 733+ *
 734+ * @return string
 735+ */
 736+ function commafy( $_ ) {
 737+ if ( !preg_match( '/^\d{1,4}$/', $_ ) ) {
 738+ return strrev( (string)preg_replace( '/(\d{3})(?=\d)(?!\d*\.)/', '$1,', strrev( $_ ) ) );
 739+ } else {
 740+ return $_;
 741+ }
 742+ }
 743+}
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/LanguageKk_cyrl.php
___________________________________________________________________
Added: svn:eol-style
1744 + native
Index: trunk/tools/ToolserverI18N/language/mw-classes/Names.php
@@ -0,0 +1,394 @@
 2+<?php
 3+/**
 4+ * These determine things like interwikis, language selectors, and so on.
 5+ * Safe to change without running scripts on the respective sites.
 6+ *
 7+ * @ingroup Language
 8+ */
 9+/* private */ $coreLanguageNames = array(
 10+ 'aa' => 'Qafár af', # Afar
 11+ 'ab' => 'Аҧсуа', # Abkhaz, should possibly add ' бысжѡа'
 12+ 'ace' => 'Acèh', # Aceh
 13+ 'af' => 'Afrikaans', # Afrikaans
 14+ 'ak' => 'Akan', # Akan
 15+ 'aln' => 'Gegë', # Gheg Albanian
 16+ 'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility. See gsw.
 17+ 'am' => 'አማርኛ', # Amharic
 18+ 'an' => 'Aragonés', # Aragonese
 19+ 'ang' => 'Ænglisc', # Old English (Bug 23283)
 20+ 'anp' => 'अङ्गिका', # Angika
 21+ 'ar' => 'العربية', # Arabic
 22+ 'arc' => 'ܐܪܡܝܐ', # Aramaic
 23+ 'arn' => 'Mapudungun', # Mapuche, Mapudungu, Araucanian (Araucano)
 24+ 'ary' => 'Maġribi', # Moroccan Spoken Arabic
 25+ 'arz' => 'مصرى', # Egyptian Spoken Arabic
 26+ 'as' => 'অসমীয়া', # Assamese
 27+ 'ast' => 'Asturianu', # Asturian
 28+ 'av' => 'Авар', # Avar
 29+ 'avk' => 'Kotava', # Kotava
 30+ 'ay' => 'Aymar aru', # Aymara
 31+ 'az' => 'Azərbaycanca', # Azerbaijani
 32+ 'ba' => 'Башҡортса', # Bashkir
 33+ 'bar' => 'Boarisch', # Bavarian (Austro-Bavarian and South Tyrolean)
 34+ 'bat-smg' => 'Žemaitėška', # Samogitian (deprecated code, 'sgs' in ISO 693-3 since 2010-06-30 )
 35+ 'bcc' => 'بلوچی مکرانی', # Southern Balochi
 36+ 'bcl' => 'Bikol Central', # Bikol: Central Bicolano language
 37+ 'be' => 'Беларуская', # Belarusian normative
 38+ 'be-tarask' => "\xE2\x80\xAAБеларуская (тарашкевіца)\xE2\x80\xAC", # Belarusian in Taraskievica orthography
 39+ 'be-x-old' => "\xE2\x80\xAAБеларуская (тарашкевіца)\xE2\x80\xAC", # Belarusian in Taraskievica orthography; compat link
 40+ 'bg' => 'Български', # Bulgarian
 41+ 'bh' => 'भोजपुरी', # Bihari marco language. Falls back to Bhojpuri (bho).
 42+ 'bho' => 'भोजपुरी', # Bhojpuri
 43+ 'bi' => 'Bislama', # Bislama
 44+ 'bjn' => 'Bahasa Banjar', # Banjarese
 45+ 'bm' => 'Bamanankan', # Bambara
 46+ 'bn' => 'বাংলা', # Bengali
 47+ 'bo' => 'བོད་ཡིག', # Tibetan
 48+ 'bpy' => 'ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী', # Bishnupriya Manipuri
 49+ 'bqi' => 'بختياري', # Bakthiari
 50+ 'br' => 'Brezhoneg', # Breton
 51+ 'brh' => 'Bráhuí', # Brahui
 52+ 'bs' => 'Bosanski', # Bosnian
 53+ 'bug' => 'ᨅᨔ ᨕᨘᨁᨗ', # Bugis
 54+ 'bxr' => 'Буряад', # Buryat (Russia)
 55+ 'ca' => 'Català', # Catalan
 56+ 'cbk-zam' => 'Chavacano de Zamboanga', # Zamboanga Chavacano
 57+ 'cdo' => 'Mìng-dĕ̤ng-ngṳ̄', # Min Dong
 58+ 'ce' => 'Нохчийн', # Chechen
 59+ 'ceb' => 'Cebuano', # Cebuano
 60+ 'ch' => 'Chamoru', # Chamorro
 61+ 'cho' => 'Choctaw', # Choctaw
 62+ 'chr' => 'ᏣᎳᎩ', # Cherokee
 63+ 'chy' => 'Tsetsêhestâhese', # Cheyenne
 64+ 'ckb' => 'کوردی', # Sorani
 65+ 'co' => 'Corsu', # Corsican
 66+ 'cps' => 'Capiceño', # Capiznon
 67+ 'cr' => 'Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ', # Cree
 68+ 'crh' => 'Qırımtatarca', # Crimean Tatar (multiple scripts - defaults to Latin)
 69+ 'crh-latn' => "\xE2\x80\xAAQırımtatarca (Latin)\xE2\x80\xAC", # Crimean Tatar (Latin)
 70+ 'crh-cyrl' => "\xE2\x80\xAAКъырымтатарджа (Кирилл)\xE2\x80\xAC", # Crimean Tatar (Cyrillic)
 71+ 'cs' => 'Česky', # Czech
 72+ 'csb' => 'Kaszëbsczi', # Cassubian
 73+ 'cu' => 'Словѣ́ньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ', # Old Church Slavonic (ancient language)
 74+ 'cv' => 'Чӑвашла', # Chuvash
 75+ 'cy' => 'Cymraeg', # Welsh
 76+ 'da' => 'Dansk', # Danish
 77+ 'de' => 'Deutsch', # German ("Du")
 78+ 'de-at' => 'Österreichisches Deutsch', # Austrian German
 79+ 'de-ch' => 'Schweizer Hochdeutsch', # Swiss Standard German
 80+ 'de-formal' => "\xE2\x80\xAADeutsch (Sie-Form)\xE2\x80\xAC", # German - formal address ("Sie")
 81+ 'diq' => 'Zazaki', # Zazaki
 82+ 'dsb' => 'Dolnoserbski', # Lower Sorbian
 83+ 'dtp' => 'Dusun Bundu-liwan', # Central Dusun
 84+ 'dv' => 'ދިވެހިބަސް', # Dhivehi
 85+ 'dz' => 'ཇོང་ཁ', # Bhutani
 86+ 'ee' => 'Eʋegbe', # Éwé
 87+ 'el' => 'Ελληνικά', # Greek
 88+ 'eml' => 'Emiliàn e rumagnòl', # Emiliano-Romagnolo / Sammarinese
 89+ 'en' => 'English', # English
 90+ 'en-gb' => 'British English', # British English
 91+ 'eo' => 'Esperanto', # Esperanto
 92+ 'es' => 'Español', # Spanish
 93+ 'et' => 'Eesti', # Estonian
 94+ 'eu' => 'Euskara', # Basque
 95+ 'ext' => 'Estremeñu', # Extremaduran
 96+ 'fa' => 'فارسی', # Persian
 97+ 'ff' => 'Fulfulde', # Fulfulde, Maasina
 98+ 'fi' => 'Suomi', # Finnish
 99+ 'fiu-vro' => 'Võro', # Võro (deprecated code, 'vro' in ISO 639-3 since 2009-01-16)
 100+ 'fj' => 'Na Vosa Vakaviti', # Fijian
 101+ 'fo' => 'Føroyskt', # Faroese
 102+ 'fr' => 'Français', # French
 103+ 'frc' => 'Français cadien', # Cajun French
 104+ 'frp' => 'Arpetan', # Franco-Provençal/Arpitan
 105+ 'frr' => 'Nordfriisk', # North Frisian
 106+ 'fur' => 'Furlan', # Friulian
 107+ 'fy' => 'Frysk', # Frisian
 108+ 'ga' => 'Gaeilge', # Irish
 109+ 'gag' => 'Gagauz', # Gagauz
 110+ 'gan' => '贛語', # Gan (multiple scripts - defaults to Traditional)
 111+ 'gan-hans' => "\xE2\x80\xAA赣语(简体)\xE2\x80\xAC", # Gan (Simplified Han)
 112+ 'gan-hant' => "\xE2\x80\xAA贛語(繁體)\xE2\x80\xAC", # Gan (Traditional Han)
 113+ 'gd' => 'Gàidhlig', # Scots Gaelic
 114+ 'gl' => 'Galego', # Galician
 115+ 'glk' => 'گیلکی', # Gilaki
 116+ 'gn' => 'Avañe\'ẽ', # Guaraní, Paraguayan
 117+ 'got' => '𐌲𐌿𐍄𐌹𐍃𐌺', # Gothic
 118+ 'grc' => 'Ἀρχαία ἑλληνικὴ', # Ancient Greek
 119+ 'gsw' => 'Alemannisch', # Alemannic
 120+ 'gu' => 'ગુજરાતી', # Gujarati
 121+ 'gv' => 'Gaelg', # Manx
 122+ 'ha' => 'هَوُسَ', # Hausa
 123+ 'hak' => 'Hak-kâ-fa', # Hakka
 124+ 'haw' => 'Hawai`i', # Hawaiian
 125+ 'he' => 'עברית', # Hebrew
 126+ 'hi' => 'हिन्दी', # Hindi
 127+ 'hif' => 'Fiji Hindi', # Fijian Hindi (multiple scripts - defaults to Latin)
 128+ 'hif-latn' => 'Fiji Hindi', # Fiji Hindi (latin)
 129+ 'hil' => 'Ilonggo', # Hiligaynon
 130+ 'ho' => 'Hiri Motu', # Hiri Motu
 131+ 'hr' => 'Hrvatski', # Croatian
 132+ 'hsb' => 'Hornjoserbsce', # Upper Sorbian
 133+ 'ht' => 'Kreyòl ayisyen', # Haitian Creole French
 134+ 'hu' => 'Magyar', # Hungarian
 135+ 'hy' => 'Հայերեն', # Armenian
 136+ 'hz' => 'Otsiherero', # Herero
 137+ 'ia' => 'Interlingua', # Interlingua (IALA)
 138+ 'id' => 'Bahasa Indonesia', # Indonesian
 139+ 'ie' => 'Interlingue', # Interlingue (Occidental)
 140+ 'ig' => 'Igbo', # Igbo
 141+ 'ii' => 'ꆇꉙ', # Sichuan Yi
 142+ 'ik' => 'Iñupiak', # Inupiak (Inupiatun, Northwest Alaska / Inupiatun, North Alaskan)
 143+ 'ike-cans' => 'ᐃᓄᒃᑎᑐᑦ', # Inuktitut, Eastern Canadian/Eastern Canadian "Eskimo"/"Eastern Arctic Eskimo"/Inuit (Unified Canadian Aboriginal Syllabics)
 144+ 'ike-latn' => 'inuktitut', # Inuktitut, Eastern Canadian (Latin script)
 145+ 'ilo' => 'Ilokano', # Ilokano
 146+ 'inh' => 'ГІалгІай Ğalğaj', # Ingush
 147+ 'io' => 'Ido', # Ido
 148+ 'is' => 'Íslenska', # Icelandic
 149+ 'it' => 'Italiano', # Italian
 150+ 'iu' => 'ᐃᓄᒃᑎᑐᑦ/inuktitut', # Inuktitut (macro language - do no localise, see ike/ikt - falls back to ike-cans)
 151+ 'ja' => '日本語', # Japanese
 152+ 'jam' => 'Patois', # Jamaican Creole English
 153+ 'jbo' => 'Lojban', # Lojban
 154+ 'jut' => 'Jysk', # Jutish / Jutlandic
 155+ 'jv' => 'Basa Jawa', # Javanese
 156+ 'ka' => 'ქართული', # Georgian
 157+ 'kaa' => 'Qaraqalpaqsha', # Karakalpak
 158+ 'kab' => 'Taqbaylit', # Kabyle
 159+ 'kbd' => 'Адыгэбзэ', # Kabardian
 160+ 'kbd-cyrl' => 'Адыгэбзэ', # Kabardian (Cyrillic)
 161+ 'kg' => 'Kongo', # Kongo, (FIXME!) should probaly be KiKongo or KiKoongo
 162+ 'khw' => 'کھوار', # Khowar
 163+ 'ki' => 'Gĩkũyũ', # Gikuyu
 164+ 'kiu' => 'Kırmancki', # Kirmanjki
 165+ 'kj' => 'Kwanyama', # Kwanyama
 166+ 'kk' => 'Қазақша', # Kazakh (multiple scripts - defaults to Cyrillic)
 167+ 'kk-arab' => "\xE2\x80\xABقازاقشا (تٴوتە)\xE2\x80\xAC", # Kazakh Arabic
 168+ 'kk-cyrl' => "\xE2\x80\xAAҚазақша (кирил)\xE2\x80\xAC", # Kazakh Cyrillic
 169+ 'kk-latn' => "\xE2\x80\xAAQazaqşa (latın)\xE2\x80\xAC", # Kazakh Latin
 170+ 'kk-cn' => "\xE2\x80\xABقازاقشا (جۇنگو)\xE2\x80\xAC", # Kazakh (China)
 171+ 'kk-kz' => "\xE2\x80\xAAҚазақша (Қазақстан)\xE2\x80\xAC", # Kazakh (Kazakhstan)
 172+ 'kk-tr' => "\xE2\x80\xAAQazaqşa (Türkïya)\xE2\x80\xAC", # Kazakh (Turkey)
 173+ 'kl' => 'Kalaallisut', # Inuktitut, Greenlandic/Greenlandic/Kalaallisut (kal)
 174+ 'km' => 'ភាសាខ្មែរ', # Khmer, Central
 175+ 'kn' => 'ಕನ್ನಡ', # Kannada
 176+ 'ko' => '한국어', # Korean
 177+ 'ko-kp' => '한국어 (조선)', # Korean (DPRK)
 178+ 'koi' => 'Перем Коми', # Komi-Permyak
 179+ 'kr' => 'Kanuri', # Kanuri, Central
 180+ 'krc' => 'Къарачай-Малкъар', # Karachay-Balkar
 181+ 'kri' => 'Krio', # Krio
 182+ 'krj' => 'Kinaray-a', # Kinaray-a
 183+ 'ks' => 'कश्मीरी - (كشميري)', # Kashmiri (multiple scripts - defaults to Perso-Arabic)
 184+ 'ks-arab' => 'كشميري', # Kashmiri (Perso-Arabic script)
 185+ 'ks-deva' => 'कश्मीरी', # Kashmiri (Devanagari script)
 186+ 'ksh' => 'Ripoarisch', # Ripuarian
 187+ 'ku' => 'Kurdî', # Kurdish (multiple scripts - defaults to Latin)
 188+ 'ku-latn' => "\xE2\x80\xAAKurdî (latînî)\xE2\x80\xAC", # Northern Kurdish (Latin script)
 189+ 'ku-arab' => "\xE2\x80\xABكوردي (عەرەبی)\xE2\x80\xAC", # Northern Kurdish (Arabic script) (falls back to ckb)
 190+ 'kv' => 'Коми', # Komi-Zyrian (Cyrillic is common script but also written in Latin script)
 191+ 'kw' => 'Kernowek', # Cornish
 192+ 'ky' => 'Кыргызча', # Kirghiz
 193+ 'la' => 'Latina', # Latin
 194+ 'lad' => 'Ladino', # Ladino
 195+ 'lb' => 'Lëtzebuergesch', # Luxemburguish
 196+ 'lbe' => 'Лакку', # Lak
 197+ 'lez' => 'Лезги', # Lezgi
 198+ 'lfn' => 'Lingua Franca Nova', # Lingua Franca Nova
 199+ 'lg' => 'Luganda', # Ganda
 200+ 'li' => 'Limburgs', # Limburgian
 201+ 'lij' => 'Ligure', # Ligurian
 202+ 'liv' => 'Līvõ kēļ', # Livonian
 203+ 'lmo' => 'Lumbaart', # Lombard
 204+ 'ln' => 'Lingála', # Lingala
 205+ 'lo' => 'ລາວ',# Laotian
 206+ 'loz' => 'Silozi', # Lozi
 207+ 'lt' => 'Lietuvių', # Lithuanian
 208+ 'ltg' => 'Latgaļu', # Latgalian
 209+ 'lv' => 'Latviešu', # Latvian
 210+ 'lzh' => '文言', # Literary Chinese -- (bug 8217) lzh instead of zh-classical, http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=l
 211+ 'lzz' => 'Lazuri', # Laz
 212+ 'mai' => 'मैथिली', # Maithili
 213+ 'map-bms' => 'Basa Banyumasan', # Banyumasan
 214+ 'mdf' => 'Мокшень', # Moksha
 215+ 'mg' => 'Malagasy', # Malagasy
 216+ 'mh' => 'Ebon', # Marshallese
 217+ 'mhr' => 'Олык Марий', # Eastern Mari
 218+ 'mi' => 'Māori', # Maori
 219+ 'min' => 'Baso Minangkabau', # Minangkabau
 220+ 'mk' => 'Македонски', # Macedonian
 221+ 'ml' => 'മലയാളം', # Malayalam
 222+ 'mn' => 'Монгол', # Halh Mongolian (Cyrillic) (ISO 639-3: khk)
 223+ 'mo' => 'Молдовеняскэ', # Moldovan
 224+ 'mr' => 'मराठी', # Marathi
 225+ 'mrj' => 'Кырык мары', # Hill Mari
 226+ 'ms' => 'Bahasa Melayu', # Malay
 227+ 'mt' => 'Malti', # Maltese
 228+ 'mus' => 'Mvskoke', # Muskogee/Creek
 229+ 'mwl' => 'Mirandés', # Mirandese
 230+ 'my' => 'မြန်မာဘာသာ', # Burmese
 231+ 'myv' => 'Эрзянь', # Erzya
 232+ 'mzn' => 'مازِرونی', # Mazanderani
 233+ 'na' => 'Dorerin Naoero', # Nauruan
 234+ 'nah' => 'Nāhuatl', # Nahuatl, en:Wikipedia writes Nahuatlahtolli, while another form is Náhuatl
 235+ 'nan' => 'Bân-lâm-gú', # Min-nan -- (bug 8217) nan instead of zh-min-nan, http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=n
 236+ 'nap' => 'Nnapulitano', # Neapolitan
 237+ 'nb' => "\xE2\x80\xAANorsk (bokmål)\xE2\x80\xAC", # Norwegian (Bokmal)
 238+ 'nds' => 'Plattdüütsch', # Low German ''or'' Low Saxon
 239+ 'nds-nl' => 'Nedersaksisch', # Dutch Low Saxon
 240+ 'ne' => 'नेपाली', # Nepali
 241+ 'new' => 'नेपाल भाषा', # Newar / Nepal Bhasa
 242+ 'ng' => 'Oshiwambo', # Ndonga
 243+ 'niu' => 'Niuē', # Niuean
 244+ 'nl' => 'Nederlands', # Dutch
 245+ 'nl-informal' => "\xE2\x80\xAANederlands (informeel)\xE2\x80\xAC", # Dutch (informal address ("je"))
 246+ 'nn' => "\xE2\x80\xAANorsk (nynorsk)\xE2\x80\xAC", # Norwegian (Nynorsk)
 247+ 'no' => "\xE2\x80\xAANorsk (bokmål)\xE2\x80\xAC", # Norwegian
 248+ 'nov' => 'Novial', # Novial
 249+ 'nrm' => 'Nouormand', # Norman
 250+ 'nso' => 'Sesotho sa Leboa', # Northern Sotho
 251+ 'nv' => 'Diné bizaad', # Navajo
 252+ 'ny' => 'Chi-Chewa', # Chichewa
 253+ 'oc' => 'Occitan', # Occitan
 254+ 'om' => 'Oromoo', # Oromo
 255+ 'or' => 'ଓଡ଼ିଆ', # Oriya
 256+ 'os' => 'Ирон', # Ossetic -- fixed per bug 29091
 257+ 'pa' => 'ਪੰਜਾਬੀ', # Eastern Punjabi (Gurmukhi script) (pan)
 258+ 'pag' => 'Pangasinan', # Pangasinan
 259+ 'pam' => 'Kapampangan', # Pampanga
 260+ 'pap' => 'Papiamentu', # Papiamentu
 261+ 'pcd' => 'Picard', # Picard
 262+ 'pdc' => 'Deitsch', # Pennsylvania German
 263+ 'pdt' => 'Plautdietsch', # Plautdietsch/Mennonite Low German
 264+ 'pfl' => 'Pälzisch', # Palatinate German
 265+ 'pi' => 'पािऴ', # Pali
 266+ 'pih' => 'Norfuk / Pitkern', # Norfuk/Pitcairn/Norfolk
 267+ 'pl' => 'Polski', # Polish
 268+ 'pms' => 'Piemontèis', # Piedmontese
 269+ 'pnb' => 'پنجابی', # Western Punjabi
 270+ 'pnt' => 'Ποντιακά', # Pontic/Pontic Greek
 271+ 'prg' => 'Prūsiskan', # Prussian
 272+ 'ps' => 'پښتو', # Pashto, Northern/Paktu/Pakhtu/Pakhtoo/Afghan/Pakhto/Pashtu/Pushto/Yusufzai Pashto
 273+ 'pt' => 'Português', # Portuguese
 274+ 'pt-br' => 'Português do Brasil', # Brazilian Portuguese
 275+ 'qu' => 'Runa Simi', # Southern Quechua
 276+ 'qug' => 'Runa shimi', # Kichwa/Northern Quechua (one of the codes it covers; temporarily used until Kichwa has its own)
 277+ 'rgn' => 'Rumagnôl', # Romagnol
 278+ 'rif' => 'Tarifit', # Tarifit
 279+ 'rm' => 'Rumantsch', # Raeto-Romance
 280+ 'rmy' => 'Romani', # Vlax Romany
 281+ 'rn' => 'Kirundi', # Rundi/Kirundi/Urundi
 282+ 'ro' => 'Română', # Romanian
 283+ 'roa-rup' => 'Armãneashce', # Aromanian (deprecated code, 'rup' exists in ISO 693-3)
 284+ 'roa-tara' => 'Tarandíne', # Tarantino
 285+ 'ru' => 'Русский', # Russian
 286+ 'rue' => 'Русиньскый', # Rusyn
 287+ 'rup' => 'Armãneashce', # Aromanian
 288+ 'ruq' => 'Vlăheşte', # Megleno-Romanian (multiple scripts - defaults to Latin)
 289+ 'ruq-cyrl' => 'Влахесте', # Megleno-Romanian (Cyrillic script)
 290+ # 'ruq-grek' => 'Βλαεστε', # Megleno-Romanian (Greek script)
 291+ 'ruq-latn' => 'Vlăheşte', # Megleno-Romanian (Latin script)
 292+ 'rw' => 'Kinyarwanda', # Kinyarwanda, should possibly be Kinyarwandi
 293+ 'sa' => 'संस्कृत', # Sanskrit
 294+ 'sah' => 'Саха тыла', # Sakha
 295+ 'sc' => 'Sardu', # Sardinian
 296+ 'scn' => 'Sicilianu', # Sicilian
 297+ 'sco' => 'Scots', # Scots
 298+ 'sd' => 'سنڌي', # Sindhi
 299+ 'sdc' => 'Sassaresu', # Sassarese
 300+ 'se' => 'Sámegiella', # Northern Sami
 301+ 'sei' => 'Cmique Itom', # Seri
 302+ 'sg' => 'Sängö', # Sango/Sangho
 303+ 'sgs' => 'Žemaitėška', # Samogitian
 304+ 'sh' => 'Srpskohrvatski / Српскохрватски', # Serbocroatian
 305+ 'shi' => 'Tašlḥiyt/ⵜⴰⵛⵍⵃⵉⵜ', # Tachelhit (multiple scripts - defaults to Latin)
 306+ 'shi-tfng' => 'ⵜⴰⵛⵍⵃⵉⵜ', # Tachelhit (Tifinagh script)
 307+ 'shi-latn' => 'Tašlḥiyt', # Tachelhit (Latin script)
 308+ 'si' => 'සිංහල', # Sinhalese
 309+ 'simple' => 'Simple English', # Simple English
 310+ 'sk' => 'Slovenčina', # Slovak
 311+ 'sl' => 'Slovenščina', # Slovenian
 312+ 'sli' => 'Schläsch', # Lower Selisian
 313+ 'sm' => 'Gagana Samoa', # Samoan
 314+ 'sma' => 'Åarjelsaemien', # Southern Sami
 315+ 'sn' => 'chiShona', # Shona
 316+ 'so' => 'Soomaaliga', # Somali
 317+ 'sq' => 'Shqip', # Albanian
 318+ 'sr' => 'Српски / Srpski', # Serbian (multiple scripts - defaults to Cyrillic)
 319+ 'sr-ec' => "\xE2\x80\xAAСрпски (ћирилица)\xE2\x80\xAC", # Serbian Cyrillic ekavian
 320+ 'sr-el' => "\xE2\x80\xAASrpski (latinica)\xE2\x80\xAC", # Serbian Latin ekavian
 321+ 'srn' => 'Sranantongo', # Sranan Tongo
 322+ 'ss' => 'SiSwati', # Swati
 323+ 'st' => 'Sesotho', # Southern Sotho
 324+ 'stq' => 'Seeltersk', # Saterland Frisian
 325+ 'su' => 'Basa Sunda', # Sundanese
 326+ 'sv' => 'Svenska', # Swedish
 327+ 'sw' => 'Kiswahili', # Swahili
 328+ 'szl' => 'Ślůnski', # Silesian
 329+ 'ta' => 'தமிழ்', # Tamil
 330+ 'tcy' => 'ತುಳು', # Tulu
 331+ 'te' => 'తెలుగు', # Telugu
 332+ 'tet' => 'Tetun', # Tetun
 333+ 'tg' => 'Тоҷикӣ', # Tajiki (falls back to tg-cyrl)
 334+ 'tg-cyrl' => 'Тоҷикӣ', # Tajiki (Cyrllic script) (default)
 335+ 'tg-latn' => 'tojikī', # Tajiki (Latin script)
 336+ 'th' => 'ไทย', # Thai
 337+ 'ti' => 'ትግርኛ', # Tigrinya
 338+ 'tk' => 'Türkmençe', # Turkmen
 339+ 'tl' => 'Tagalog', # Tagalog
 340+ 'tly' => 'толышә зывон', # Talysh
 341+ 'tn' => 'Setswana', # Setswana
 342+ 'to' => 'lea faka-Tonga', # Tonga (Tonga Islands)
 343+ 'tokipona' => 'Toki Pona', # Toki Pona
 344+ 'tpi' => 'Tok Pisin', # Tok Pisin
 345+ 'tr' => 'Türkçe', # Turkish
 346+ 'ts' => 'Xitsonga', # Tsonga
 347+ 'tt' => 'Татарча/Tatarça', # Tatar (multiple scripts - defaults to Cyrillic)
 348+ 'tt-cyrl' => 'Татарча', # Tatar (Cyrillic script) (default)
 349+ 'tt-latn' => 'Tatarça', # Tatar (Latin script)
 350+ 'tum' => 'chiTumbuka', # Tumbuka
 351+ 'tw' => 'Twi', # Twi, (FIXME!)
 352+ 'ty' => 'Reo Mā`ohi', # Tahitian
 353+ 'tyv' => 'Тыва дыл', # Tyvan
 354+ 'udm' => 'Удмурт', # Udmurt
 355+ 'ug' => 'ئۇيغۇرچە / Uyghurche‎', # Uyghur (multiple scripts - defaults to Arabic)
 356+ 'ug-arab' => 'ئۇيغۇرچە', # Uyghur (Arabic script) (default)
 357+ 'ug-latn' => 'Uyghurche‎', # Uyghur (Latin script)
 358+ 'uk' => 'Українська', # Ukrainian
 359+ 'ur' => 'اردو', # Urdu
 360+ 'uz' => 'O\'zbek', # Uzbek
 361+ 've' => 'Tshivenda', # Venda
 362+ 'vec' => 'Vèneto', # Venetian
 363+ 'vep' => 'Vepsan kel\'', # Veps
 364+ 'vi' => 'Tiếng Việt', # Vietnamese
 365+ 'vls' => 'West-Vlams', # West Flemish
 366+ 'vmf' => 'Mainfränkisch', # Upper Franconian, Main-Franconian
 367+ 'vo' => 'Volapük', # Volapük
 368+ 'vot' => 'Vaďďa', # Vod/Votian
 369+ 'vro' => 'Võro', # Võro
 370+ 'wa' => 'Walon', # Walloon
 371+ 'war' => 'Winaray', # Waray-Waray
 372+ 'wo' => 'Wolof', # Wolof
 373+ 'wuu' => '吴语', # Wu Chinese
 374+ 'xal' => 'Хальмг', # Kalmyk-Oirat (Kalmuk, Kalmuck, Kalmack, Qalmaq, Kalmytskii Jazyk, Khal:mag, Oirat, Volga Oirat, European Oirat, Western Mongolian)
 375+ 'xh' => 'isiXhosa', # Xhosan
 376+ 'xmf' => 'მარგალური', # Mingrelian
 377+ 'yi' => 'ייִדיש', # Yiddish
 378+ 'yo' => 'Yorùbá', # Yoruba
 379+ 'yue' => '粵語', # Cantonese -- (bug 8217) yue instead of zh-yue, http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=y
 380+ 'za' => 'Vahcuengh', # Zhuang
 381+ 'zea' => 'Zeêuws', # Zeeuws/Zeaws
 382+ 'zh' => '中文', # (Zhōng Wén) - Chinese
 383+ 'zh-classical' => '文言', # Classical Chinese/Literary Chinese -- (see bug 8217)
 384+ 'zh-cn' => "\xE2\x80\xAA中文(中国大陆)\xE2\x80\xAC", # Chinese (PRC)
 385+ 'zh-hans' => "\xE2\x80\xAA中文(简体)\xE2\x80\xAC", # Mandarin Chinese (Simplified Chinese script) (cmn-hans)
 386+ 'zh-hant' => "\xE2\x80\xAA中文(繁體)\xE2\x80\xAC", # Mandarin Chinese (Traditional Chinese script) (cmn-hant)
 387+ 'zh-hk' => "\xE2\x80\xAA中文(香港)\xE2\x80\xAC", # Chinese (Hong Kong)
 388+ 'zh-min-nan' => 'Bân-lâm-gú', # Min-nan -- (see bug 8217)
 389+ 'zh-mo' => "\xE2\x80\xAA中文(澳門)\xE2\x80\xAC", # Chinese (Macau)
 390+ 'zh-my' => "\xE2\x80\xAA中文(马来西亚)\xE2\x80\xAC", # Chinese (Malaysia)
 391+ 'zh-sg' => "\xE2\x80\xAA中文(新加坡)\xE2\x80\xAC", # Chinese (Singapore)
 392+ 'zh-tw' => "\xE2\x80\xAA中文(台灣)\xE2\x80\xAC", # Chinese (Taiwan)
 393+ 'zh-yue' => '粵語', # Cantonese -- (see bug 8217)
 394+ 'zu' => 'isiZulu' # Zulu
 395+);
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/Names.php
___________________________________________________________________
Added: svn:eol-style
1396 + native
Added: svn:keywords
2397 + Author Date Id Revision
Index: trunk/tools/ToolserverI18N/language/mw-classes/LanguageSr_el.php
@@ -0,0 +1,31 @@
 2+<?php
 3+
 4+/**
 5+ * Serbian (latin script)
 6+ *
 7+ * @ingroup Language
 8+ */
 9+class LanguageSr_el extends Language {
 10+
 11+ /**
 12+ * @param $count int
 13+ * @param $forms array
 14+ * @return string
 15+ */
 16+ function convertPlural( $count, $forms ) {
 17+ if ( !count( $forms ) ) { return ''; }
 18+ $forms = $this->preConvertPlural( $forms, 3 );
 19+
 20+ if ( $count > 10 && floor( ( $count % 100 ) / 10 ) == 1 ) {
 21+ return $forms[2];
 22+ } else {
 23+ switch ( $count % 10 ) {
 24+ case 1: return $forms[0];
 25+ case 2:
 26+ case 3:
 27+ case 4: return $forms[1];
 28+ default: return $forms[2];
 29+ }
 30+ }
 31+ }
 32+}
Property changes on: trunk/tools/ToolserverI18N/language/mw-classes/LanguageSr_el.php
___________________________________________________________________
Added: svn:eol-style
133 + native
Added: svn:keywords
234 + Author Date Id Revision

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r91439Add PLURAL-supportjan06:08, 5 July 2011
r92342Split MessagesKs into ks-arab and ks-deva, as Kashmiri is written in two scri...robin23:28, 15 July 2011
r92352Array indexes start from zeronikerabbit11:40, 16 July 2011
r94068* (bug 28159) Change interwiki name of language kbd to Адыгэбзэreedy17:34, 8 August 2011
r94690Add new language Chimborazo Highland Quichua (qug).siebrand21:29, 16 August 2011
r94831Follow-up r94690: correct language name for 'qug' to Kichwa. Kichwa or Northe...robin22:35, 17 August 2011
r96295* Split MessagesGot file into Latin and Gothic script files; add usable messa...robin18:14, 5 September 2011
r96296Partially revert/fix r96295: only use Gothic script per Siebrandrobin18:37, 5 September 2011
r96712Conversion script between Tifinagh and Latin for the Tachelhit language...robin04:09, 10 September 2011
r98884Fix language name for 'jam'robin18:59, 4 October 2011
r99074Fixes for r84057 LanguageTr uc/lc:...tstarling02:31, 6 October 2011
r99290Revert r84057, r84080, part of r99074: lc() and uc() custom handling for Turk...brion00:30, 8 October 2011
r99809Update documentation, returnsreedy21:19, 14 October 2011
r100021Fix native name of Ligurian: http://translatewiki.net/wiki/Thread:Support/Wro......raymond10:29, 17 October 2011
r102460Add name for code tly: Talysh ( http://en.wikipedia.org/wiki/Talysh_language )....platonides23:01, 8 November 2011
r102464Delete LanguageSr_el.deps.php. LanguageSr_ec.php doesn't...platonides23:23, 8 November 2011
r102465Remove Names.php and some other language files...platonides23:32, 8 November 2011

Status & tagging log