Úvod:
----

Toto je prvé verejné vydanie podpory slovenčiny pre kontrolu pravopisu aspell.
Je výsledkom môjho viac ako ročného úsilia o vytvorenie celkom slušnej databázy
pre aspell. Významná časť vznikla po mojom zapojení sa do revízie podpory
slovenčiny programu Ispell.

V tejto verzii je 675 741 slov, čo som považoval za dostatočné množstvo, aby
bolo možné urobiť prvé vydanie. Pokiaľ viem, slovník by nemal obsahovať
nesprávne slová, resp. nesprávne tvary slov, ale moja osobná skúsenosť 
s rôznymi slovníkmi (ak komerčnými) je taká, že nič nie je dokonalé a chyba sú
v každej ľudskej práci. Preto, ak nájdete chybu informujte ma o nej na
zdpo@mailbox.sk. Verím, že spoločným úsilím budeme môcť vytvoriť slovník, ktorý
sa bude približovať k dokonalosti.


Šírenie:
-------
ASpell-slovak je ABSOLÚTNE BEZ ZÁRUKY. Ide o voľne šíriteľný softvér a jeho
šírenie za istých podmienok je vítané; podrobnosti získate v súboroch COPYING,
Copyright alebo gnu.sk.html (slovenský preklad Všeobecnej zverejňovacej
licencie - GNU General Public Licence, od Juraja Kolesára).


Cieľ:
----
Dlhodobým cieľom pre aspell je vytvorenie dvoch základných slovníkov:
prvý, hlavný, by sa prísne pridržiaval Pravidiel slovesného pravopisu a druhý
by bol rozširujúci, ktorý by pokrýval často používané slová, ktoré nie sú
zahrnuté do Pravidiel. Upozorňujem, že Pravidlá slovanského pravopisu pokrývajú
je časť slovenčiny. 


Vlastnosti:
----------

Hlavným cieľom Aspellu je lepšie vyhľadávanie 'ponúknutých slov' pri kontrole
pravopisu. To znamená, že pokiaľ aspell nájde nesprávne slovo, tak by vám mal
ponúknuť to najvhodnejšie (správne) na čo najvyššom mieste v ponuke.

Aspell sa tiež snaží učiť z vašich chýb - zaznamenáva vaše preklepy a podľa
nich sa snaží potom v budúcnosti nájsť najvhodnejšie slovo pri chybe.

Pokiaľ je vytvorený osobný slovník (.aspell.slovak.pws) tento slovník sa
kontroluje pri chybe ako prvý.

Aspell umožňuje vytvoriť pravidlá, ktoré mu pomáhajú pri hľadaní spraávnych
slov. Je to užitočné zvlášť keď sa slová inak vyslovujú ako píšu. Žiaľ pri
príprave tohoto vydania som zistil, že táto funkcia mi spôsobuje pád Aspellu pri
slovenčine a preto je vypnutá. Problém sa mi nepodaril zatiaľ vyriešiť.

Z používateľského hľadiska sa mi oveľa lepšie pracuje (hlavne k KDE
aplikáciách) s aspellom ako s ispellom. Ale to je čisto subjektívny dojem.

Je to jediná kontrola pravopisu, ktorá mi funguje v programe LyX.

