|
A[d]dict
Aktuální verze - A[d]dict v.0.3
|
|
Verze All-in-one:
Ke stáhnutí je zde verze Addict_031.zip (cca. 10MB).
Verze obsahuje zdrojové kódy, binárky pro Windows i Linux (závislost na libpng.so.3),
datové soubory starších verzí EN<->CZ, GE<->CZ, Hacker's dictionary, WordNet
a slovníku Bohemik + nakonfigurovaný Addict.ini, takže jen nahrajete,
rozbalíte a jedete...
|
|
Omluva :
Omlouvám se všem, kteří se mne neúspěšně pokoušeli kontaktovat na starém emailu.
Je to již hodně douho, co adresu vkotala@mistral.cz nepoužívám. Prosím používejte
nadále adresu uvedenou na konci stránky.
|
|
Co je to, co to umí, jak to vypadá ? |
Addict je multiplatformní slovník, či přesněji program (engine) pro vyhledávání
překladů či významu neznámých slov za použití slovníkových databází.
Vznik Addictu byl motivován přáním českých uživatelů Linuxu na stránkách webzínu
ABC linuxu, jeho návrh získal v hlasování čtenářů
první místo a tím i příslib finančního příspěvku 5000,-Kč. ABC linuxu tímto děkuji
nejen za příspěvek, ale i dlouhodobou podporu Linuxu a open source v ČR.
Addict je napsán za použití multiplatformní knihovny
wxWindows a šířen pod licencí
GPL.
Je primárně vyvinut pro GPL/FDL Česko-Anglický
překladový slovník, ale používat ho lze i pro jiné slovníky, dokonce i pro výkladové.
|
|
|
Některé další klávesové zkratky ve verzi 0.2:
DEL | Maže vše jen je-li kurzor na konci řádku, jinak funguje jako obvykle. |
ALT+<-,-> | Přepíná mezi používanými slovníky. |
Šipky ^,v | Posunuje slovník o slovíčko vzhůru/dolů |
PGUP,PGDN | Posunuje slovník o 10 slovíček vzhůru/dolů |
ENTER | Vynutí vyhledání/návrat zadaného slovíčka |
|
|
Většina jiných slovníkových programů neuvádí, jak pracuje, případně přiznává použití
grepu, dict nebo SQL databází. Obojí grep i SQL je pro slovníková data ne právě vhodné (grep je vhodný
pouze pro fulltext vyhledávání, pomíjí hlavní výhodu slovníků = jsou seřazené, SQL
(relační) databáze jsou zase nevhodné z důvodu neexistence jakýchkoli relací
ve slovníkových datech a dále nutností spouštět ke klientskému programu ještě databázový
server). Přestože dict má jistě své výhody, většinu potenciálních uživatelů odrazuje
client-server přístup (tj. nutnost instalovat a spouštět před každým hledáním slovíčka
server.
Addict funguje jinak. Po stáhnutí slovníkových dat z internetu či odjinud se provede
oindexování slovníkových dat dle příslušného jazyka, soubor se seřadí a vytvoří se také
speciální indexační soubor, který obsahuje "zkratky" na pozici v souboru,
kde se nachází první výskyt klíče (kombinace prvních čtyř písmen). Všechny potřebné
utility jsou v podadresáři utils.
Po spuštění Addict načte indexační soubor aktuálního slovníku do paměti. Při zadání
vyhledávaného slova vždy prohledá indexační soubor jako binární strom a najde nejbližší
zkratku do slovníkového souboru a sekvenčně dohledá patřičný výraz. Tento jednoduchý
algoritmus má přitom složitost blížící se log(n)+C, a např. pro Webstrův výkladový slovník
o velikosti cca 15MB vyhledávání zabere průměrně 15porovnání čísla long v registru s pamětí
a 6xpráci s diskem (vždy přečtení jednoho řádku z disku, výpočet hash a porovnání),
přičemž paměťová náročnost vyhledávacího algoritmu je necelých 200kB pro indexační soubor.
|
|
Jediný způsob, jak TO nastavit, je editací konfiguračního souboru Addict.ini,
který se nachází ve stejném adresáři jako binárka. Lze nastavovat barvy programu, jeho
startovní pozici a velikost a také parametry jednotlivých
slovníků. Jak CS-EN GPL slovník, tak Webster i Hacker's dictionary jsou v konfiguračním
souboru zapoznámkovány jako
příklad. V případě, že vaše PC neoplývá pamětí a jste ochotni obětovat malou část pohodlí,
lze změnou posledního parametru
slovníku (auto resize) na 0 snížit paměťovou náročnost a mírně zvýšit rychlost tím, že se
neprovádí automatické nastavení výšky řádků slovníku.
|
|
Velikost programu v paměti po spuštění je kolem 4MB, při zapnutém AutoResize se postupně
může vyšplhat až na cca. 7MB, což je srovnatelné s 1-2 instancemi xterm+bash.
Místo na disku závisí především na velikosti slovníkových dat a dá se ušetřit na dual boot
strojích například tím, že se používají stejná slovníková data ve Windows i Linuxu.
|
|
Verze v03 přidává následující fičury: |
- podpora kódování Utf-8 v Linuxu (pro uživatele RH 8 a 9 apod.)
- nestahujte v takovém případě slovníková data odtud, použijte dávku getdict_utf
- možnost vypnout v Addict.ini vyhledávání on-the-fly (pro uživatele slabších PC)
- pokud vypnete, vyhledává se pouze po stisku klávesy Enter
- připravené dávky pro stahování CZ <-> EN slovníku v zipované podobě
(getdict_iso, resp. getdict_utf pro Linux ISO-8859-2, resp. Utf-8,
getdict.bat pro Windows) - stačí spustit a jít...
- opravený import Webster slovníku, včetně zde stáhnutelného addict-web.zip
|
|
Pro stahování aktuálních dat EN<->CZ GPL slovníku z webu je v adresáři utils vytvořena
dávka upden2cs(resp. upden2cs.bat). Tato dávka využívá program cURL pro samotné stažení dat.
Tento program (cURL) je běžný na *nixových strojích, proto není včleněn do linuxové binárky,
naopak ve světě Windows je téměř neznámý, proto jeho obdobu naleznete v binárním balíčku
pro Windows. cURL je taktéž licencován GPL, originál je na adrese curl.sourceforge.net.
Podobně pro samotné třídění je v určité fázi využíván program sort, který je opět součástí
pouze Windows binárního balíčku. Licencován opět pomocí GPL, originál k nalezení jako součást
balíčku fileutils for Windows.
Od verze v03 se pro šetření přenosovou kapacitou přenáší data pakovaná programem gzip.
Gzip je opět běžnou součástí Linuxových OS, na Windows platformě je nutné ho distribuovat
s balíčkem windows binárky. Gzip je opět licencován GPL, originál je na adrese
www.gzip.org.
Žádný z těchto programů NENÍ pro běh programu Addict potřeba (pokud využíváte zde připravené balíčky slovní zásoby),
všechny jsou potřeba POUZE pokud chcete sami updatovat CS<->EN slovník.
|
|
Pro provoz potřebujete minimálně binárku pro vaši platformu a data alespoň jednoho slovníku.
Před prvním použitím odpoznámkujte v souboru Addict.ini vámi zvolené slovníky !
- Zdrojové kódy. Pro kompilaci je nutno mít nainstalovány
multiplatformní knihovny wxWindows v. 2.4.0+. Navíc je třeba patchovat/nahradit soubory
/src/generic/grid.cpp a /include/generic/grid.h těmi, jež jsou v podadresáři /grid
tohoto zipu (původní verze 02).
- Linux binárky, kompilované na RH 7.3 (ldd hlásí
závislosti pouze na knihovnách GTK 1.2, libpng, libjpeg, libpthread a standartních C/C++ knihovnách)
(původní verze 02).
- Windows binárky kompilované Borland FreeCommandLine C++ compiler 5.5
(původní verze 02).
- Oindexovaná data CS-EN GPL/FDL slovníku k 6.8.2003
(cca. 1,7MB). Rozbalte do podadresáře /data, odpoznámkujte řádky začínající CS->EN a
EN->CS v souboru Addict.ini a můžete vesele překládat.
- Oindexovaná data Webster1913-v003 výkladového
slovníku (cca. 5,3MB). Rozzipujte do podadresáře /data, odpoznámkujte řádek začínající
Webster v souboru Addict.ini a můžete si nechat vesele vykládat.
- Oindexovaná data slovníkové části knihy "The
Hackers' Dictionary of Computer Jargon" v.4.22 (orginál je dostupný na stránkách
Project Guttenberg.
Rozzipujte do podadresáře /data, odpoznámkujte řádek začínající
Hacker v souboru Addict.ini a můžete si nechat vesele vykládat (cca.0,5MB).
|
|
GNU/FDL Anglicko-Český slovník lze upgradovat
libovolně často následujícím postupem:
- Stáhněte si ze stránek projektu
aktuální data a uložte je do podadresáře /util nainstalovaného Addictu. Pro vaše
pohodlí jsem v adresáři /util vytvořil dávku geten2cs(geten2cs.bat), která to s pomocí
prográmku cURL udělá za vás.
- Spusťte v podadresáři /util skript runen2cs (v M$ Windows runen2cs.bat).
- Spusťte/restartujte Addict. Nastartuje již s novými daty.
Toto řešení je nicméně náročné pro dial-upisty, protože vždy je třeba stáhnout celý slovník.
Máte-li verzi v03 či vyšší, je výše popsaný postup připraven v dávce getdict_iso
(resp. getdict_utf, getdict.bat). Přesněji řečeno je i vylepšen, protože stahuje slovníková
data v Gzipované podobě (která v době vydání předchozích verzí nebyla k dispozici).
|
|
Připomínky, náměty, dotazy: .
|
|
|