LoginRegistration
MyLivePage Inc
 

MyLivePage corporation wiki

Add to Favorites Send us an e-mail
Visitors
svetiiik20 Романова
12 hours ago 11.03.2010 16:36:43
ru Администратор
13 hours ago 11.03.2010 15:50:58
evgeny Евгений Игумнов
13 hours ago 11.03.2010 15:20:36
edarjalla Дарья
13 hours ago 11.03.2010 15:14:50
slavok69
15 hours ago 11.03.2010 13:29:08
Calendar
<
March 2010
>
MTWTFSS
1234567
891011121314
15161718192021
22232425262728
293031
Subscription
E-mail: 
Top commentators
sawoy Александр Савчук
Comments: 279
alexh Александр
Comments: 83
st2000 Сергей Косов
Comments: 49
evgeny Евгений Игумнов
Comments: 49
ru Администратор
Comments: 45
Back to homeMyLivePage Inc / Pages / General / Информация для переводчиков

Информация для переводчиков

На данный момент добавлена возможность для перевода слова в нескольких формах.

Например, для слова "запись" в русском языке есть 3 формы:

  • 1 запись
  • 2 записи
  • 5 записей

В других языках количество форм другое. Из языков, которые присутствуют в нашей системе на данный момент, максимальное кол-во форм имеет арабский язык - 6 форм.

Соответственно для каждого слова, который мы желаем показать в правильной форме мы создаем 6 ключей типа:

  • record_form_0
  • record_form_1
  • record_form_2
  • record_form_3
  • record_form_4
  • record_form_5

Правила образования различны для разных языков и зависят от n (числа описываемых объектов):

case 'ar':      // arabic +
  // nplurals=6
  $s = '_form_'.(($n==0) ? '0' : ($n==1) ? 1 : ($n==2) ? 2 : (($n % 100 >= 3) && ($n % 100 <= 10)) ? 3 : (($n % 100 >= 11) && ($n % 100 <= 99)) ? 4 : 5);
  return $lang[ $key.$s ];
break;

case 'cz':      // czech +
  // nplurals=3
  $s = '_form_'.(($n==1) ? '0' : ($n>=2 && $n<=4) ? 1 : 2);
  return $lang[ $key.$s ];
break;

case 'de': // german +
case 'bg': // Bulgarian +
case 'gr': // greek +
case 'en': // english +
case 'es': // espanol +
case 'ee': // estonian +
case 'il': // hebrew +
case 'it': // italian +
case 'mn': // mongolian
case 'nl': // dutch +
case 'sq': // albainian +
case 'my': // malay
  // nplurals=2;
  $s = '_form_'.( ($n != 1) ? '0' : 1 );
  return $lang[ $key.$s ];
break;

case 'pl': // polskiy +
  // nplurals=3
  $s = '_form_'.( ($n==1) ? '0' : (($n%10>=2) && ($n%10<=4) && ($n%100<10 || $n%100>=20)) ? 1 : 2);
  return $lang[ $key.$s ];
break;

case 'ru': // russian +
  // nplurals=3
  $s = '_form_'.( (($n%10==1) && ($n%100!=11)) ? '0' : (( ($n%10>=2) && ($n%10<=4) && ($n%100<10 || $n%100>=20)) ? 1 : 2) );
  return $lang[ $key.$s ];
break;

case 'sk': //    Slovak +
  // nplurals=3
  $s = '_form_'.( ($n==1) ? 1 : ($n>=2 && $n<=4) ? 2 : '0' );
  return $lang[ $key.$s ];
break;

case 'fa': // farsi +
case 'ja': // japan +
case 'tr': // turkish +
case 'vn': // Vietnamese +
case 'cn': // Chinese +
case 'tw': // Tradional Chinese ? +
case 'kz': // Kazakh +
  // nplurals=1
  $s = '_form_0';
  return $lang[ $key.$s ];
break;

case 'ua': // Ukrainian +
  // nplurals=3
  $s = '_form_'.( ($n%10==1 && $n%100!=11) ? '0' : ($n%10>=2 && $n%10<=4 && ($n%100<10 || $n%100>=20)) ? 1 : 2 );
  return $lang[ $key.$s ];
break;

case 'lt': // Lithuanian
  // nplurals=3
  $s = '_form_'.( ($n%10==1 && $n%100!=11) ? '0' : ($n%10>=2 && ($n%100<10 || $n%100>=20)) ? 1 : 2 );
  return $lang[ $key.$s ];
break;

case 'fr': // french +
  // nplurals=2
  $s = '_form_'.( $n > 1 ? '0' : 1 );
  return $lang[ $key.$s ];
break;


image Comments: 0 Views: 653 [History of changes] Size:3212 byte
Last changes are made by: sawoy Александр Савчук 378 days ago 26.02.2009 12:46:57
Send comment

Enter the code shown on the image 
Your name 
E-mail 
(visible only to owner of site)
WWW 

Subject

In the text you can use Wiki or HTML tags.



Who is active on the site?
Anonymous: 6, Registered: 0 (?)
Abuse | © Kolobok smiles, Aiwan