Pokiaľ viem, ako jediný umožňuje používať viac slovníkov pre jeden jazyk.
Pridanie ďalšieho slovníka je jednoduché. Vytvorte si svoj vlastný zoznam tak,
aby jedno slovo bolo na jednom riadku. Tento zoznam usporiadajte ('sort -u -f
<vas.zoznam> usporiadany.zoznam') a potom vygenerujete nový slovník pomocou
príkazu:
'aspell --lang=slovak create master ./slovak-moj-slovnik <usporiadany.zoznam'
Potom skopírujte 'slovak-moj-slovnik' do /usr/lib/aspell 
('cp ./slovak-moj-slovnik /usr/lib/aspell') a do súboru 
/usr/lib/aspell/slovak.multi pridajte riadok "add slovak-moj-slovnik"

Oproti Ispellu má Aspell hlavne tieto nevýhody:
- je viac náročnejší na pamäť
- nemá affix kompresiu a preto sú slovníky také veľké (aktuálny skompilovaný
  slovník má cez 17 Mb aj po kompresii je veľkosť veľmi veľká) a preto je aj
  pridávanie nových slov také pomalé (všetky tvary musia byť ručne vložené). Na
  druhú stranu je práve posledne spomenutá nevýhoda vlastne výhodou voči
  slovenskej podpore ispellu - affix kompresia je tak zložitá, že v istých
  prípadoch Ispell generuje vďaka affix kompresií nesprávne tvary slov.
- podľa niektorých reakcií je aspell pomalší ako Ispell (resp. je náročnejší na
  hardvér). V každom prípade ja som aspell začal používať na pentiu 90MHz so
  40M Ram (základná databáza asi 40 000 slov) a po upgrade na Duron 950MHz 256M 
  Ram som zaznamenal zrýchlenie iba pri generovaní (kompilácii slovníka), ale nie 
  pri samotnej kontrole. Takže teoreticky by nemal byť problém používať ASpell 
  aj na slabom hardvére.

TIP: Pokiaľ je aspell pomalý, skúste si vytvoriť svoj vlastný slovník (napr.
  tak, že zmeníte súbory z tohoto projektu), ktorý bude obsahovať iba vami
  používané slová. Zo skúsenosti viem, že človek málo kedy používa viac
  ako 20 000 slov v písomnom prejave a preto slovník o veľkosti 600 tisíc slov
  je pre vás zbytočný resp. ho môžete používať iba občas na kontrolu vášho
  zoznamu slov).

Ďalšie informácie (s angličtine) by ste mali mať v
/usr/share/doc/aspell-0.33.7.1/aspell/man-html/index.html


Inštalácia:
----------

Predpoklad:
Inštalačný skript je dosť jednoduchý a predpokladá, že máte nainštalovaný
program aspell v /usr (t.j. nie napr v /usr/local). Pokiaľ ste inštalovali
aspell z rpm archívu alebo priamo bol nainštalovaný pri inštalácií vašej
distribúcie, nemali by ste mať žiadne problémy. 

Rozbaľte archív aspell-slovak-1.0.tar.gz a spustite skript install

tar zxfv aspell-slovak-1.0.tar.gz
cd aspell-slovak-1.0
./install

V /usr/share/doc/aspell-slovak sa nachádza ukážkový konfiguračný súbor
sample.aspell.conf. Pokiaľ chcete skopírujte ho do svojho domovského priečinku
pod názvom ".aspell.conf". Pokiaľ chcete, aby bol platný pre celý váš operačný
systém, tak ho skopírujte do /etc pod názvom "aspell.conf". Aktuálne nastavenie
aspellu získate po zadaní hotoho príkazu 'aspell dump config'

