Szövegkörnyezet figyelembevétele?

cerasus képe

Sziasztok!

Olyan problémával küzdök, hogy letöltöttem a magyar fordítást, és be is importáltam, és szép magyar lett minden, de én balga, nekiálltam az egyéb kis contrib moduljaimat is lefordítani.

A következő a hibajelenség: a .po file importálásánál van egy olyan form-elem, hogy "Mode", ami magyarul "Az importálás módja". Ez szép meg minden, de például a premium.module is szeretné kiírni, hogy "Mode", de nem egészen az importálás témaköréhez kapcsolódóan.

Persze miután lefordítottam mégis a premium.module Mode-ját is, és importáltam, a .po-importálásnál jelenik meg hülyeség.

Van a durva hackelésen (modulok angol szövegeinek átírása) és gányoláson (nem foglalkozom inkább a .po-importálós formmal, úgysincs szem előtt) túl valami értelmes megoldása a helyzetnek? Magyarán van valami lehetőségem arra, hogy kontextus szerint fordítsak egy kifejezést?

cerasus

aries képe

Sajnos erre nincs jelenleg megoldás. Nem tudod jelenleg megmondani, hiszen nem tudni, hogy az adott modul hol és hogyan jelenik meg tulajdonképpen. Talán URL alapján lehetne ezt szabályozni, de jelenleg erre tudtommal javaslat szintjén sincs komoly elhatározás.

Jelenleg a legegyszerűbb megoldás az lenne, ha a sminkben az adott URL esetében reguláris kifejezéssel kicserélnéd a szöveget.

Üdv:

Aries
http://aries.mindworks.hu

0
0
Hojtsy Gábor képe

A GNU Gettext-ben ilyen lehetőség nincs (legalábbis ha nem használsz több textdomaint, amit viszont a Drupal nem támogat).

A helyi megoldás az lenne, hogy a 'Mode' ne legyen ilyen speciálisan lefordítva a locale felületnél, és akkor remélhetőleg más moduloknál sem fog problémát okozni.

A széles körűbb megoldás, ha az angol szöveget a Drupal alap kódban kiterjesztik ezen a területen. Erre egy hibajelentést kellene beküldeni a javasolt új karaktersorozattal.

0
0
cerasus képe

Bár a locales_source táblában tárol az eredeti sztring helyére vonatkozó információt, talán valahogy a t() funkcióban ki lehetne bányászni ez alapján a megfelelő fordítást.

Köszönöm mindkettőtöknek a választ!

0
0
Hojtsy Gábor képe

Ha a t() mindig megkérdezné, hogy melyik szkript melyik soráról hívták meg (debug_backtrace() PHP függvény), akkor a program sebességével nagyon nem lennél megelégedve.

0
0