2008. május 19., hétfő

ddtp-fordítás részletesen

A ma esti irc míting témája volt a gnome-app-install által telepíthető csomagok leírásainak fordítása és a fontos leírások kiszedése egy táblázatba című móka. Nem sikerült teljesen elmagyarázni, hogy mi is a teendő, szóval egy példán keresztül lássuk, mit kéne automatizálni:

Tegyük fel, hogy a gnome-app-installban látható atomix és gnibbles nevű programok leírását akarom lefordítani, ami a main repó része. Ehhez az alábbiak kellenek, a launchpad fiókon kívül:

-az exportált ddtp-ubuntu sablon. Gyorsítunk: amit most exportáltam, az itt érhető el (még egy pár napig/hétig, fene tudja pontosan): http://launchpadlibrarian.net/14607672/main_ddtp-ubuntu-main-hu.po
-Connor keresőszkriptje, (szerk: idióta ubuntupastebin elrontja a sorvégét, ezért megy ide) amit az előző post óta módosítottam annyiban, hogy a rosetta által exportált nevű fájlt keresse.
-pici türelem ;)

Vesszük az exportált sablont és a szkriptet, ezeket azonos könyvtárba mentjük. Ki kell deríteni, hogy az atomix nevű program melyik csomagban lakik. Ehhez az alábbi kell:

cat /usr/share/app-install/desktop/atomix.desktop | grep X-AppInstall-Package | cut -d = -f 2
atomix

Na ebben nem látszik semmi ördöngősség, ez igazából azért kell, mert sok program esetén nem ugyanaz a .desktop fájl neve és a csomagjának neve, illetve emiatt sok program ugyanabból a csomagból jön:

cat /usr/share/app-install/desktop/gnibbles.desktop | grep X-AppInstall-Package | cut -d = -f 2
gnome-games

Szóval, kiderült hogy melyik csomag kell nekünk, amiben a keresett programok laknak. Most jöjjön egy kis vudu:

sed -i -e s/^#~.*//g main_ddtp-ubuntu-main-hu.po

Erre azért van szükség, mert az exportált fájlban elavult bejegyzések is vannak, amik megborítanák a számolást. Most jöhet a lényeg:

./ddtp-search.sh atomix
Csomag sorszama: 357
Offset: 356
Rovid leiras:
puzzle game for building molecules out of isolated atoms

Hosszu leiras:
Atomix is a game designed for GNOME in which you have to build molecules,
from simple inorganic to extremely complex organic ones, out of isolated
atoms.
.
The first levels can be misleadingly easy, but added complexity always
comes with the next level, so that several minutes (or even much more
than that) can be spent on getting out of one single level.

Ebből a csomag sorszáma (357) érdekes igazán, a leírások itt csak referenciaként szolgálnak.
Keressük fel a következő címet:

https://translations.launchpad.net/ddtp-ubuntu/ubuntu/+pots/ddtp-ubuntu-main/hu/357/+translate

ha minden igaz, akkor itt a fenti rövid leírást kell látnunk. A következő üzenet, amelyet a mostani lefordítása és elmentése után kapunk, a hosszú leírás, legalábbis az első szegmense. A hosszú leírások több darabból is állhatnak, így például az atomixé is már kettő, vagyis ha oda jutunk, le kell fordítani a 358-as és 359-es számú darabokat is. (Az automatizáláshoz praktikus lehet a " . " sorozat számának megszámolása a ddtp-search kimenetében)

Ugyanezt lássuk a játékokkal:

./ddtp-search.sh gnome-games
Csomag sorszama: 1723
games for the GNOME desktop

Nahát, működik :)

Ez egy-egy program esetén így működhet is, de most nem erre van szükség: a teendő a fenti automatikus végigjátszása minden .desktop fájlra a /usr/share/app-install/desktop/ könyvtárban, a kapott csomagnevekhez tartozó számok kikerestetése a ddtp-search programmal és a számok bepakolása egy ízléses táblázatba, a fenti séma szerint körülvéve őket launchpad-linkkel.
Kis segítség lehet nagyv kolléga python szkriptje, ami az első feladatot csinálja meg és itt érhető el: http://paste.ubuntu.com/13330/

1 megjegyzés:

harp írta...

Nekem a szkript linkre kattintva azt írja: nincs jogosultságom.