2011-10-05 17 views
10

Robię i18n dla projektu php za pomocą gettext. Chciałbym użyć automatic comment feature, aby dać wskazówki tłumaczom podczas tłumaczenia długich zwrotów zastępowanych przez id. Co chcę uzyskać jest następujący plik POAutomatyczne generowanie komentarzy Gettext

#: full-path-to-file/index.phtml:3 
#. a very long text which should replaced by _('foobar') 
msgid "foobar" 
msgstr "" 

w ten sposób tłumacz może zobaczyć, co on powinien tłumaczyć kiedy widzi kluczową foobar użyciu poedit lub jakieś narzędzie analogowej w polu programista komentarza.

Próbowałem z tego kodu, ale to nie działa

<?php 
/// TRANSLATORS: a very long text which should replaced by _('foobar') 
_('foobar'); 
?> 

Am I brakuje czegoś lub automatyczne komentarze po prostu nie działa dla php?

Nawet Wikipedia mentions ta funkcja, próbowałem skopiować ich przykładem w pliku C, ale nie mogę dostać pracy nawet C. Linia komend mam używany jest

xgettext -C -o - main.c 

Ale generowana moc jest

#: main.c:16 
#, c-format 
msgid "My name is %s.\n" 
msgstr "" 

Więc jestem zdecydowanie brakuje coś powinienem użyć dowolnego xgettext flagę lub konkretną wersję, aby włączyć tę funkcję.

+0

W przypadku, gdy spróbujesz wyodrębnić z javascript używając --language = Python, dołącz hash # do początku komentarza, co oznacza, że ​​zaczynasz komentarze takie jak // #, w ten sposób xgettext poprawnie wypisze komentarze do tłumaczenia. –

Odpowiedz

8

Aby dokonać xgettext wyodrębnić komentarze ze źródła, musisz przekazać argument, aby powiedzieć, jakie komentarze należy szukać.

Z documentation:

-c[tag]
--add-comments[=tag]

Umieść komentarz bloki zaczynając tagu i poprzedzającej linii kluczowe w pliku wyjściowym. Bez tagu opcja oznacza wstawienie wszystkich bloków komentarzy poprzedzających wiersze słów kluczowych w pliku wyjściowym .

Przechodząc -c/ lub --add-comments=/ jako argument pozwoli rozpoznać formatu „triple ukośnik”.

+0

Tak, właśnie znalazłem to sam. Zasługuję na duży RTFM ... – Fabio

+0

@John Flatness - jakikolwiek pomysł, dlaczego to nie działa z plikami .js w trybie Python? Więcej szczegółów tutaj: http://stackoverflow.com/questions/12052844/extract-translator-comments-with-xgettext-from-javascript-in-python-mode – ragulka

Powiązane problemy