Ordboka rett i terminalen

June 29th, 2009

For nynorsk-amatørar som meg, må ein slå opp ord i ordlboka ein gong iblant. Eg har tidligare nytta “Søk i elektroniske ordbøker” via sprakrad.no, men det var fram til unhammer tipsa meg om Ordbanken (blogginnlegg).

Ordbanken er eit kjekt lite program som ikkje berre gjev deg tilgang til ordboka i terminalen, men legg inn heile ordboka lokalt på maskina. Eg kunne f eks ha nytta BeautifulSoup til å skriva eit skript som spør nettsiden, men å ha dataene tilgjengeleg lokalt gjer at ting går mykje snøggare. Ei anna nemneverdig ting er at Ordbanken, inklusive båe nynorsk og bokmål ordliste, er lisensiert under gpl (v3+), så eg kan skriva mi eige vevteneste om eg så vil :)

Installasjon

Ordbanken er per idag berre tilgjengeleg som tarball. Det er ikkje så rart med tanke på at den første utgåvå kom første mai. Det overrasker meg ikkje om det dukkar opp pakkar i ulike distroar etter kvart. Dei som vil slå opp ord i terminalen lar seg vel ikkje skremme av velkjente kommandoar som make uansett :) Kjem det eit gui etterkvart blir det ei anna sak.

Installeringa er veldig enkel. Ettersom det ikkje er noko kode som skal kompilerast, er det heller ikkje noko configure-skript å køyre. Derimot blir ordlistene optimert ved å fjerna overflødige kommentarar etc, så ein må køyre make. make install sleng så programvaren inn i /usr/local (eller ei anna plass om ein nytta make install PREFIX=/home/brukar/foo).

Etter ein enkel og grei installasjon er me klare til å testa ut programmet.

I bruk

Å nytta ordbanken er ikkje værre enn å kalla kommandoen med ordet du måtte lura på. Idag er det ganske varmt her i Oslo, så la oss sjå kva ordbanken svarar på ordet ‘varm’:

egil@thor:~$ ordbanken varm
varm  varmare   adj  komp
varm  varme     adj  pos   fl
varm  varme     adj  pos   bu     eint
varm  varm      adj  pos   m/f    ub    eint
varm  varmt     adj  pos   nøyt  ub    eint
varm  varmaste  adj  sup   bu
varm  varmast   adj  sup   ub

Dykk får diverre ikkje sett fargekodane, men ettersom programmet stør html-utskrift i tillegg, kan eg jo leggja ved det òg1 :

varm varmare adj komp
varm varme adj pos fl
varm varme adj pos bu eint
varm varm adj pos m/f ub eint
varm varmt adj pos nøyt ub eint
varm varmaste adj sup bu
varm varmast adj sup ub

Som ein ser frå utskrifta, kjem alle bøyingane av ordet. Dette er kjekt for dei av oss som ikkje har brukt nok tid på den nettbaserte ordlista til å pugge dei grammatiske kodane, og er absolutt eit pluss.

Via UiO sitt nett, har eg òg tilgang til den proprietære vevtenesten ordnett. Prøvar eg den same spørjinga der, får eg føljande svar:

varm -t, -e2

Eg har ikkje utforska korleis dei gjeng opp mot kvarandre når det kjem til mengde ord osb, men på enkle oppslag er det kjekt at programmet ikkje sparar på blekket, men gjev meg alle formane rett ut, utan koding.

Det som derimot er eit sakn, er spørjingar med jokerteikn, slik at ein kan spørja om ord ein er usikker på. Båe den nettbaserte ordlista og ordnett stør slike spørjingar, men dei har begge mykje meir fartstid enn ordbanken. Eg trur derfor at ordbanken med tida vil få støtte for slike spørjingar med meir. Ein må heller ikkje gløyme at ordlistane er frie, så ein kan eksperimentera så mykje ein vil. Til døme kan ein skriva ut alle ord som startar med varm ved å nytta

cat /usr/local/share/ordbanken/fullform_nn.dat | grep ^varm

som gjev eit lass med ord frå varm til varmvatn.

Oppdatert 2009-08-06:

Som ein kan sjå frå innspela nedanfor, tok det ikkje lang tid før mi røyst var høyrd. Spørjingar med regex var på plass same dagen som eg la ut innlegget. Med litt hjelp frå meg fekk me på plass jokerteikn på same måte som den nettbaserte ordlista med % for 0 eller fleire vilkårlege teikn, og _ for eitt. Eg har nytta desse kjekke funksjonane ein stund ettersom dei har vore i utviklarutgåva. Etter å ha kost seg der nokre dagar, er dei nå tilgjengelege i versjon 2009-08-05 som vart klar igår. Sjå lenka for døme.

Den nettbaserte ordlista har dessuten synonym og eksemplar, men det er ikkje sikkert dei kan distribuerast under den same frie lisensen som ordlistene.

Nynorskordboka

TILSLAGSORD ARTIKKEL FRÅ NYNORSKORDBOKA (offisiell rettskriving)
varm
varm a1 (norr varmr)
1 som har høg temperatur; som gjev varme; *heit (1) v-t og kaldt vatn / rykande v- suppe / servere litt v-t til kvelds / omnen var gloande v- / maskinen gjekk (seg) v- / v-t i veret / reise til v-e land reise til sudlanda / vere sveitt og v- / ein v- genser / overf: v-e fargar fargar som verkar varme / rekke å bli v- i trøya rekke å bli kjend med tilhøva / halde ei sak v- halde interessa levande for ei sak / smi medan jernet er v-t sjå smi 1
2 intens, sterk, *heit (2) gå v-t føre seg / fienden fekk ei v- mottaking
3 hjarteleg, kjenslefylt ein v- smil / v-e auge, ord / bli v- om hjartet / ei v- røyst / ei v- kvinne varmhjarta, lidenskapeleg

I tillegg til rett fram spørjing, har programmet ulike flagg som klammeformer på/av, fargekodar på/av, og ein informativ eksempeltekst i tillegg til dei vanlege tinga som hjelpetekst over versjonsinformasjon. Det slår opp i nynorsklista som standard, men ein kan enkelt nytta bokmålsordboka ved å kalla programmet med -s nb. Dette blir fort keisamt i lengden, men då sett ein berre miljøvariabelen SPRAK_ORDBANKEN til nb, fortrinnsvis i rc-fila til skallet ditt.

Alt i alt er eg særs nøgd med ordbanken; det går mykje fortare å få fram eit terminalvindauge og køyre kommandoen enn å nytta dei nettbaserte tenestane, og ein får fram alle formane av orda utan noko strev. Innebygd støtte for jokertegn hadde vore kjekt, men det er ikkje værre enn å skriva ein regexp mot ordlista direkte. Når ein tenkar på kor ungt prosjektet er, kan ein ikkje få alt på ein gong heller. Då er det mykje betre med nokre funksjonar av gongen enn å venta til ein er nøgd nok til å sleppa versjon 1.0.

Eg har iallefall fått eit nytt flott verktøy som kjem til å gjera nynorskskrivinga mi endå enklare. :D

Oppdatert 2009-08-06:

Då eg skreiv dette innlegget, hadde eg ikkje trudd at ting ville skje så raskt. Karl Ove Hufthammer forten honnør for å ha implementert ønskja mine så fort. Sjølv om det var eg som la inn støtta for jokerteikn, var det han som gjorde grunnarbeidet. Mi kode skriv berre om utrykket til eit regulært utrykk, og det hadde ikkje gått om det ikkje hadde vore støtta i utgangspunktet. Han skal òg ha honnør for å lytta til brukarane og gjeva oss funksjonar han ikkje hadde tenkt å støtta. Ordbanken er særs kjekk for oss som ikkje skriv så godt nynorsk, og eg har nytta ho båe i dette innlegget og i andre prosjekt eg kjem attende til i nye innlegg seinare.

Vote:
  1. Den genererte html’en hadde ein bitteliten formalitetsfeil (ho mangla xmlns i html-tagen), men av di programmet er fritt, kunne eg enkelt laga ein triviell patch frå siste revisjon av koden og senda til utviklaren. Dette vart òg fiksa i v2009-08-05 []
  2. I tillegg til dei fem forrige og neste orda i lista, men det er ikkje interessant, og heller ikkje vanskeleg å implementera i ordbanken. []