ASpell-slovak bol testovaný na distribúcii Mandrake 8.0, 8.1, a 8.2
Na istých počítačových zostavách aspell mi pravidelne segfaultoval (sig11 alebo
segmentation fault). V takomto prípade skúste nainštalovať aspell a pspell z
nižších verzií vašej distribúcie. Tento postup mi pomohol v niektorých
prípadoch. Dovoľujem si však upozorniť, že ak sa často stretávate z varovaním o
'segmentation fault', tak na 95% máte nejaký hardvérový problém (bližšie
informácie sú napr. na http://www.BitWizard.nl/sig11/)



Používanie:
----------

V KDE spustite Ovládacie centrum (kliknutím ikonu, alebo príkazom 'kcontrol').
Choďte potom do Osobných nastavení (Osobné nastavenie) -> Kontrola pravopisu.
Ako klienta si zvoľte "Aspell" (Pokiaľ ho nemáte v ponuke, tak máte problém z
inštaláciou - buď Aspellu alebo KDE), kódovanie nastavte na "ISO 8859-2" a
slovník na "Štandardne - Slovenský [slovak]" prípadne "Neznámy [slova]".
Teraz máte nastavené, aby všetky aplikácie KDE používali štandardne ako
kontrolu pravopisu Aspell. Samozrejme , že väčšina aplikácii umožňuje, aby ste
pre ne použili iné nastavenie.

Ak chcete používať aspell v LyXe, tak do ~/.lyx/preferences (resp. lyxrc v
~/.lyx alebo v /usr/share/lyx/) dajte tieto riadky do sekcie "SPELLCHECKER
SECTION" (prirodzene, nezabudnite odstrániť staré nastavenia):
\spell_command "aspell"
\accept_compound true
\use_alt_language true
\alternate_language "slovak"
\use_escape_chars true
\escape_chars "áÁäÄčČďĎéÉěĚëËíÍľĽĺĹňŇóÓôÔöÖřŘšŕŔŠťŤúÚůŮüÜýÝžŽ"

Použitie Aspellu na konzole je jednoduché. Pokiaľ chcete interaktívnu kontrolu,
použite:
'aspell -d slovak -c kontrolovany.subor'

Pre neinteraktívnu kontrolu použite:
'aspell -d slovak -l <kontrolovany.subor >chybne.slova'

Pokiaľ máte  nastavený  ~/.aspell.conf na slovenčinu (slovak), tak prepínač
'-d slovak' nemusíte používať.

Pokiaľ máte záujem kontrolovať pravopis v html, php, sgml súboroch (prípadne aj
iných súboroch, ktoré 'riadiace príkazy' resp. 'tagy' dávajú do sekvencie <>,
tak použite pre súbor koncovku '.sgml'. Všetky slová umiestnené v <> budú potom
ignorované.


Chcete pomôcť?
-------------
"Slovník slovenského jazyka obsahuje asi 120 869 slov, Pravidlá slovenského
pravopisu asi 40 000 slov. Na to, aby sa človek dohovoril o najnevyhnutejších
veciach, stačí 500 slov. Výskumami sa zistilo, že telesne pracujúcemu človeku
stačí na dorozumenie oveľa menej slov."

"Pasívna slovná zásoba šesťročného dieťaťa je 2000-3000 slov, štrnásť ročný
žiak už pozná 20 000 slov a 24-ročný človek až 30 000 slov. Aktívne používajú
žiaci základnej školy 1 500-3 000 slov, dospelí ľudia až 10 000. Goethe použil
vo svojich dielach spolu asi 20 000 slov a Puškin 21 197 slov."

        - Jozef Mistrík, Slovenčina pre každého, 1967

Z vyššie uvedených výrokov je zrejmé, že pre jednotlivé oblasti používanie je
možné vytvoriť "dokonalý slovník" resp. slovník, ktorý bude pokrývať všetky
používané slová. Zvlášť sa to týka napr. firiem alebo úradov, kde sa používa
formalizovaný písomný styk. Preto nemám záujem o prepisovanie Pravidiel, alebo
export databáz slov (okrem iného, asi by ste sa pravdepodobne dostali do
konfliktu so zákonom). Navyše výsledkom prepisovaní sú často chyba. Radšej
preferujem pomalú, ale zato presnú a bezchybnú prácu.

Pomoc hľadám hlavne v týchto oblastiach:
a) Pokiaľ nájdete chybné slovo (preklep, nesprávny tvar) - oznámte to.
b) Potrebné je tiež vyselektovať slová, ktoré nie sú v Pravidlách do zvláštneho
   súboru (ak také nájdete, pošlite mi info: toto slovo podľa mňa nie je v
   Pravidlách...). Nemusíte čakať, kým nájdete veľa takýchto slov. Skúste ich
   poslať tak raz za mesiac.
c) Neznáme slová sa ukladajú do domovského priečinka do súboru
   '.aspell.slovak.pws '. Skúste ho raz za mesiac skontrolovať podľa Pravidiel,
   rozdeľte tieto slová na spisovné a nespisovné (resp. odborné - Pravidlá
   veľmi málo totižto popisujú práve rôzne odborné termíny) skomprimujte ich
   (vyskúšajte, čo vám dá lepší kompresný pomer: gzip alebo bzip2?). 
d) Do budúcnosti by som chcel rozdeliť celý slovník na niekoľko častí podľa
   frekvencie používania - pokiaľ máte prístup k rozsiahlejším textom v
   slovenčine zistite prosím frekvenciu slov a pošlite mi ju. Tento príkaz by
   vám pritom mohol pomôcť:
   'tr "." " " <clanok_.txt | tr "?" " " |tr ":" " " |tr "\!" " " | \
   tr "(" " " | tr "," " " |tr "-" " "|tr ")" " " |tr "\"" " "| tr " " "\n" \
   | tr A-Z a-z | sort -f | uniq -i -c | sort -r -n > frekvencia_slov.txt'
   

Príkaz 'aspell -d slovak -l <kontrolovany.subor | sort -f -u >nezname.slova'
vám skontroluje súbor 'kontrolovany.subor' a vytvorí zoznam slov
'nezname.slova', ktoré v súbore nepoznal. Pri takejto kontrole sa neznáme slova
naukladajú do '~/.aspell.slovak.pws '

