Zgodnie z obietnicą zamieszczam instrukcję tworzenia słowników ze strony
http://elektronikjk.republika.pl/y0.html dla Dicta i MDict:
(na przykładzie słownika szwedzko-polskiego)
1. Pobieramy plik słownika se-pl.zip i rozpakowujemy. Plik wynikowy se-pl.txt wygląda tak:
abakus=abakus
abborre=okoń
abbot=opat
abdikera=abdykować
abdikera=zrzekać
abnorm=anormalny
abnorm=nienormalny
abnormitet=anomalia
abnormitet=nienormalność
abnormitet=nieprawidłowość
itd.
Plik źródłowy dla Dicta musi mieć postać:
hasło1 opis
hasło2 opis
(hasło od opisu oddzielają dwa znaki spacji), w opisach można stosować znaczniki html <p>, <br>, <ul>, <ol>, <li>, <b>, <i>, <font> (nie zaleca sie używania atrybutu face)
Musimy więc zrobić dwie rzeczy:
- zamienić znak "=" na " " (dwie spacje)
- połączyć zduplikowane wpisy w kilka opisów do jednego hasła (np. w powyższym przykładzie hasło "abnorm" występuje dwa razy - jako "anormalny" i "nienormalny"
A zatem idziemy dalej:
2. Wczytujemy plik se-pl.txt do programu EditPad Lite (można też uzyć Worda, ale EditPad jest szybszy), wybieramy Ctrl+F, w polu Search wpisujemy "=" (znak równości, bez cudzysłowów), w polu Replace wpisujemy " " (dwie spacje) i wciskamy przycisk Replace All.
Zapisujemy plik i zamykamy EditPada.
3. Teraz łączenie zduplikowanych haseł:
Start>Uruchom>cmd.exe
Przechodzimy do katalogu ze słownikiem (wcześniej kopiujemy tam plik
makezd.exe) i wpisujemy polecenie:
makezd.exe -jr se-pl.txt se-pl-jr.txt
opcja "-jr" powoduje łączenie zduplikowanych haseł w jedno.
Otrzymamy plik se-pl-jr.txt. Wygląda on teraz następująco:
abakus abakus
abborre okoń
abbot opat
abdikera abdykować<br><br>zrzekać
abnorm anormalny<br><br>nienormalny
abnormitet anomalia<br><br>nienormalność<br><br>nieprawidłowość
abonnemang abonament<br><br>prenumerata<br><br>przedpłata
abonnent abonent<br><br>prenumerator
Jak widać, teraz hasło "abnorm" występuje tylko jeden raz i zawiera połączone opisy oddzielone dwoma znacznikami <br>.
<br> to znacznik html oznaczający podział wiersza. Wystarczy jeden, więc za pomocą EditPada lub Worda zamieniamy w pliku "<br><br>" na "<br>".
4. Teraz mamy już gotowy plik źródłowy do utworzenia słownika dla Dicta (.zd).
Plik słownika tworzymy poleceniem:
makezd -cp1:65001 -ecp1:65001 -cp2:65001 -ecp2:65001 -s -l -lcid:29 se-pl-jr.txt se-pl.zd
Wyjaśnienie opcji:
-cp1: kodowanie haseł w pliku źródłowym (65001 to UTF-8), domyślnie jest 1251,
-ecp1: kodowanie docelowe haseł w pliku słownika,
-cp2: kodowanie opisów, domyślnie jest 1251
-ecp2: docelowe kodowanie opisów w pliku słownika,
-s - włącza sortowanie haseł
-lcid: identyfikator języka (wykorzystywany przy sortowaniu haseł w słowniku); wartość tą znajdujemy na stronie
http://msdn.microsoft.com/en-us/library/ms776294.aspx, z trzeciej kolumny bierzemy dwa ostatnie znaki i zamieniamy je z wartości hex na dec: włączamy kalkulator, wybieramy Widok>Naukowy, zaznaczamy "Hex", wpisujemy te dwa znaki, a następnie zaznaczamy pole "Dec". W okienku wyświetli się wartość, jaka należy wpisać w opcji -lcid.
To wszystko - mamy gotowy słownik dla Dicta. Wystarczy wgrać plik se-pl.zd na PDA i wczytać w programie Dict.
5. Jeśli chodzi nam o uzyskanie słownika dla MDict, jako podstawę wykorzystamy plik se-pl-jr.txt z punktu 3., po połączeniu zdublowanych haseł.
Musimy go przerobić do formatu Mdict html, czyli:
każdy wpis musi zawierać co najmniej trzy wiersze:
- slowo kluczowe (hasło),
- opis, można tu stosować znaczniki html (ale bez <html><head><body></body></head></html>),
- znacznik "</>" kończący wpis
W tym przypadku do zamiany trzeba bedzie użyć Worda (ze względu na możliwość zamiany znaków końca akapitu).
Otwieramy plik se-pl-jr.txt w Wordzie i teraz:
a) wybieramy Edycja/Zamień
b) korzystając z przycisków "Więcej" i "Znaki specjalne" zamieniamy (przyciskiem "Zamień wszystko"):
- "znak akapitu" na "znak akapitu</>znak akapitu" (znak akapitu będzie widoczny jako "^p")
- " " (dwie spacje) na znak akapitu
c) usuwamy ostatni znak akapitu na końcu pliku.
d) zapisujemy plik (jako plik tekstowy w formacie UTF-8) np.pod nazwą se-pl-mdx.txt
6. Uruchamiamy program
MdxBuilder.
- w polu Source wskazujemy plik se-pl-mdx.txt
- w polu Target wpisujemy se-pl.mdx
- w polu Original format wybieramy "Mdict(Html)"
- w polu Encoding wybieramy "UTF-8(Unicode)
- w polu Title wpisujemy tytuł słownika (bez znaczników html)
- w polu Description można wpisać opis słownika (tu można używać html, np. dla pokolorowania/zwiększenia czcionki lub zamieszczenia odnośnika do źródła)
- klikamy Start
7. Gotowe! Wgrywamy plik se-pl.mdx na PDA i cieszymy się nowym słownikiem.
Wygląda to skomplikowanie, ale po nabraniu wprawy utworzenie słownika to kwestia kilka minut.
PS: Jedyny problem polega na tym, że w MDict pierwsze hasło przeskakuje na koniec słownika, niestety nie wiem czym to jest spowodowane i jak temu zaradzić.