[hunspell-fi-devel] Yhdyssanat ja CVS:n käyttöönotto

Harri Pitkänen hatapitk at cc.jyu.fi
Thu Jan 26 21:53:55 EET 2006


Kirjoitin viime viikolla, että yritän saada yhdyssanojen tunnistuksen 
toimimaan. Kokeilin asiaa, ja lopputulos oli se, että toistaiseksi 
Hunspellissä on bugi tai bugeja, jotka estävät tämän kokonaan. Ongelma on 
siinä, että jos yhdyssanojen tunnistuksen ottaa käyttöön ja sitten kutsuu 
Hunspellin morph-funktiota sellaisella yhdyssanalla, jonka jälkiosa on 
taivutettu, Hunspell kaatuu. Tämä kyllä toimisi spell-funtiolla, mutta 
sitähän me emme voi toistaiseksi käyttää. Bugin korjaaminen kävi tietysti 
mielessä, mutta sitä ei oikein voi tehdä ymmärtämättä sitä osaa koodista, 
jossa se tapahtuu. Koska vielä ei ole varmaan, kannattaako jatkaa Hunspellin 
kanssa vai siirtyä toisenlaiseen toteutukseen, en viitsi tässä vaiheessa itse 
ryhtyä opiskelemaan tuota kyseistä koodia joka ei ole ihan selkeimmästä 
päästä: affixmgr.cxx, jossa bugi tapahtuu, on noin 4000 riviä pitkä tiedosto, 
ja bugi itsessään on 400 rivin mittaisessa funktiossa joka on ripoteltu 
täyteen unkarin kieleen liittyvää erityiskoodia. Kirjoitin kuitenkin asiasta 
Hunspellin kehittäjien postituslistalle, ehkäpä bugi korjataan seuraavaan 
versioon. Tässä on voinut käydä niin, että lisättäessä uusia ominaisuuksia 
OpenOfficea varten tuo morfologisen analyysin osuus Hunspellistä on jäänyt 
päivittämättä, koska sitä ei OpenOfficessa tarvita.

Koska yhdyssanojen kohdalla ei ollut mahdollisuutta edetä järkevästi, siirryin 
jälleen käsittelemään taivutusluokitusta ja sanojen johtamista. Jo ennen 
joulua olin ryhtynyt siirtämään taivutusluokitusta tietokantaan, mutta 
käytännössä tietokannan editoiminen osoittautui turhan työlääksi tavallisen 
tekstieditorin käyttöön verrattuna. Kehittelin sitten kokonaan uuden 
tiedostoformaatin, johon kaikki taivutusluokitukseen tarvittavat tiedot 
saadaan tallennettua. Tulos on jo paljon parempi, varsinkin kun näyttää 
siltä, että samaan tiedostoon saadaan jatkossa kirjattua myös 
taivutusluokkakohtaiset johtimet paljon joustavammin kuin entisiin 
luokkataulukoihin.

Uuden mallin mukaiset "affiksitiedostot" ovat jatkossa CVS:ssä, ja pidän niitä 
siellä ajan tasalla jolloin asiasta kiinnostuneiden on helpompi seurata 
tilanteen kehittymistä esimerkiksi selaimella osoitteesta 
http://cvs.sourceforge.net/viewcvs.py/hunspell-fi/
En paketoi niitä mihinkään asennuspaketteihin ennen kuin ne pystyvät kokonaan 
korvaamaan nykyisin käytössä olevan käsin kirjoitetun affiksitiedoston ja sen 
käsittelyyn tarkoitetut ohjelmat. Tämä tulee olemaan luultavasti noin 
kuukauden mittainen projekti, mutta ehdottomasti vaivan arvoinen.

Harri



More information about the devel mailing list