Bu güzel js gettext kütüphanesi ->http://code.google.com/p/gettext-js/ buldum ama nasıl uygulayacağımı anlamıyorum. Ben çevirileri düzenlemek için poedit kullanıyorum ve projeyi kontrol ettiğimde ve demo dosyasını çalıştırdığımda çalıştığını görebiliyorum, ancak metin üzerinde değişiklik yaptığımda .po dosyaları güncellenmiyor ve göremiyorum. yeni metin Herhangi bir fikri olan var mı? Teşekkürler!gettext kullanarak çevirme .js dosyaları
cevap
"Ben de gettext komuta python zorlamak zorunda kaldı": | Tercihler |
- Dosya Ayrıştırıcıları
- Düzenleme Python
- Edit "uzantıları listesi ..":
*.py;*.js
- Edit "Ayrıştırıcı övmek:"
xgettext --language=Python --force-po -o %o %C %K %F
Tamam. Orada leading me Kentor için
Teşekkür :)
Dizeleri bir .pot dosyasına ayıklamak için xgettext
'u çağırmanız ve .po dosyalarını güncellemek için msgmerge
'u çalıştırmanız gerekir. gettext
manual tüm gory ayrıntılarına sahiptir.
Bence xgettext'i --language = perl --force-po -o% o% C% K% F, daha iyi bir seçenek olacaktır (yerine piton daha perl kullanarak) , python tek bir alıntı (sonlandırılmamış dize hatası) içeren javascript yorum ile sorun neden olur.
Çözümünüzü denedim ve uyarılar gösterilmedi. Ancak js dosyalarında bazı çeviriler bulunamadı (Python sürümü için bulundu). Bu yüzden Python versiyonunu tercih ediyorum, hatta uyarılar ... :( – Andron
Başlangıçta her iki yapılandırmada da Python & Perl ile çalıştım, ancak bazı karmaşık altçizgi şablonları, iç içe aktarılan tırnaklar ve çift tırnak işaretleri, çıkış karakterleri vb. Ile birlikte her iki ayrıştırıcıda hatalı eski dizeler yüklendim. Bu nedenle .pot veya .po dosyalarını güncelleştiremiyorum kaynak koddan düzgün şekilde.
Ben de deneme & hatanın bir sürü sonra başarı http://code.google.com/p/gettext-js/
olmadan test Ben ayrıştırılmasını zincirleme kullanabilirsiniz keşfetti ve onu poEdit 1.5.7 iyi çalıştı. Bunlar, Mac sürümünün Kütüphane/Tercihler/net.poedit.Poedit.cfg dosyasından ayıklanan en iyi eşleşen
iletişim kutusunda kopyalanması ve yapıştırılması için aynı anda etkinleştirilmesi gereken yapılandırma parametreleridir.[Parsers/js]
Extensions=*.js;*.html
Command=xgettext --language=Python --force-po -o %o %C %K %F
KeywordItem=-k%k
FileItem=%f
CharsetItem=--from-code=%c
[Parsers/PHP]
Extensions=*.php;*.js;*.html
Command=xgettext --language=PHP --force-po -o %o %C %K %F
KeywordItem=-k%k
FileItem=%f
CharsetItem=--from-code=%c
Uzantılarınıza * .html eklemeniz gerekmeyebileceğine dikkat edin, altçizgi şablonlarını ayrıştırmak için yaptım. Umarım benim için gerçekten sinir bozucu olduğunu neden yardımcı olur :)
Ben sahip olduğum problemi anlayabildim. Mesele şu ki, dil üzerinde değişiklik yaparken Poedit ile tüm dosyaları yeniden taramak zorunda kaldım. Bu yüzden ilk önce bu proje için doğru yolları eklemeliydim ve daha sonra Python'un * .js dosyaları için ayrıştırıcısını kullanmak zorunda kaldım. Python'u gettext komutuna zorlamak zorunda kaldım. Aksi takdirde Poedit, .js dosyalarının anlaşılmadığını ve C/C++ 'yı bunları ayrıştırmaya çalışacağından şikayet eder. – Kentor