Esperantilo Blogo en Esperanto pri projekto Esperantilo kaj komputila lingvistiko

21.11.2006

Literumado – ISpell, ASpell, MySpell, Hunspell

Filed under: programado — artur @ 19:37

La baza perkomputila korektado de tekstoj estas tiel nomata literumado (angle. Spellchecking, germane: Rechtschreibkorrektur). La funkciado estas simpla: ĉiu vorto de teksto estas komparita kun interna listo de eblaj (korektaj) vortoj. Sed en detalo tiu tasko ne estas tre facila pro:

  1. Kolekto de eblaj vortoj. Necesa vortprovizo.
  2. Efika kaj memorŝpara reprezento de ĉiuj ebloj.
  3. Efika kaj memorŝpare serĉado de vortoj.
  4. Komputado de sugestoj. Similaj sed korektaj vortoj.
  5. Konsidero de reguloj de vortfarado de koncerna lingvo

Kutimaj solvoj de tiuj problemoj:

  1. Oni kolektas vortojn de granda tekstaro. Aldonaj vortoj estas kolektitaj dum uzo de programo.
  2. Plej ofte oni uzas tiel nomatan: Finite state machine por reprezentado en la memoro.
  3. Komputado de sugestoj estas temporaba. Ekzistas kelkaj algoritmoj por komputi similecon de vortoj. Konata estas ekzemple: Distanco de Levenshtein.
  4. Reguloj de vortfarado dependas de lingvo.

Literumado estis preskaŭ unua funkcio de Esperantilo, kiun mi programis. Mi uzis la vortprovizon de revo kaj tekstaron de bertilow. Mi volis ne nur kolekti eblajn vortojn, sed ankaŭ havi informoj pri korekta morfologio de vortoj. Ĉar vortfarado en Esperanto ebligas grandegan vortprovizon, ŝajnis al mi, ke la nur programo, kiu regas esperantan vortfaradon, povas bone solvi tiun problemon. Alia kazo estis, ke por konataj liberaj programoj de literumado ne ekzistis ebleco bone kunlabori kun programlingvo Tcl, kiun mi uzas. Por Linukso tio ne estas problemo, ĉar ĉiu linuksa sistemo havas aspell aŭ ispell. Problemo estas vindozo.

Liberaj programoj por literumado

Ekzistas kelkaj liberaj programoj por literumado. Ili estas ankaŭ uzataj por Esperanto.

  • ISpell
  • GNU ASpell
  • MySpell: Uzata de OpenOffice (ĝis eldono 2), Thunderbird kaj Firefox
  • Hunspell: Uzata de OpenOffice (de eldono 2), formato konforma al MySpell.

La plej vastan kaj ĝisdatan kolekton de vortaroj por Myspell kaj Hunsplell oni trovas sur Vortaroj de OpenOffice.

Problemoj kun literumado ĉe Esperantilo

La propra literumado en Esperantilo havas avantaĝojn super aliaj programoj, ĉar ĝi respektas esperantan vortfaradon. La programo diferencas ankaŭ du tipojn de eblaj skriberaroj: unue evidenta eraro, due ebla vorto, sed ne konata. Esperantilo enhavas ankaŭ komfortan redaktilon por vortaro. La problemoj estas teknikaj, programo ne estas tre rapida, ĉar ĝi volas trovi ekzaktan vortfaradon de ĉiu vorto, due en Tcl ne estas eble rapide komputi sugestojn por erara vorto. Efikaj algoritmoj por tio estas tre komplikaj. La alia malavantaĝo estas, ke en Esperantilo oni ĝis nun ne povis korekti tekstojn en aliaj lingvoj.

Hunspell en Esperantilo

Post longa pripenso mi decidis elekti Hunspell por interna literumilo de Esperantilo. La programo estas libera konforme al Esperantilo. Ĝi povas uzi vortarojn de OpenOffice projekto, kiuj estas ankaŭ popularaj en Mozilla projekto. La ĉefa teknika problemo estas skribi bibliotekon por uzi Hunspell de Tcl. Post 2 tagoj de programado mi sukcesis uzi Hunspell kun Esperantilo. Nun restas kompili la hunspell kun Tcl sur vindozo. Mi nun ne volas rezigni pri ĝisnuna literumilo en Esperantilo. Sed Hunspell povus plibonigi la uzeblecon de programo. Due la uzanto povos uzi aliajn vortarojn de OpenOffice-Provizo.

Vortlisto por Esperanta lingvo

La esperantaj vortlistoj por literumiloj enhavas 2 dosierojn. Unu dosiero kun finaĵo „.aff“ enhavas teknikajn priskribojn kaj liston de sufiksoj. La dua doziero kun finaĵo „.dic“ enhavas liston de vortoj kun priskribo pri eblaj sufiksoj. Mi analizis la sufiksojn de nuntempa vortaro por Esperanto. Ŝajnas, ke per la novaj ebloj de Hunspell, kiu povas ankaŭ kunligi kelkajn finaĵojn unu post la alia, oni povus prilabori kolekton de sufiksoj, kiuj estus pli adekvata por Esperanto.

Keine Kommentare »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Du musst angemeldet sein, um einen Kommentar abzugeben.

Powered by WordPress