[ LUGOS-SLO ] 1024. sredin seminar, 16. maj 2001 (fwd)

Tomaz Erjavec Tomaz.Erjavec at ijs.si
Fri May 18 13:48:55 CEST 2001


Roman Maurer writes:
 > Primo¾ Peterlin pi¹e:
 > > Ja, res je. Do tega modula 10 pride seveda samo pri jezikih, ki pregibajo
 > > ¹tevnike (slovanski in baltski). Bom povedal natanèneje.
 > 
 > Po¹iljam del datoteke kdelibs/kdecore/klocale.cpp, ki na¹teva pogoje
 > za razliène mno¾inske oblike.  Mi jih imamo najveè, a jeziki, ki jih
 > omenja¹, imajo tudi zapletena pravila.

Smo pac naj, ceprav po kompliciranosti.

 > Dvojino pa oèitno pozna tudi "Gaeilge" (kako se reèe po slovensko?).

Stara ir¹èina? Gal¹èina verjetno ni?? V anglescini je Gaelic.  
Je pa hecno, da so napisali Gaeilge, kar je ime jezika v njem samem;
to si deli edino se z anglescino - je takoj jasno, zakaj Irci vodijo v
lokalizaciji...
Jezik ima tudi dobro stran: Gaeilge ar an Ghréasán z dosti foghlam na
Gaeilge ar an Idirghréasán.

Pozdrava,
Tomaz


 > -- 
 > 	Pozdrav,
 > 	  Roman
 > 
 >  - - - -
 > 
 >     switch ( d->plural_form ) {
 >     case 0: // NoPlural
 >         EXPECT_LENGTH( 1 );
 >         return put_n_in( forms[0], n);
 >         break;
 >     case 1: // TwoForms
 >         EXPECT_LENGTH( 2 );
 >         if ( n == 1 )
 >             return put_n_in( forms[0], n);
 >         else
 >             return put_n_in( forms[1], n);
 >         break;
 >     case 2: // French
 >         EXPECT_LENGTH( 2 );
 >         if ( n == 1 || n == 0 )
 >             return put_n_in( forms[0], n);
 >         else
 >             return put_n_in( forms[1], n);
 >         break;
 >     case 3: // Gaeilge
 >         EXPECT_LENGTH( 3 );
 >         if ( n == 1 )
 >             return put_n_in( forms[0], n);
 >         else if ( n == 2 )
 >             return put_n_in( forms[1], n);
 >         else
 >             return put_n_in( forms[2], n);
 >         break;
 >     case 4: // Russian, corrected by mok
 >         EXPECT_LENGTH( 3 );
 >         if ( n%10 == 1  &&  n%100 != 11)
 >             return put_n_in( forms[0], n); // odin fail
 >         else if (( n%10 >= 2 && n%10 <=4 ) && (n%100<10 || n%100>20))
 >             return put_n_in( forms[1], n); // dva faila
 >         else
 >             return put_n_in( forms[2], n); // desyat' failov
 >         break;
 >     case 5: // Polish
 >         EXPECT_LENGTH( 3 );
 >         if ( n == 1 )
 >             return put_n_in( forms[0], n);
 >         else if ( n%10 >= 2 && n%10 <=4 && (n%100<10 || n%100>=20) )
 >             return put_n_in( forms[1], n);
 >         else
 >             return put_n_in( forms[2], n);
 >         break;
 >     case 6: // Slovenian
 >         EXPECT_LENGTH( 4 );
 >         if ( n%100 == 1 )
 >             return put_n_in( forms[1], n); // ena datoteka
 >         else if ( n%100 == 2 )
 >             return put_n_in( forms[2], n); // dve datoteki
 >         else if ( n%100 == 3 || n%100 == 4 )
 >             return put_n_in( forms[3], n); // tri datoteke
 >         else
 >             return put_n_in( forms[0], n); // sto datotek
 >         break;
 >     case 7: // Lithuanian
 >         EXPECT_LENGTH( 3 );
 >         if ( n%10 == 0 || (n%100>=11 && n%100<=19) )
 >             return put_n_in( forms[2], n);
 >         else if ( n%10 == 1 )
 >             return put_n_in( forms[0], n);
 >         else
 >             return put_n_in( forms[1], n);
 >         break;
 >     case 8: // Czech
 >         EXPECT_LENGTH( 3 );
 >         if ( n%100 == 1 )
 >             return put_n_in( forms[0], n);
 >         else if (( n%100 >= 2 ) && ( n%100 <= 4 ))
 >             return put_n_in( forms[1], n);
 >         else
 >             return put_n_in( forms[2], n);
 >         break;
 >     }
 > 



More information about the lugos-slo mailing list