On 3.9.2007, Alexander Shopov wrote:
> Здравейте,
> Можете ли да ми кажете как се обновяват по принцип po-файловете в КДЕ,
> ОО и Мозила? Ползвате ли множествените форми? Колко числа сте обявили?
> Аз лично ползвам 2.
> В ГНОМ се ползва една програмка intltool-update, но доколкото разбирам -
> напълно е възможно е да е неизползваема в някои ситуации.
> В момента ще ми се наложи да правя едни фокуси с търсене и замяна в
> множество файлове.
> Смятам да си поиграя със sed, за да преформатирам преведените съобщения
> на един ред. Така ще мога да си опростя следващата стъпка. По принцип
> това е редно да е в intltools, но засега ще изчака.
> Та просто ми е интересно дали на другите проекти ще им трябва такова нещо.
> Поздрави:
> ал_шопов

Привет,
ще споделя как го правя в ООо за момента, че има разни проекти евентуално да 
се минава на XLIFF и там за сега нямам идея как ще бъде :)

При нас po формата се ползва като междинен формат само за превода. Основни 
формат в който се експортват и импортват стринговете е GSI. Той е като 
структура е много прост, но неевективен. Затове се конвертира до po файлове с 
които вече работим. Освен към po се експортват и към pot. Значи, по принцип 
идеята е да периодично да се изваждат стринговете от сорса в GSI и да се 
конвертира до pot файлове. Това го прави един от замотговорниците по l10n 
проекта на ООо. Качва pot фаловете архивирани на един сървър. От там ги 
свалям при мен. Паза при мен предишния архив с pot файлове. От тези 2 архива 
разархивирам pot файловете в 2 отделни директории на които им правя diff. 
После този diff файл го минавам през една моя Java програмка която маха 
излишните неща, т.е. понеже има разни дати във всеки файл кога е правен това 
се включва във diff файла и трябва да го отстраня за да видя действително в 
кои файлове има промени по стринговете. В новополучения файл гледам по кои 
файлове има промени и всеки файл вече го отварям в poEdit и от там му давам 
да си обнови каталога, като му подавам съответно новия pot файл. Има 2 
екстрени ситуации. Едната е когато има нов pot файл. Тогава копирам новия 
файл, сменям му разширението, оправям му някои свойства чрез poEdit-а или 
директно ги копирам от друг po файл чрез текстов редактор и превеждаме новия 
po файл. Друата ситуация е, когато е отпаднал някой файл. Това от онзи diff 
файл няма как да се види. Затова единия начин е да си пусна един KBabel 
Catalog Manager. Той хваща когато някой po е отпаднал защото му се подава 
къде се намират po и pot файловете. Освен чрез него мога да го хвана при 
обратното конвертиране от po до GSI. При това конвертиране освен po 
файловете, като шаблон се подава и GSI стринговете на английски (може и на 
друг някой език). Тогава интрумента вижда че има po файлове, които в шаблона 
ги няма и изписква че няма шаблон за тях.
Та това е което правя аз. Надявам се да съм го обяснил разбираемо :). Ако 
някой има въпроси да пита.

-------------------------------------------------------------
Hristo Simeonov Hristov
Leader of OpenOffice.org - Bulgarian
GnuPG key 0x0347FF73: AE8D 6D5E CC07 2B40 EC68 5FFE D6EE 9505 0347 FF73
_______________________________________________
Dict mailing list
[email protected]
http://zver.fsa-bg.org/cgi-bin/mailman/listinfo/dict

Raspunde prin e-mail lui