Tłumaczenie plików gettext
14 July 2008
Comments
Tłumaczenie większości aplikacji unixowych jest proste. Chodzi o większość korzystającą z GNU gettext jako "systemu" obsługi języków. Praktycznie wszystkie aplikacje C/C++ i spora część aplikacji napisana w językach interpretowalnych (np. Python) korzysta z tego rozwiązania. Musimy pobrać źródła aplikacji i sprawdzić czy ma katalog z plikami *.po - pliki te są właśnie plikami tłumaczeń gettexta.Jak tłumaczyć
Po pierwsze skontaktuj się z autorem aplikacji i spytaj czy do tłumaczenia jest tylko plik *.po, czy może coś więcej i ew. dla jakiej wersji robić tłumaczenie (gdy np. jest wersja stabilna i rozwojowa). Jeżeli mamy to już za sobą to otwieramy "czysty" plik *.po zawyczaj NAZWA_APLIKACJI.po Czysty czyli z pustymi wierszami msgstr (msgstr ""). Jeżeli nie ma to używamy istniejącego. Zapisujemy nasze tłumaczenie jako pl.po korzystając z edytora tekstowego z kodowaniem ustawionym na UTF-8 a nie iso-8859-2 (Kate spokojnie wystarczy). Tłumaczenie polega na wpisywaniu polskich fraz w msgstr bez ruszania msgid:#: guarddog.cpp:407 msgid "" "An error occured while reading the protocol database.*N*" "*N*" "Details: "%1"" msgstr "" #: guarddog.cpp:418 msgid "Zone" msgstr ""
#: guarddog.cpp:407 msgid "" "An error occured while reading the protocol database.*N*" "*N*" "Details: "%1"" msgstr "Pojawił się błąd podczas wczytywania bazy danych protokołów.*N*" "Szczegóły: "%1"" #: guarddog.cpp:418 msgid "Zone" msgstr "Obszar"
Po przetłumaczeniu wszystkiego wysyłamy plik *.po autorowi i gdy zostanie dodany do aplikacji warto sprawdzić czy tłumaczenia są poprawne, czy poprawnie zinterpretowaliśmy znaczenie fraz (Notka: "name" dla obiektu martwego to nie "imię" tylko "tytuł" lub "nazwa".). Jeżeli mieliśmy nieco do czynienia z plikami makefile to edytując makefile.in w katalogu z plikami *.po możemy od razu sprawdzić tłumaczenie kompilując i instalując aplikację.
RkBlog
Comment article