1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237
|
------------------------------------------------------------------------
INSTRUKCJA OBSUGI ZESTAWU SW JZYKA POLSKIEGO DO PROGRAMU ISPELL
------------------------------------------------------------------------
wersja 990914
autor: Mirosaw Prywata (Miroslaw.Prywata@fuw.edu.pl)
SPIS TRECI:
1. TWORZENIE I INSTALACJA
1.1. AUTOMATYCZNE TWORZENIE SOWNIKA (wersja testowa)
1.2. ,,RCZNE'' TWORZENIE SOWNIKA
2. PRZYKADOWY SPOSB TWORZENIA SOWNIKA
3. INNE SYSTEMY OPERACYJNE I INNE SPOSOBY KODOWANIA POLSKICH LITER
4. UYCIE ZESTAWU SW Z INNYMI PROGRAMAMI DO SPRAWDZANIA PISOWNI
5. WSKAZWKI: CZEGO NIE NALEY ROBI !
6. JAK ZGASZA BDY
7. KONTAKT Z AUTORAMI SOWNIKA
1. TWORZENIE I INSTALACJA
1.1. AUTOMATYCZNE TWORZENIE SOWNIKA
1) Naley w pliku slownik.cfg zaznaczy interesujce sowniki znakiem X
2) Uruchomi polecenie
$ ./zbuduj.slownik.sh
3) Przekopiowa polish.hash i polish.aff do /usr/lib/ispell
1.2. ,,RCZNE'' TWORZENIE SOWNIKA
Aeby utworzy i zainstalowa polski sownik do ispella naley:
1) posiada ispella pozwalajcego na uywanie flag bdcych maymi literami
(standardowy ispell z Red Hata tego nie potrafi)
2) wybra pliki z interesujcymi nas sownikami (na pewno A + B, w zalenoci
od potrzeb take i C oraz odpowiednie sowniki fachowe - nazwy mwi
same za siebie) i dodawa je po kolei np.:
$ cat A > polish.dic
$ cat B >> polish.dic
..... tu inne interesujce nas sowniki ....
$ cat fachowe/chemia >> polish.dic
$ cat fachowe/polityka >> polish.dic
3) wykona polecenie
$ buildhash polish.dic polish.aff polish.hash
Plik polish.hash jest sownikiem czytanym bezporednio przez ispella.
4) naley skopiowa pliki:
polish.aff
polish.hash
do katalogu /usr/lib/ispell lub dowolnego innego w ktrym ispell defaultowo
szuka sownikw (patrz man ispell)
UWAGA!
Uytkownicy Debiana mog uy gotowego pakietu znajdujcego si w rozwojowej
dystrybucji potato.
UWAGA!
Od wersji 19990914 zosta utworzony katalog dodatkowe, w ktrym umieszczane
s sowniki przysyane przez uytkownikw. W katalogu tym znajduje si take
plik z opisem sownikw. Kady sownik fachowy/specjalistyczny/specyficzny
moe zosta umieszczony w tym katalogu.
2. PRZYKADOWY SPOSB TWORZENIA SOWNIKA
Postanawiamy uy tylko plikw A, B, C
[mirek@localhost test]$ cat A B C >ABC
Moemy zobaczy ile jest wyrazw w pliku ABC:
[mirek@localhost test]$ wc ABC
91479 91479 1283489 ABC
Teraz tworzymy sownik:
[mirek@localhost test]$ buildhash ABC polish.aff ABC.hash
Counting words in dictionary ...
1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 14000
15000 16000 17000 18000 19000 20000 21000 22000 23000 24000 25000 26000
27000 28000 29000 30000 31000 32000 33000 34000 35000 36000 37000 38000
39000 40000 41000 42000 43000 44000 45000 46000 47000 48000 49000 50000
51000 52000 53000 54000 55000 56000 57000 58000 59000 60000 61000 62000
63000 64000 65000 66000 67000 68000 69000 70000 71000 72000 73000 74000
75000 76000 77000 78000 79000 80000 81000 82000 83000 84000 85000 86000
87000 88000 89000 90000 91000
91610 words
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000
14000 15000 16000 17000 18000 19000 20000 21000 22000 23000 24000 25000
26000 27000 28000 29000 30000 31000 32000 33000 34000 35000 36000 37000
38000 39000 40000 41000 42000 43000 44000 45000 46000 47000 48000 49000
50000 51000 52000 53000 54000 55000 56000 57000 58000 59000 60000 61000
62000 63000 64000 65000 66000 67000 68000 69000 70000 71000 72000 73000
74000 75000 76000 77000 78000 79000 80000 81000 82000 83000 84000 85000
86000 87000 88000 89000 90000 91000
Plik sownikowy (hash) nazwalimy ABC.hash --- moe si on nazywa dowolnie,
naley tylko pamita, e wtedy bdziemy musieli podawa ABC jako nazw
sownika.
3. INNE SYSTEMY OPERACYJNE I INNE SPOSOBY KODOWANIA POLSKICH LITER
Zestawu sw mona uywa take pod innymi systemami operacyjnymi -- wszdzie
tam, gdzie uda si przekompilowa ispella (patrz projekt DJGPP -- jest tam
ispell dla DOSa). Naley wtedy
1) zamieni wszystkie znaki wystpujce teraz w kodowaniu iso-8859-2 na nasze.
dotyczy to zbiorw ze sowami a take pliku polish.aff. TeXnolodzy mog
wykorzysta dowoln notacj, przy czym musz to zapisa w pliku
polish.aff (wskazwk mog by pliki aff dla innych jzykw, np.
niemieckiego --- w ktrych s ju zrobione odpowiednie wpisy
charakterystyczne dla innych jzykw). Chodzi tutaj o wpisy wordchars oraz
altstringtype, altstringchar.
Przykad z francaise.aff
altstringtype "tex" "TeX" ".tex" ".bib"
altstringchar "\\`a"
altstringchar "\\`A"
.........
itd
Do konwersji mona uy np. programu konwert.
2) Zamiast polece cat, sort, itd naley uy komend specyficznych dla
danego systemu operacyjnego. Sortowanie sownika przed wykonaniem
buildhash nie jest konieczne --- pozwala jednak na wychwycenie takich samych
wpisw (uniq)
3) polish.hash i polish.aff naley umieci w miejscu specyficznym dla danego
systemu operacyjnego lub podawa bezwzgldn ciek.
4. UYCIE ZESTAWU SW Z INNYMI PROGRAMAMI DO SPRAWDZANIA PISOWNI
W tej chwili nie znam programu (GPL), ktry byby w stanie pomieci
tak obszern list sw (1,4 mln wyrazw) w tak maej objtoci (4MB).
Pierwsz rzecz jest wycignicie penej listy ze sownika.
Potrzebujemy do tego pliku hash (z dowoln zawartoci za to
zbudowanego na podstawie pliku polish.aff). Mona to osign w nastpujcy
sposb:
1)
$ cat > slowo
sowo
^D
2)
$ buildhash slowo polish.aff slowo.hash
3) Teraz moemy rozwin wszystkie sowa wystpujce np. w pliku A.
$ispell -e -d ./slowo.hash <A
............
na ekranie pojawi si wszystkie rozwinite sowa
............
4) Aeby mie list sw naley spacje zamieni na znaki nowej linii, tak by
mie w kadej linijce jedn form, nastpnie wszystko to sortujemy i
przepuszczamy przez uniq i wrzucamy do pliku A.slowa
$ispell -e -d ./slowo.hash <A \
| perl -pe 's/\s/\n/g'| sort |uniq >A.slowa
Uwaga! Cay sownik daje okoo 1,4 mln form i kilkunastomegabajtowy plik
wynikowy! Na przykad w programie aspell (ta taki ,,lepszy'' ispell) daje
to hash wielkoci 30MB!
Prosz wszystkich uytkownikw, ktrzy znaleli sposb na efektywne
wykorzystanie tego zestawu sw z dowolnym programem do sprawdzania
pisowni o informacj o tym --- wraz z opisem jak to zrobi. Opis taki
umiecimy wraz ze sownikiem jako instrukcja dla innych uytkownikw.
5. WSKAZWKI: CZEGO NIE NALEY ROBI !
----------------------------------------------------------------------------
UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA !UWAGA
-----------------------------------------------------------------------------
Prosz nie przepuszcza tego sownika przez adne Makefile wzite nie
wiadomo skd, gdy nie wiemy, co one bd chciay robi. W wikszoci przypadkw
jedn z faz bdzie munchlist (program znajdujcy automatycznie flagi dla
danego zestawu sw i danego pliku aff). Miaem ju kilka sygnaw od
osb, ktre skaryy, e sownik nie dziaa, bo jest za mao miejsca na dysku,
pamici, etc. do zrobienia munchlist, sortowanie itp.
Nie naley te w przypadku jzyka polskiego uywa skryptu findaffix. Dla
zestawu sw mniejszego ni 300 tys. (kilkukrotnie mniejszy zestaw ni ten
w sowniku) 1GB pamici RAM jest stanowczo za mao, by skrypt ten dziaa.
Dlatego te jeeli kto wpadnie na jaki ,,genialny'' pomys automatycznego
przetworzenia sownika niech najpierw skonsultuje to ze mn lub opisze swj
pomys na licie sownikowej.
6. JAK ZGASZA BDY
Rodzaje bdw:
- bdy w polish.aff --- naley zgasza bezporednio do Piotra Gackiewicza
dajc jednoczenie Cc; na list sownikow;
- brak sw:
a) brak formy podstawowej (patrz w README co jest traktowane w sowniku
jako forma podstawowa, z przyczyn praktycznych nie jest to w 100%
zgodne z gramatyk)
b) brak formy pobocznej (brak oflagowania)
Najlepiej byoby, gdyby sowa byy dostarczane ju oflagowane (z pen
odmian). Nie trzeba od razu uczy si skomplikowanych regu --- mona
uy skryptu sprawdz, ktry automatycznie potrafii doda wszystkie
flagi charakterystyczne dla danej czci mowy a nastpnie zostawienie tylko
tych, ktre s prawidowe.
Nie wszystkie formy daj si wygenerowa z form podstawowych (np. jest nie daje
si wygenerowa z by). Jednak przypadkw takich w caym sowniku jest
stosunkowo niewiele --- powinny da si generowa wszystkie formy regularne,
jeeli tak nie jest oznacza to, e a affie s jeszcze pewne niedocignicia.
Po wybraniu i oflagowaniu sw naley stworzy katalog o nazwie ImieNazwisko
(dla uproszczenia bez polskich liter) z ewentualnym numerem, jeeli jest to
ktra z kolei paczka, ktr przysyamy. Nastpnie plik ze sowami kopiujemy
do katalogu. Umieszczamy w nim jeszcze jeden plik o nazwie id, w ktrym
wpisujemy nasze dane:
Imi Nazwisko, data sprawdzania, kontakt elektroniczny.
- bdne sowa (nieistniejce w polskim sowniku)
Znowu mamy do czynienia z dwoma przypadkami --- albo jest to forma podstawowa,
wtedy wpisujemy j do pliku o nazwie trash, albo jest to rozwinicie ---
wtedy mamy do czynienia z bdami w oflagowaniu. W drugim przypadku postpujemy
tak samo jak z nowo dodawanymi sowami, czyli dodajemy do sowa prawidowe flagi
doczmy do pliku (patrz wyej) i wysyamy.
Przysanie poprawki oznacza zgod na:
- umieszczenie poprawki w sowniku i rozprowadzanie jej na prawach licencji
LGPL (lub innej, jeeli licencja sownika si zmieni) przez zesp
pracujcy nad sownikiem;
- zgoda na umieszczenie danych zawartych w pliku id w README wrd autorw
sownika (znajduj si tam nazwiska i adresy osb, ktre przyczyniy si
do rozwoju sownika);
7. KONTAKT Z AUTORAMI SOWNIKA
Wszelkie uwagi dotyczce niniejszego sownika naley kierowa na list
slownik@ia.pw.edu.pl lub Miroslaw.Prywata@fuw.edu.pl, MACEWICZ@ia.pw.edu.pl
gacek@ds14.agh.edu.pl
|