Portál AbcLinuxu, 25. dubna 2024 07:39

Jak užívat slovníky z Lingea Lexiconu ve Stardictu

3.12.2010 23:03 | Přečteno: 3840× | Výběrový blog | poslední úprava: 27.11.2011 16:30

Nedávno jsem se stal majitelem telefonu N900 s operačním systémem Maemo ve verzi Fremantle, na který lze nainstalovat stardict. Mám na počítači také Lingeu Lexicon 2002 a řekl jsem si, že by bylo dobré mít tyto data i na telefonu, slovník potřebuji docela často. Chvíli mi zabralo, než jsem přišel na to, jak data překonvertovat, tak zde postup zaznamenám, třeba to někomu pomůže.

Zde si stáhněte konvertor lingea-trd-decoder.py. (Toto je verze 0.7, která vyšla již před více jak dvěma lety. Zda nevyšla nová překontrolujte zde.)

Budete také potřebovat program tabfile z (v Ubuntu) balíku stardict-tools:

sudo apt-get install stardict-tools
(Postup a jméno balíku se pro jiné distribuce samozřejmě může lišit.)

Nalezněte, kde se ve vašem počítači nacházejí data Lingea Lexiconu a přesuňte se tam. Data se poznají tak, že mají koncovku .trd: locate

 locate .trd
Pak už stačí spustit tento příkaz. Uvědomuji si, že je dost nešikovný, ale v Bashi úplně zběhlý nejsem, a tak jsem to lepil podle Google a tohle bylo první, co fungovalo.
for i in *.trd ; do /cesta/k/lingea-trd-decoder.py $i > ${i%trd}tab ; done ; for i in *.tab ; do /usr/lib/stardict-tools/tabfile $i ; rm $i ; done ; for i in *.ifo ; do sed '$d' < $i > file2 ; mv file2 $i ; echo sametypesequence=g  >> $i ; done
Konec (od "for i in *.ifo"), který nahrazuje poslední řádku sametypesequence=g není nutný, ale ovlivňuje formátování (zda se správně interpretují obsahové tagy).

Poslední, co je třeba udělat, je přenést pro každý slovník *, který vás zajímá, soubory

*.ifo
*.idx
*.dict.dz
někam, kde o nich stardict bude vědět. Pro N900 je návod třeba tady

Update: Funguje to i na Android a program colordict, tam je treba prenest doubory do adresare /sdcard/dictdata. (/sdcard je korenovy adresar, jestli tomu dobre rozumim.)
Update II: Pokud používáte Ubuntu 11.10 Oineric nebo Debian sid (bude wheezy) a máte tudíž stardict-tools verze 3.0.2-2, tak /usr/lib/stardict-tools/tabfile chybuje. Viz tento bug. Je proto třeba jej stáhnout novější. Pro ubuntu stáhněte odsud (pro amd64), rozbalte to archive managerem a vytahnete si soubor tabfile. V příkazu výše pak použijte cestu k tomuto souboru, nikoliv tomu, co vám nainstalovala distribuce.        

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

belisarivs avatar 4.12.2010 13:24 belisarivs | skóre: 22 | blog: Psychobláboly
Rozbalit Rozbalit vše Re: Jak užívat slovníky z Lingea Lexiconu ve Stardictu
Odpovědět | Sbalit | Link | Blokovat | Admin
Jestli na N900 je hlavni framework Qt, tak bych doporucil "Goldendict".
IRC is just multiplayer notepad.
4.12.2010 13:27 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
Rozbalit Rozbalit vše Re: Jak užívat slovníky z Lingea Lexiconu ve Stardictu
To je, ale nikdo to na N900 neportoval (zdá se) a mě se tím nechce zaobírat, qstardict docela stačí. Díky za tip ale.
Fluttershy, yay! avatar 4.12.2010 16:22 Fluttershy, yay! | skóre: 92 | blog:
Rozbalit Rozbalit vše Re: Jak užívat slovníky z Lingea Lexiconu ve Stardictu
Není (až v MeeGo). Navíc AFAIK Goldendict není portovaný, kdežto StarDict je (BTW QStarDict mi vždycky přišel sviňsky pomalý při vyhledávání).
🇵🇸Touch grass🇺🇦 ✊ no gods, no masters
4.12.2010 17:06 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
Rozbalit Rozbalit vše Re: Jak užívat slovníky z Lingea Lexiconu ve Stardictu
No je pravda, že mstardict je svižnější a má více přizpůsobené ovládání. Jak tak na něj koukám, dám mu přd qstardictem přednost. Stardict jako takový je portovaný jenom na N810 a nižší myslím.
Fluttershy, yay! avatar 4.12.2010 17:15 Fluttershy, yay! | skóre: 92 | blog:
Rozbalit Rozbalit vše Re: Jak užívat slovníky z Lingea Lexiconu ve Stardictu
Jo, v Diablu mám normální StarDict, ve Fremantle nevím, jak to je.
🇵🇸Touch grass🇺🇦 ✊ no gods, no masters
4.12.2010 20:55 mahdi
Rozbalit Rozbalit vše konvertor pro LEDA?
Odpovědět | Sbalit | Link | Blokovat | Admin
nevite nekdo o konvertoru pro slovniky leda? viz http://leda.cz/jazykove-slovniky-ucebnice.php?i=78 co se tyce obsahove kvality nema konkurenci, dik
26.12.2010 22:41 Vitek
Rozbalit Rozbalit vše Úprava IFO souborů
Odpovědět | Sbalit | Link | Blokovat | Admin
Jen chci doplnit, že v IFO souborech je nutné ručně přepsat řádek s sametypesequence=m“ na „sametypesequence=g“. Jinak se nebude zobrazovat správně formátovaný text, ale výsledek hledání se zobrazí jen jako prostý text včetně formátovacích tagů.

V příkazu je část "echo sametypesequence=m >> $i" vlastně zbytečná. Do IFO souboru duplicitně přidává řádek s tímto parametrem a to ještě se špatnou hodnotou.
27.12.2010 12:57 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
Rozbalit Rozbalit vše Re: Úprava IFO souborů
Jo, to je pravda. Ony ty příkazy předtím (for i in *.ifo ; do sed '$d' < $i > file2 ; mv file2 $i) ten řádek s sametypesequence=m maže, takže se to tam nepřidává duplicitně - ale je pravda, že jsem taky pak zjistil, že to není dobrý nápad, protože se to zobrazovalo s těmi tagy. Někde na internetu jsem si totiž přečetl, že se to takhle má změnit, ale nebylo to nutné, ba naopak.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.