![Tom Morris](/assets/img/avatar_default.png)
* Update jquery.i18n to 1.07 and add missing rule parser Fixes #2700 Adds missing CLDRPluralRuleParser.js so that plurals are supported. Updates all files to jquery.i18n 1.07 Includes a bunch of specialty language support, but only Finnish and Russian are loaded as examples. * Add some missing translations, including plurals Fix some cases of Javascript string concatenation and plural conditionalization to demonstrate that plurals work in both English and French now. NOTE: Corresponding updates need to be made to all the other language files since some keys were renamed or eliminated.
76 lines
1.9 KiB
JavaScript
76 lines
1.9 KiB
JavaScript
/**
|
||
* Ossetian (Ирон) language functions
|
||
*
|
||
* @author Santhosh Thottingal
|
||
*/
|
||
|
||
( function ( $ ) {
|
||
'use strict';
|
||
|
||
$.i18n.languages.os = $.extend( {}, $.i18n.languages[ 'default' ], {
|
||
convertGrammar: function ( word, form ) {
|
||
var endAllative, jot, hyphen, ending;
|
||
|
||
// Ending for allative case
|
||
endAllative = 'мæ';
|
||
// Variable for 'j' beetwen vowels
|
||
jot = '';
|
||
// Variable for "-" for not Ossetic words
|
||
hyphen = '';
|
||
// Variable for ending
|
||
ending = '';
|
||
|
||
if ( word.match( /тæ$/i ) ) {
|
||
// Checking if the $word is in plural form
|
||
word = word.slice( 0, -1 );
|
||
endAllative = 'æм';
|
||
} else if ( word.match( /[аæеёиоыэюя]$/i ) ) {
|
||
// Works if word is in singular form.
|
||
// Checking if word ends on one of the vowels: е, ё, и, о, ы, э, ю,
|
||
// я.
|
||
jot = 'й';
|
||
} else if ( word.match( /у$/i ) ) {
|
||
// Checking if word ends on 'у'. 'У' can be either consonant 'W' or
|
||
// vowel 'U' in cyrillic Ossetic.
|
||
// Examples: {{grammar:genitive|аунеу}} = аунеуы,
|
||
// {{grammar:genitive|лæппу}} = лæппуйы.
|
||
if ( !word.slice( -2, -1 ).match( /[аæеёиоыэюя]$/i ) ) {
|
||
jot = 'й';
|
||
}
|
||
} else if ( !word.match( /[бвгджзйклмнопрстфхцчшщьъ]$/i ) ) {
|
||
hyphen = '-';
|
||
}
|
||
|
||
switch ( form ) {
|
||
case 'genitive':
|
||
ending = hyphen + jot + 'ы';
|
||
break;
|
||
case 'dative':
|
||
ending = hyphen + jot + 'æн';
|
||
break;
|
||
case 'allative':
|
||
ending = hyphen + endAllative;
|
||
break;
|
||
case 'ablative':
|
||
if ( jot === 'й' ) {
|
||
ending = hyphen + jot + 'æ';
|
||
} else {
|
||
ending = hyphen + jot + 'æй';
|
||
}
|
||
break;
|
||
case 'superessive':
|
||
ending = hyphen + jot + 'ыл';
|
||
break;
|
||
case 'equative':
|
||
ending = hyphen + jot + 'ау';
|
||
break;
|
||
case 'comitative':
|
||
ending = hyphen + 'имæ';
|
||
break;
|
||
}
|
||
|
||
return word + ending;
|
||
}
|
||
} );
|
||
}( jQuery ) );
|