[Laatu] Freecivin suuri haaste

Sini Ruohomaa ruohomaa+gnomefi at cc.helsinki.fi
Mon Heinä 31 17:02:45 EEST 2006


On Sat, 2006-07-29 at 15:22 +0200, Mika Laari wrote:
> Sini Ruohomaa kirjoitti:
> Tietokantaan pitäisi lisäksi 
> syöttää kaikki mahdolliset sijamuodot, joita ei käytännössä kai kovin 
> montaa tarvita: nominatiivi, genetiivi, partitiivi, joitain 
> paikallissijoja ainakin, mutta instruktiivia ja komitatiivia tuskin 
> tarvitaan. Toinen tapa olisi taivuttaa sanat ohjelmallisesti...

Ohjelmallinen taivutus, uff da... Mietin sitä, mahtaisivatko nämä
taivutusmuodot olla jotenkin erityisen erikoisia meille, akkusatiivia
ainakin luulisi tarvitsevan saksassakin mutta meille taas se on vähän
epämääräinen kahden ilmentymänsä takia. Ja saksassa on datiivi, mitä
meillä taas ei liene. Kaikkien saaminen taivutuksen pariin kuulostaa
siltä ettei se välttämättä koodilla lopulta parane. 

> > Production of %s is upgraded to %s in %s.
> > * (Temppeli, Kirkko, Helsinki) Rakenteilla oleva Temppeli korotettu
> > Kirkoksi Helsingissä.
> > -> "Tuotantoa uudistetaan: %s korvattu uudella tavoitteella %s
> > kaupungissa %s."
> 
> Rakenteilla oleva %{nominatiivi}s korotettiin %{translatiivi}s 
> %{inessiivi}s.
>
> Täytesanojen tietokanta olisi tällä järjestelyllä joka kielelle 
> erilainen. Se voisi olla yksinkertainen tekstitiedosto, jonka alussa 
> kerrotaan missä järjestyksessä sijamuodot kullakin rivillä esiintyvät:
> 
> nominatiivi inessiivi translatiivi genetiivi ...
> temppeli temppelissä temppeliksi temppelin ...
> kirkko kirkossa kirkoksi kirkon ...
> Helsinki Helsingissä Helsingiksi Helsingin ...
> jousiampujat jousiampujissa jousiampujiksi jousiampujien ...
> ...

Onko tämä ihan kuvaannollismielistä pseudosyntaksia, vai olisiko
gettextin kanssa mahdollista puljata semantiikkaa siihen että sanasta
saisi tavallaan alimuotoja kielen tarpeen mukaan - samaan tapaan kuin
monikkoja nykyään? 

Tässähän on kaksi tasoa; on se mitä voi Freecivin koodareilta odottaa
(mihin ei välttämättä kuulu mm. oma kieltenhallintajärjestelmä), ja se
mitä voisi yrittää tilata gettextin kehittäjiltä. Po-tiedostojen kautta
nämäkin käännetään, ja koko merkkijonojen irrottaminen ja takaisintyöntö
on ulkoistettu yleiseen tapaan gettextille. Freeciv-kehittäjät tietävät
lähinnä sen verran että osaavat laittaa (nbr == 1 ? "one file" : nbr + "
files) -häkkien sijaan oikeanlaisen gettext-pyynnön kansainväliselle
monikoinnille koodiin, ainakin useimmiten.

--Sini