LSDictionary – szótár widget
Újabb nap, újabb többnyelvű szótár – azaz semmi különös nem történt. Eddig is voltak és vélhetőleg lesznek is még ilyen játékaim…
Ma reggel az egyik HUP fórumon olvastam, hogy valaki írt a régi Vonyó féle adatbázishoz saját keresőt és ahhoz egy Java szörnyet a megjelenítéshez. Egy kicsit ügyeskedtem és hozzá-konvertáltam egy angol ige és melléknév vonzattárt is ehhez az adatbázishoz, így több mint 190.000 elemre bővült az okossága.
Gondoltam, jó kockához méltó pihenésképpen meggyártom a frontend Mac-es verzióját, egy elegáns Dashboard widget formájában. Ehhez az új XCode-ban rejtőzködő Dashcode lett a cimborám, így mintegy negyven perc után megszületett a post-ot tematizáló widget. Nagyon jól kitalálták ezt a kis fejlesztő cuccot, tényleg minden ott van benne, ahol várja az ember!
Tehát kivadásztam a qed-0.1.6.tar.bz2 archívból a szótár adatbázist, majd egy maximálisan a funkcionalitásra optimalizált felületet ácsoltam hozzá. Semmi beállítás, semmi nyomógomb, csak írod amit tudni akarsz és ha van mit, akkor az ámítógép válaszol. A találati listában aláhúzza a kereséshez használt szót, szótöredéket, így könnyebb megtalálni.
Nem sokat kell küzdeni a nyelvváltással sem, a találatok között sötétebb színnel szedi az angol részt, míg világosabbal a magyart – bármely nyelven írjuk be a kereső kifejezést, meg fogja találni. Ne zavarjon meg senkit a scrollbar hiánya, ez is az optimalizálásnak esett áldozatul, ettől függetlenül lehet bátran tekerni a görgőt az egéren, vagy húzkodni a kétújjast a tapipadon.
Mivel sok esetben nem csak szavakat szeretnénk fordítani, hanem kifejezéseket, vagy komplett mondatokat is, ezért belekerült a programba egy Google Translate interface. Ha a keresőbe írt kifejezést nem találja a helyi adatbázisban, akkor megpróbálja lefordíttatni a nagy-testvérrel. Természetesen itt is érvényes a fent említett egyszerű működés, a beírt szöveg alapján kitalálja, hogy milyen nyelvű lehet, majd annak megfelelően fordítja le a másik nyelvre…
A programozás során sikerült belefutnom egy érdekes problémába, aminek során a Dashcode-ban jól működött a hálózatos rész, míg a Dashboard-ba deploy-olva nem. Ennek látszólagos oka a Widget Attributes részben beállítható Allow Network Access paraméter hiány volt, noha természetesen ott figyelt az Info.plist file-ban. A megoldás egyszerű lényeknek egy gép, másoknak egy Dashboard újraindítás…
Jah, és hogy miért LSDictionary a neve? Hát legyen ez egy ilyen anniversary dolog… :)
Frissítés, v1.5 (2009. november 14):
- új szótárak (cigány, dán, észt, héber, holland, portugál, svéd és török – forrás)
- frissített felület kód, XCode 3.2.1, Dashcode
- RSS olvasó splash
Frissítés, v1.4 (2009. november 8):
- többnyelvű szótárak támogatása (angol, eszperantó, finn, francia, latin, német, spanyol – forrás)
- javított keresés, a beállító panelen definiálható pontosság
Frissítés, v1.3 (2009. július 3):
- új tematikus szótárak: autóverseny, levelezés, utazás, bank, szólások, orvoslás, betegségek, járművek, közlekedés, érzelem, törvény, politika, vallás, nyelvészet
- pontosabb keresés, rendezett válasz lista
- szótár bővítés Google Translate találat, vagy saját adatok alapján (“+” gomb)
- a speciális karakterek kezelésének finomítása
Frissítés, v1.2 (2009. június 26):
- a találati listában a szövegre kattintva kimondja, felolvassa a szöveget (text to speech)
- a bal alsó sarokban lévő + gombbal a Google Translate által lefordított kifejezés hozzáadható a helyi adatbázishoz
- több adatbázis file is használható, ehhez “en-hu_*.dic” név maszkkal kell berakni a widget könyvtárába, ahol minden rekordot egy “\n” (soremelés) karakter és minden mezőt egy ” :: ” karaktersorozat választ el (“monkey :: majom\n”)
Letöltés:
- LSDictionary 1.5 (multi language) – widget (Mac OS X 10.4+)
- LSDictionary 1.4 (multi language) – widget (Mac OS X 10.4+)
- LSDictionary 1.3 (német-magyar) – widget (Mac OS X 10.4+)
- LSDictionary 1.3 – widget (Mac OS X 10.4+)
- LSDictionary 1.2 – widget (Mac OS X 10.4+)
- LSDictionary 1.1 – widget (Mac OS X 10.4+), vagy Apple Downloads