[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