Używam biblioteki Gettext.js do zlokalizowania mojej zawartości wygenerowanej z pliku JS. Teraz sytuacja polega na tym, że muszę ręcznie tworzyć i zapisywać wszystkie pliki po. Wiem, że możemy skanować pliki php pod kątem ciągów gettext za pomocą PoEdit. Czy możliwe jest skanowanie plików JS pod kątem ciągów gettext przy użyciu PoEdit?jak wygenerować plik po z pliku js za pomocą poedit
Odpowiedz
Osiągnięto to, tworząc nowy parser języka Pythona w programie PoEdit.
Plik> Preferencje> Parsery> Nowa
Język:
JS
Lista rozszerzeń:
*.js
Parser polecenia:
xgettext --language=Python --force-po -o %o %C %K %F
pozycji listy słów kluczowych:
-k%k
pozycja na liście plików wejściowych:
%f
kod źródłowy charset:
--from-code=%c
znalazłem ten samouczek podczas poszukiwania na to, co pomogło mi osiągnąć sytuację Tutorial Here>>
Właściwie samouczek jest w języku francuskim, a link jest tłumaczony przez google (na język angielski sh) jeden.
Program xgettext poleceń służy do skanowania kodu źródłowego i może przetwarzać następujące języki:
C, C++, ObjectiveC, Shell, Python, Lisp, Emacs Lisp, librep, Schemat, Java, C#, awk TCL , Perl, PHP, GCC-source, Glade
Chociaż JavaScript nie jest wymieniony jako język, po prostu wypróbowałem go z kilkoma i Perl faktycznie działał. Spróbuj tego:
echo " testFunc('foo');" > test.js;
xgettext --keyword=testFunc --output=- test.js --language="perl";
Aby to zrobić od poedit, otwarty Preferences > Parsers > Perl
dodać ;*.js
do listy rozszerzeń plików i dodać --language=Perl
po xgettext
w zakresie poleceń Parser. To działało dla mnie i mogłem w ten sposób uzyskać nowe ciągi z pliku JS.
Chociaż nie wiem, jak działa gettext.js, lepszym rozwiązaniem może być convert PO files to a native JavaScript file format.
Od wersji xgettext 0.18.3, można użyć JavaScript as the language parameter.
Ta wersja xgettext jest używana w Poedit od co najmniej wersji 1.6.2.
xgettext
obsługuje JavaScript natywnie, więc komenda jest prosta:
xgettext --output=output.pot --language=JavaScript *.js
To pracował dla mnie, kiedy zmienił '--language = Python' do' --language = C' – L0LN1NJ4