Pokiaľ nemáte prístup súborom vhodným na kontrolovanie, skúste prekontrolovať
slovenské preklady (súbory .po) (odporúčam stránku http://slovencina.linux.sk/)
alebo preklady KDE (balík kde-i18n-sk) a KOFFICE (koffice-i18n-sk) v programe
kbabel (balík kdesdk, resp kdesdk3) alebo gtranslator (www.gtranslator.org) a
informujte autora prekladu (je vždy uvedený v hlavičke 'po' súboru) o preklepe.
Neinformujte ho o nespisovných slovách a podobne, lebo autori prekladov sa
často musia uchyľovať k rôznym slovám. Takto pomôže aj k zlepšeniu úrovne
prekladov.

Podobným riešením je "hacknutie" prekladov nainštalovaných vo vašom systéme.
Príklad:
'msgunfmt /usr/share/locale/sk/LC_MESSAGES/mc.mo >mc.sk.po'

Prosím NEPOSIELAJTE mi emaily väčšie ako 100kb. Radšej jeden veľký email
rozdeľte na niekoľko menších.


Problémy:
--------

Pri príprave tohoto prvého vydania som zistil, že pri povolení niektorých
vlastností aspellu, dochádza k ukončeniu Aspellu resp. dochádza k problémom.
Preto som v súbore slovak.dat (/usr/share/aspell) zakomentoval tieto
vlastnosti. Pokiaľ zistíte v čom je problém, dajte mi prosím vedieť na
zdpo@mailbox.sk.


Rôzne informácie:
----------------

Aký je vzťah medzi slovenskou podporou pre Ispell, Aspell a MySpell?
Veľmi blízky a to hlavne vďaka tomu, že pracuje ne všetkých troch. Dôvod pre
to je nasledovný: Aspell používam osobne viac ako rok a v nedávnej minulosti
som potreboval slovenskú podporu pre OpenOffice (MySpell). MySpell prevzal
engine z Pspell/Aspell a z Ispellu affix kompresiu. Tak som som sa začal hrať s
Ispellom a zistil som, že ma isté nedostatky. Keďže nikto v tom čase (teda
pokiaľ viem nikto okrem Jána Matisa) sa o slovenskú podporu pre Ispell
nezaujímal, začal som
robiť jeho revíziu. Verzia ispell-sk-0.1.7 bola vytvorená hlavne pre tých,
ktorý sa zapojili/zapoja vo revízie (dosť veľa slov bolo odobraných, veľa
preklepov opravených...). Z tejto verzie boli potom exportnuté niektoré
(správne) slová pre Aspell. Podpora pre MySpell je robená priebežne.
Teda vzťah medzi týmito spellmi je taká, že pokiaľ niečo nenájde jeden z nich,
na 90% ich nenájdu ani ostatné.

Podľa môjho osobného hodnotenia je kvalita vyššie spomenutých nasledovná:
Najlepší je Aspell-slovak, potom MySpell-sk a posledný je Ispell.

Momentálne hlavne pracujem na Ispelle, takže ten je a bude asi najčastejšie
vydávaný. Potom nasleduje MySpell a posledným je Aspell (predpokladám, že
do konca roka by mohla vyjsť ešte jedna, dve vezie Aspellu - keby sa nejaký
ľudia
pripojili k jeho tvorbe, alebo by ho niekto chcel spravovať, situácia by sa
mohla zmeniť k lepšiemu - potenciálny záujemcovia nech mi dajú vedieť).

Pokiaľ zašlete slová do hociktorého projektu, po istej dobre (určite nie hneď)
sa objavia vo všetkých troch a preto ich neposielajte do všetkých troch (ak by
ste ich upravili podľa ispellovskej affix kompresie - ušetríte mi kopu práce a
slová sa objavia aj Aspelly aj v MySpelly).

Všetky projekty sú priebežne obnovované na http://ispell.hq.alert.sk


Poďakovania
===========

Moja vďaka patrí ľuďom zo serveru hq.sk a zvlášť Jánovi Matisovi <matis@hq.sk>,
za to, že umiestňujú túto podporu na svoj server.
Poďakovanie za pomoc patrí Marekovi Grácovi <xgrac@informatics.muni.cz>
ASpell-slovak-1.0, Copyright (C) 2002 Zdenko Podobný <zdpo@mailbox.sk>