12 Responses to “Ordboka rett i terminalen”

  1. links from Technoratia det sidan den gong. Notar Eg skreiv aldri um då eg var sjuk, trass i at eg var 5-6 døgn inne (utan so mykje som ein butikktur!) og vart ganske gal av det. Det var noko gale med dokpro-ordboki, so eg skreiv «hev bert». Fann ut av det ved åinstallera ordbanken lokalt på maskini, so «bori» er korrekt for «bera». Middagsblogging er uinteressant blogging. Type «kva gjorde eg i dag», der «i dag» er ein … mindre spesiell dag

  2. Simon Hansen says:

    Kor kjekt. Dette skal få plass på bærbaren min. Det er så leit å ikkje ha tilgang på ordboka når eg er på teite stader utan nett. Men eg tviler på om eg kjem til å få like stor nytte av det på den stasjonære. Eg har jo Opera framme mest heile tida, medan terminalen er litt meir sjeldan å sjå.

  3. Eg hadde eigentlig ikkje tenkt å legga til støtte for jokerteikn, men sidan det er eit ønskje, skal eg prøva å få gjort det. Det vert trulig med syntaksen til regulære uttrykk. Det krev litt interne endringar sidan oppslaga då kan gje fleire enn eitt ord.

    Elles kan eg tipsa om at det er unødvendig å bruka grep manuelt til å finna alle orda som begynner med «varm». Berre skriv «ordbanken varm» og trykk tabulatortasten. Dette fungerer so lenge du har installert «bash completion» (som uansett er veldig kjekt å ha installert og aktivert!).

  4. Kan forresten nemna at eg òg har laga eit lite skript for oppslag i Nynorskordboka og Bokmålsordboka på nett. Då brukar eg rett og slett «sed» for å kutta ut alt anna enn tabellane, og Elinks til å gjera om HTML-en til tekst. Elinks er fin med det at han støttar både fargar (i nyaste versjon) og tekstbasert formatering av tabellar (i utviklingsversjonen òg med fine kantlinjer).

  5. Til orientering har eg no lagt til støtte for regulære uttrykk i utviklingsversjonen. Tenker det vil vera nyttig ved kryssordløysing, for eksempel.

    Her er nokre eksempel på bruk:

    Orda «hei», «heim» og «heit»:
    ordbanken -regulært-uttrykk ^hei[mt]?$

    Ord som startar på «dr» og sluttar på «ev»:
    ordbanken -r "^dr.*ev$"

    Ord som sluttar på «rama», men ikkje på «drama:
    ordbanken -r [^d]rama$

    Ord der første bokstav er «k», neste er «r»
    eller «u», tredje siste er «o» og siste er «d»:
    ./ordbanken -r ^k[ru]...o.d$

    Bokmålsord med minst 5 etterfølgjande vokalar
    ordbanken -snb -r [aeiouyæøå]{5}

  6. Egil says:

    At sakna mine skulle bli ordna same dagen som eg skreiv innlegget, hadde eg ikkje rekna med. Det var snøgt!
    Eg får skriva eit nytt innlegg når neste utgåve kjem. :)

  7. Kjekke greidor. Eg prata med unhammer sin mentor, Trond Trosterud, han var og prata på sumarlægeret til NMU nett. Fekk sjå det automatiske umsetjingi som unhammer jobbar med og såg m.a. på dette her. So godt at dei frie ordbøkene skunder seg frametter. Er viktugt å hava det fritt, då er det so mykje meir kult som gjeng an å gjera med det :-)

  8. Egil says:

    Av di self ping ikkje virkar, kan eg nemna at eg hev skreve om korleis ein får ordbanken i nettlesaren på http://bonarjee.in/2009/07/ordbanken-i-nettlesaren/

  9. Lenka di er totalt feil, Egil. Dette er korrekt URL: http://bonarjee.in/2009/07/ordbanken-i-nettlesaren/

    Dokpro-ordlista er nede no, so eg måtte leggja inn ordbanken lokalt. Eg er so lat at eg ikkje fekk gjort det fyrr.

  10. Egil says:

    Fiksa :) teit feil :/

  11. Ordbanken i nettlesaren…

    Forrige veka, skreiv eg om den framifrå ordlista Ordbanken, som gjev oss båe nynorsk og bokmål ordliste direkte i terminalen. Det er veldig kjekt, men kva med dei gongane ein ønskjer å nytta nettlesaren? I ein kommentar frå Simon kom det fram at det ku…

  12. [...] var noko gale med dokpro-ordboki, so eg skreiv «hev bert». Fann ut av det ved å installera ordbanken lokalt på maskini, so «bori» er korrekt for [...]

RSS feed for comments on this post. And trackBack URL.

Leave a Reply

Spam protection by WP Captcha-Free