A magyar felület fordítási munkái a http://localize.drupal.org által biztosított infrastruktúrán zajlanak.
Ebből a Drupal webhelyek telepítőinek annyit érdemes tudniuk, hogy a magyar fordításokat két módon lehet beszerezni. A Drupal alaprendszer fordítása minden esetben megtalálható a címlapon. Alapvetően ezt ajánljuk mindenkinek, aki szeretné, hogy az adatbázisa a lehető leghatékonyabban legyen kihasználva, felesleges fordítások ne terheljék a rendszerét. Ez alkönyvtár helyesen tartalmazza a szükséges fájlokat, melyet egyszerűen a telepített Drupal forráskódja mellé kell másolni. Azonban ez a csomag viszonylag ritkán frissül. A legfrissebb fordítás beszerezhető közvetlenül a fordítási adatbázisból is, ennek azonban már feltétele egy felhasználói fiók megléte a http://drupal.org webhelyen. Ez sokkal naprakészebb csomagot biztosít, hiszen a fordításunk akár napról-napra is változhat.
A közösség által közzétett modulok esetében is ez a kettősség van jelen. A népszerű, sokak által használt modulok esetén a magyar fordítási fájl általában megtalálható a csomagban. A fejlesztés menetéből következően ez azonban mindig az eggyel korábbi változat fordítása lehet csak, így előfordulhat, hogy nem teljes. Természetesen itt is igaz, hogy a legfrissebb fordítás beszerezhető közvetlenül a fordítási adatbázisból is, amennyiben valaki már lefordította azt.
A magyar fordítói csapat levelezőlistát tart fenn, melyen a fordítással kapcsolatos beszélgetések, egyeztetések zajlanak. Előfordul, hogy több lehetőség közül nem a megfelelő fordítást választjuk, vagy nem találjuk meg az alkalmas magyar fordítást egyes angol fordulatokhoz, kifejezésekhez. Szívesen fogadunk új ötleteket, javaslatokat a fordítással kapcsolatban, ehhez semmilyen speciális technikai eszközre nincs szükség, csupán a levelezőlistán kell felvetni a kérdést. Előfordulhat, hogy nem a megfelelő stílust vagy mondatszerkezeteket választjuk bizonyos fordítások során, esetleg nem egységes vagy félreérthető a szóhasználatunk. Az ilyen hibákkal kapcsolatos jelentéseket is szívesen látjuk.
A fordítást természetesen nem csak érdeklődő szemlélőként lehet nézni, hiszen mindig van valamilyen javítandó vagy fordítandó felület. A fordítási munkába való bekapcsolódás iránt érdeklődőknek rendelkezniük kell UTF-8 támogatással bíró szerkesztőprogrammal. Kényelmi szempontok miatt egy Gettext Portable Object szerkesztő (pl. KBabel vagy poEdit) jó választás lehet, de egy teljesen hagyományos szöveges fájlszerkesztő is megteszi, ha UTF-8 támogatással bír.
Mivel a fordításokat a localize.drupal.org kiszolgálón kezeljük, a résztvevőknek felhasználói azonosítóval kell rendelkezniük itt. Egy drupal.org felhasználói regisztrációt követően átlépve a localize.drupal.org oldalra ez a felhasználói azonosító automatikusan létrejön. Ezt követően a ezen az oldalon lehet csatlakozni a csapathoz.
Aki komolyabban szeretne a fordításokkal foglalkozni, az itt igényelhet CVS azonosítót. Ez az azonosító feljogosít arra, hogy bármely modul vagy smink magyar fordítását módosíthassuk (más nyelvi fordításokba is bele lehet írni, de ez nem ajánlott). A Drupal alapcsomag külön projektként jelenik meg.
A magyar fordítást érintő változások figyelése összetett feladat lehet, hiszen sok projekten átívelő módosulásokról lehet szó. Ezért beállítottunk egy automatikus monitoring programot, aminek a segítségével a hírolvasónkban nyomon követhetők a magyar fordításokat érintő változások.
A részvétellel kapcsolatos bármilyen kérdést, javaslatot a fordítói levelezőlistán érdemes feltenni.
A különböző kifejezések fordításakor időnként parázs vita alakult ki a helyes nyelvhasználatról, az egyértelműségről, a hagyományokról, és olyan technikai kérdésekről, melyek a Drupal felület fordítását egyszerűbbé tehetik. Úgy gondoltuk, hogy nyelvi döntéseinket, választásainkat érdemes lehet megosztani másokkal is, ezzel talán segítve más honosító projektek munkáját is, amellett, hogy a magyar felülettel ismerkedőknek is támpontokat adhatunk. Ezért az alábbiakban egy magyarázatokkal ellátott szójegyzéket teszünk közzé, jelölve az esetenként
felmerült alternatívákat, és a végső döntésünk okát.
Természetesen nem szeretnénk arra vállalkozni, hogy a magyar fordítás tudományát
újra feltaláljuk, a módszereket saját magunk definiáljuk, de sok esetben találkoztunk olyan kérdésekkel, melyeket máshol nem tárgyalnak. Szerencsére sok forrás van, melyhez fordulhatunk:
Mindenképpen alapkövetelmény volt, hogy vállalati környezetben is jól használható fordítás készüljön, így a tegezés használatát eleve kizártuk. Három lehetőség maradt, a magázás, a személytelen, illetve a magyar könyvekben előszeretettel használt többesszám első személyű megközelítés használata. Végül ezutóbbi kettő mellett döntöttünk, mert úgy ítéltük meg, hogy ez az a megoldás, ami egyenlő távolságra van a magázástól és a tegezéstől, és mindkét igényt megfogalmazó számára elfogadható. Stílusunk tehát elsősorban személytelen, illetve ahol ez nem oldható meg jól, ott többesszám első személyben szól. Ennek érzékeltetésére:
A megszólítás és a megszemélyesítés elkerülése vonatkozik a felhasználóra és a kiszolgálóra, a programra egyaránt. Néhány helyen nem tudtunk jobbat találni a magázásnál – ezek főleg a felhasználó adataival foglalkozó modulokban fordulhatnak elő.
Más projektek honosításainál szokásos formában meggyűlt a bajunk a névelők használatával, amikor azokat automatikusan elhelyezett tartalmak elé kell illesztenünk. Mivel megítélésünk szerint az „a(z)” típusú névelő használat nem helyes, ezt mindenképpen kerüljük. Sajnos nem minden esetben helyes magyar nyelven a névelő elhagyása, ennél jobbat rendelkezésre álló eszközeinkkel azonban nem tehettünk. Az alábbi példákban a @user helyére a Drupal az oldal előállítása közben helyez be egy értéket:
@user felhasználó törölve lett@user felhasználó törölve lett@user felhasználó törölve lett@user felhasználó törölve lettHasonló kérdés a többesszámok használatának problémája, ahol szintén nem tartjuk járhatónak a „felhasználó(k)” típusú fordítást. Ehelyett olyan változatot használunk, amely az adott helyzetben megfelelőbb. Általában a többesszám alkalmazása helyénvalóbb. Például:
Y. m. d. H.i azaz 2004. 10. 28. 14.21Y. F j. H.i azaz 2004. október 28. 14.21Y. F j., l H.i azaz 2004. október 28., csütörtök 14.21Ezek csak javaslatok, a magyar nyelv szabályait figyelembe véve más kombinációk is előfordulhatnak. Fontos szempontok:
Idézőjeleknek helyes használata (UTF-8): „idézet”. Kérünk mindenkit a bonyodalmak
elkerülése érdekében ezeket használja!
Hasonlóképpen elvárható a helyes nagykötőjel- illetve gondolatjel-használat (a magyar nyelv félkvirtmínuszt használ ezekre), valamint a kötött (nem törő) szóköz megfelelő alkalmazása is.
Windows alatt eképpen csalható elő:
Linux alatt több járható út van, az egyik az Xmodmap alapú billentyű-hozzárendelés, mely az altgr+e kombinációra és az altgr+r kombinációra rakja a két idézőjelet:
xmodmap -e 'keycode 26 = e E doublelowquotemark'
xmodmap -e 'keycode 27 = r R rightdoublequotemark'A másik mód az X Window System rendszerekhez készült magyar billentyűzetkiosztás-fájl felülbírálása.
sudo cp xkb-hu.txt /usr/share/X11/xkb/rules/husetxkbmap -layout hu -variant nodeadkeys| Csatolmány | Méret |
|---|---|
| xkb-hu.txt | 14.16 KB |
Ez az oldal a Localization Client modul segítségével történő távoli fordításhoz nyújt segítséget.
Előkészületek: A fordítások távoli beküldéséhez rendelkeznünk kell saját felhasználói fiókkal a http://drupal.org webhelyen. Ha valaki már rendelkezik ilyennel, akkor bejelentkezés után át kell lépnie a http://localize.drupal.org webhelyre. Ha még nem volt ott felhasználói profilja, akkor az automatikusan létrejön. Ezt követően a http://localize.drupal.org/translate/languages/hu oldalon található „Join” hivatkozás segítségével lehet csatlakozni a csapathoz.
Beállítás: A Localization Client modul telepítését követően az admin/settings/language/configure/l10n_client oldalon be kell kapcsolni a „Fordítások megosztásának engedélyezése a kiszolgálóval” jelölőnégyzetet, a használandó fordítási kiszolgáló mezőbe pedig a http://localize.drupal.org címet kell írni. Ezt követően a http://drupal.org webhelyre be kell jelentkezni a saját felhasználói névvel és jelszóval. Majd ismét a távoli (saját) weboldalon be kell lépni a saját felhasználói adatok szerkesztésébe. Itt egy új mező található, a „Localization Server API kulcs”. A mező leírásában szerepel egy hivatkozás, erre kattintva tudható meg az az érték, amit a mezőbe kell másolni.
Ellenőrzés: A Localization Client felületén le kell fordítani pár karaktersorozatot, majd el kell látogatni az eseménynaplóba (admin/reports/dblog) és ott az l10n_client típusra szűrni. Ekkor látható, hogy a fordítások rendben megérkeznek-e a közös fordítási kiszolgálóra, illetve ha nem, akkor miért nem.
Konkrét modulfordítás előtt: Célszerű felvenni a kapcsolatot a fordítási adminisztrátorokkal (irc, levlista, levél, személyes üzenet, skype, msn, stb.), hogy ha vannak élő javaslatok a kiszemelt modulra, akkor azt lehetőleg mihamarabb intézzék el. Ezt követően a modul fordítását a http://localize.drupal.org/node/410 oldal értelemszerű szerkesztésével lehet a közösség tudtára adni. (Ha valaki már fordítja, akkor vele is fel lehet venni a kapcsolatot, hogy miújság az ügyben.) Ha valamelyik fordítási adminisztrátor visszajelzi, hogy nincs már élő javaslat, akkor a http://localize.drupal.org/translate/languages/hu/export oldalon exportálni kell a modul adott változatának jelenleg érvényes fordítását, majd ezt a fájlt a saját adatbázisban kell importálni az admin/build/translate/import oldalon, mégpedig a „A feltöltött karaktersorozatok felülírják a létezőket, az új karaktersorozatokkal bővül az adatbázis” lehetőség kiválasztásával.
Fordítás: A saját webhelyen ezt követően el lehet kezdeni a modul fordítását a Localization Client modul felületén, fokozottan ügyelve arra, hogy a lefordított magyar karaktersorozat elsőre legyen hibátlan. A „Fordítás mentése” nyomógomb ugyanis azonnal küldi a fordítást a közös kiszolgálóra is, és egyetlen bitnyi eltérés is új javaslatot eredményez. Tehát, ha valaki elment egy fordítást, majd észreveszi, hogy a vessző után kéne egy szóköz is, és ismételten ráment, abból 2 javaslat lesz a közös kiszolgálón. Amivel persze semmi probléma nincs, csak ebből minél kevesebb legyen ha lehet, mivel ez az adminisztrátoroknak plusz egy elutasítást jelent.
Kész: Kész? A Localization Client modul felületén elég nehéz 100%-ban lefordítani egy modult. Ha valaki úgy gondolja, hogy elkészült, akkor a Translation template extractor modul segítségével kinyerheti a modul fordítását a saját adatbázisából. A kinyert fájl fordítottsága a korábbi lapokon említett szerkesztők segítségével (például PoEdit) ellenőrizhető, illetve a fordítottság ellenőrzésére remek eszköz még a Language checker modul is (bár ez is igényli a Translation template extractor modul telepítését). A hiányzó fordításokat lehet pótolni a PoEdit segítségével, majd az elkészült teljes fordítást az admin/build/translate/import oldalon lehet a saját adatbázis részévé tenni. Ezt a fájlt azonban a http://localize.drupal.org/translate/languages/hu/import oldalon is nagyon várjuk, hogy a modul minden karaktersorozatára legyen javaslat.
Tényleg kész: A fent említett kapcsolatfelvételi módok valamelyikén minél több fordítási adminisztátorral célszerű közölni az örömhírt, hogy mehet kattintgatni.
A localize.drupal.org webhelyen a Localization Server modul kezeli a fordításokat. Mivel nem mindenki ismeri tüzetesen ennek működését, legyen itt pár szó arról, hogyan lehet valaki hatékony a fordításokban. Először is azt kell tudni, hogy ez a modul önálló karaktersorozatokat kezel. Ebből az következik, hogy ha egy szöveg már előfordult bármelyik modulban, annak egyéb modulokban történő előfordulásait nem tekinti új szövegnek. Tehát egy karaktersorozatnak (pl. „Undo”) pontosan egy fordítása lehet, függetlenül attól, hogy mely modulokban fordul elő. (Ez a Drupal 7 megjelenésével már nem így lesz.)
Tehát, így működik a Localization Server, amikor valaki beküld egy fordítási fájlt:
Milyen problémák adódhatnak ebből?
Miért? Mert mint fentebb szó volt róla, 1 karaktersorozatnak 1 fordítása lehet jelenleg, de ezt rengeteg modul használhatja Például az „Undo” esetében a dokumentáció írásakor:
Ha el lenne fogadva az újonnan beküldött szöveg, akkor az a fenti modulok mindegyikében módosulna, és ez nem feltétlenül jelentene jót. Bár volt már rá példa, de elég ritka. Tehát, akkor hogy a leghatékonyabb a fordítás?