Sabırlı olduğunu düşünen birisi var mı?
LibreOffice projesindeki çevirilerin pofilter ile denetlenmesi gerekiyor.
Şöyle bir alias tanımlıyoruz
alias potestgnomebig="pofilter --gnome $1 --output result_big.txt.po"
Sonra ilgili dosyayı potestgnome ilgilidosya.po ile işlediğimizde karşımıza çeviri ile ilgili çeşitli kalite iyileştirmeleri sunuyor.
Malesef bu öneriler dosya büyüdükçe yönetmesi zor bir seviyede uzun olabiliyor.
ikinci bir alias ve kotrol ise hızlandırıcılarla ilgili
alias potestgnome="pofilter --gnome -t accelerators $1 --output result.txt.po"
Buradaki çıktıda amaç hızlandırıcıların varlığını ve yokluğunu sınamak.
cui/ modülündeki messages.po dosyasına uyguladığım test sonucu ekteki dosya gibidir. En çok çeviri içeren dosyalardan birisi bu modül.
Bu dosyalar uzantısı po olsa da özünde metin dosyalarıdır. İnceleyerek önerileri değerlendirebilirsiniz.
Mesela yanlış hızlandırıcılar genel olarak önemsiz.
Accelerator '_' appears before an invalid accelerator character 'ş'
Fakat kayıp hızlandırıcılar uygulanmaya değer
# (pofilter) accelerators: Missing accelerator '_'
result_big.txt.po dosyasını incelediğinizde aşağıdaki gibi uyarılar görebilirsiniz:
# (pofilter) endpunc: Different punctuation at the end
Burada cümle sonunda farklı bir imla kullanıldığını söylüyor. Arada false-positive olsa da genelde cümle sonlarının nokta ile bitip bitmemesi gibi konularda uyarı veriyor. Genelde bu değişikliğin yapılması gerekebiliyor.
# (pofilter) doublequoting: Different quotation marks
Çok nadir olarak tek tırnak ayracında hatalı sonuç üretse de bu öneri genelde doğru yönde bir tavsiye üretiyor.
# (pofilter) sentencecount: Different number of sentences: 1 ≠ 2
Genel olarak ingilizce çevirilerin bölündüğü veya 1. veya 2. gibi kullanımlarda ortaya çıkıyor. Çoğunlukla false-positive.
# (pofilter) unchanged: Consider translating
Çevirinin özgün metin ile aynı olduğu durumlarda çıkıyor. bazen özgün metinin çeviri diye yapıştırıldığı metinleri yakalamakta işe yarıyor. Marka veya ürün ismi gibi kimi değiştirilemeyen metinlerde gereksiz uyarı oluşturuyor.
# (pofilter) acronyms: Consider not translating acronyms: OK
Bu sadece OK değil URL gibi kısaltmalarda da karşımıza çıkıyor. Genel olarak işlevsiz.
# (pofilter) numbers: Different numbers
Mesela bu uyarılar önemli ve çeviri hatası var. Yakalamış olduk!
msgctxt "borderpage|linewidthlb" msgid "Medium (1.5pt)" msgstr "Orta (0.5pt)"
Zor bir konu olarak aşağıdaki uyarı var:
# (pofilter) simplecaps: Different capitalization
Menülerde ve düğmelerde “Başlık Düzeni” dediğimiz ilk harfler büyük bir kullanım tercih ediliyor. Bu düzende “This is a Book” gibi bir İngilizce metin ile karşılaşabilirsiniz. Bu tip bir metin menü veya düğme ise “Bu Bir Kitaptır” gibi çevirilmesi gerekiyor. Fakat kimi yerlerde mesela “Rename” İngilizcede tek kelime iken türkçede “Yeniden adlandır” veya menü ise “Yeniden Adlandır” şeklinde çevrilmesi gerekebiliyor. Bağlam değerlerinden veya farklı şekillerde anlam çıkarıp bu değerleri duruma uygun şekilde çevirmek gerekiyor. Cidden hassasiyet isteyen bir konu.
#: cui/uiconfig/ui/menuassignpage.ui:140 msgctxt "menuassignpage|renameItem" msgid "Rename..." msgstr "Yeniden Adlandır..."
Örneğin burada msgctxt değerinden bağlamını görebiliyor. Bu bir yeniden adlandırma nesnesi. Ayrıca üç nokta ise bunun tıklandığında yeni bir iletişim kutusu veya sayfa açacağına işaret ediyor. Bu durumda “Başlık Düzeni” kullanmak gerekiyor.
Bir başka örnek inceleyelim.
# (pofilter) brackets: Added '(', ')' # (pofilter) simplecaps: Different capitalization #. F4GTM #: cui/uiconfig/ui/optdeeplpage.ui:54 msgctxt "optdeeplpage|privacy" msgid "API URL:" msgstr "API Adresi (URL):"
Mesela bu örnekte API çevirisi doğru. Çünkü dilimizde API için yerleşik bir yerelleştirme çevirisi oturmadı. Fakat URL ve URI için URL veya URI şeklinde bırakmak veya Adres şeklinde çevirmekte bir sakınca yok. URL ile URI aynı şeyler değiller. Şahsen URL geçen yerleri adres şeklinde çevirdikten sonra ek olarak URL diye belirtmeye gerek yok.
pofilter burada added dedikten sonra aç parantez ve kapa parantez uyarısı vermiş. Eklenen değerler çeviriyi uzattığı için arayüzde beklenmedik şişmelere neden olabiliyor. Mümkünse özgün metni çok geçmemek gerek.
Bir başka örnek
# (pofilter) endpunc: Different punctuation at the end #. vAFKt #: cui/inc/tipoftheday.hrc:96 msgctxt "RID_CUI_TIPOFTHEDAY" msgid "Insert your metadata in your document with Insert ▸ Fields ▸ More Fields… ▸ Document or DocInformation." msgstr "Ekle ▸ Alanlar ▸ Daha Fazla Alan... ▸ Belge veya Belge Bilgisi yolunu kullanarak belgenize üstveri ekleyin"
Mesela bu örnekte yakalanan yazım farklılığı dışında yakalanmayan yanlış üç nokta kullanımı hatası da var. Karakterden tasarruf etmek için üç noktayı tek tek yazmak yerine üstteki karakteri kopyalayıp yapıştırmak daha kolay olacaktır.Üç noktalı karakterin, arayüzde üç noktadan daha kısa bir görüntüsü bulunuyor.
Bir başka örnek, bu sefer değişkenler çevrilmiş
# (pofilter) acronyms: Consider not translating acronyms: PRODUCTNAME # (pofilter) doublequoting: Different quotation marks # (pofilter) printf: Different printf variable: %Ü # (pofilter) variables: Do not translate: %P #. XBYtT #: cui/inc/tipoftheday.hrc:149 msgctxt "RID_CUI_TIPOFTHEDAY" msgid "Want to open hyperlinks without pressing the %MOD1 key? Uncheck “%MOD1+click required to open hyperlinks” in Tools ▸ Options ▸ %PRODUCTNAME ▸ Security ▸ Options ▸ Security Options." msgstr "%MOD1 tuşuna basmadan köprüleri mi açmak istiyorsunuz? Araçlar ▸ Seçenekler ▸ %ÜRÜN ADI ▸ Güvenlik ▸ Seçenekler ▸ Güvenlik Seçenekleri'nde “Köprüleri açmak için %MOD1+ tık gerekli\" seçeneğinin işaretini kaldırın."
Mesela üstteki örnekte büyük harfle yazılan %PRODUCTNAME korunması gerekirken çevrilmiş ve arayüzde muhtemelen LibreOffice yazısı gelecekken onun yerine Ürün Adı metninin görünmesine neden olacak.
İlgilenmek isteyen olursa şimdiden sabır diliyorum.
Ekler:
– result.po
– result_big.po