Tarkistaa Yaml-tiedostot
Yaml-tiedostot ovat kolmessa hakemistossa:
- test/src/dict-gt-yamls (sanakirja-ortografialle)
- test/src/gt-norm-yamls (viralliselle ortografialle)
- test/src/gt-desc-yamls (deskriptiiviselle analyysiohjelmalle, ei vielä käytössä)
Tässä vaiheessa käytetään ainoastaan dict-gt-yamls.
Tehtäviä
Yaml-tiedostojen laatiminen
Jokaiselle jatkoleksikolle pitää olla oma yaml-tiedosto
Sisällön tarkistaminen
On erittäin tärkeä, että yaml-tiedostoihin voi luottaa. Ne pitää siis tarkistaa.
Tehokas tapa tarkistaa on ajaa "make check" ja katsoa FAIL-rivit. Monesti fst
Kuuluvatko paradigmat kyseiseen yaml-tiedostoon?
Jokaiselle jatkoleksikolle pitää olla oma yaml-tiedosto. Kyseessä yaml-tiedostossa
cat N-lex_kissa_dict-gt-norm.gen.yaml|grep Ess|cut -d"+" -f1|tr -d ' '|sed 's/^/^/'|sed 's/$/:/' > lista grep -f lista ../../../src/fst/stems/nouns.lexc|grep -v KISSA
Ensimmäinen komento poimii kaikki perusmuodot, laittaa symboolit ^ ja : eteen ja taakse, ja
Dublettien poisto
Ei haluta samasta sanasta kahta paradigmaa. Dubletit löytyvät esim näillä komennolla:
cat test/src/dict-gt-yamls/*l|grep '+Sg+Nom'|sort|uniq -d cat test/src/dict-gt-yamls/*l|grep '+Ess'|sort|uniq -d
Näiten komentojan vastaus pitää olla nolla ("ei dubletteja"). Dublettien pitää etsiä,
- jos ne eivät ole identtisiä, niin tarkistetaan kumpi on oikein, korjaa, ja säilyttää
- jos ne ovat identtisia, niin poistetaan se paradigma, joka on väärässä tiedostossa)
grep immeel test/src/gt-norm-yamls/*
Silloin ilmestyy kaksi paradigmaa. Tarkista, että ne ovat identtisiä, ja poista
Leksikon parantaminen yamlin avulla
Idea on seuraava:
Jos perussana, esim. äigi, menee läpi yamlista, niin kaikki leksikon yhdyssanat, joiden
Kerää kaikki yaml-tiedoston sanat
grep Ess test/src/dict-gt-yamls/N-lex_aigi_dict-gt-norm.gen.yaml |cut -d"+" -f1|tr -d ' '|sed 's/$/:/'|sed 's/^/^/' > basewords grep -f basewords src/fst/stems/nouns.lexc |grep -v AIGI grep -f basewords src/fst/stems/nouns.lexc |cut -d " " -f1|sort|see
Ensimmäinen komento kerää kaikki sanat. Toinen tarkistaa, että kaikki kuuluvat samaan leksikkoon, ja kolmas antaa jokaisen sanan vartalon.
Kerää kaikki sanat, joilla on yaml-tiedoston sanat viimeisenä osana
grep Ess test/src/dict-gt-yamls/N-lex_aigi_dict-gt-norm.gen.yaml |cut -d"+" -f1|tr -d ' '|sed 's/$/:/' > allwords grep -f allwords src/fst/stems/nouns.lexc |grep -v AIGI grep -f allwords src/fst/stems/nouns.lexc |cut -d " " -f1|rev|sort|rev|see
Ensimmäinen komento kerää kaikki yaml-tiedoston sanat, mutta tällä kertaa ilman ^-merkkiä.
Korjaa mahdolliset virheet
Jos joku vartalo poikkeaa yaml-tiedoston vartalosta, sen on korjattava,
Muista kääntää (kirjoittamalla "make") ennen sisääntsekkausta, varmistakseesi, ettei mitään
Seuraava yaml-tiedosto
Samat komennot toimivat myös seuraavalle yaml-tiedostolle, kun vaan muistaa laittaa