Synopsis: Pek çok GNU Linux dağıtımı ve pek çok özgür yazılım günümüzde ne yazık ki ülkemiz dışında geliştirlmektedir. Bunun doğal sonucu olarak bu dağıtım ve uygulamalar Türkçe desteğine sahip bulunmamaktadır. Şu aşamada, İngilizce bilgisi yeterli düzeyde olan özgür yazılım kullanıcılarına büyük işler düşmektedir. Bu yazıdaki rehber, çeviri işlerine yeni başlayacak olan arkadaşlarımıza öz bilgiler vermek için hazırlanmış olup işin ayrıntısına girilmeyecektir. Bu makalede, GNU Gettext araçları ile PO dosyası çevirisi anlatılmıştır. Diğer dosya ve yerelleştirme biçimleri yazı konusu yapılmamıştır.
|
Contents
YENİ BAŞLAYANLAR İÇİN KISA YERELLEŞTİRME REHBERİ
Dikkat edilmesi gereken ortak hususlar
- Öncelikle okuduğunuzu anlayabilecek bir İngilizce dil bilgisine, düzgün bir Türkçe'ye, yazım kurallarına hakimiyete, kullanmakta olduğunuz Linux sistemi ve çevireceğiniz yazılımı tamamı olmasa da genel özellikleri ile kullanma yeteneğine, Linux' ta kullanılan yazılım adları ve terimler için kullanılan ortak Türkçe sözcük karşılıklarını kullanma özenine ve son olarak bu iş için sabra sahip olduğunuzdan emin olun.
Çeviri yaparken anlamını bilmediğiniz ifadeler için araştırma yapın. Olur olmaz sözlük çevirilerini lütfen kullanmayın.
- Öncelikle çevirisini yapacağınız yazılımın sitesini ziyaret ederek yapılmış veya yapılmakta olan bir çeviri çalışması var mı kontrol edin.
- Yazılım için Türkçe çeviri yapan birileri varsa, bu kişi veya bir ekip olabilir, bu kişiler veya ekip lideri ile temasa geçip yardım teklif edin.
- Gerekli çeviri araçlarını sisteminize kurun, bunlar gettext paketleri, isteğe göre KDE3 masaüstleri için Kbabel, KDE4 masaüstleri için Lokalize, Gnome masaüstleri için Gtranslator veya Poedit, Qt4 yazılımlar için Qt Linguist olabilir.
Mümkünse sisteminizde Zemberek kurulu olsun. Bu sayede otomatik imla denetimi yapabilirsiniz. Bu konuda hangi paketleri kuracağınız dağıtımınızın paketleme sistemine göre değişiklik gösterebilir.
Not Edin!: Çeviriyi metin düzenleyicileri ile de yapabilirsiniz, ancak bu durumda işinizin daha zor ve uzun süreceğini, yapılan çevirinin doğruluk ve tutarlılığının daha zor denetlenebileceğini unutmayın. |
- Çevireceğiniz yazılımın nasıl çevrilmesi gerektiği ile ilgili sitesinde ve/veya kaynak paketinde belgeler varsa mutlaka okuyun.
- Çevireceğiniz yazılımın kaynak kodunda çevirilebilecek bir .pot (Gettext kullanılıyorsa) veya .ts (Qt 4 kullanılıyorsa) dosyası arayın.
Bu dosya hiç çevrilmemiş olan, kaynak dil dosyasıdır.
GNU Gettext kataloglarının çevirisi
Pot dosyasından Po dosyası oluşturmak
Bir yazılımın çeviri dosyası .pot uantılı bir dosyadır. Asıl çeviri yapılacak dosya ise po uzantılı dosyadır. Çevirisini yapacağınız yazılımın hiç Türkçe desteği yoksa kaynak arşivinde de bir tr.po dosyası bulunmayacaktır. Bu durumda aşağıdaki komut ile çevirisini yapacağımız po dosyasınıı oluştururuz:
$ msginit --locale=tr --input=yazılım_adı.pot |
Bu şekilde bir tr.po dosyası elde ettik.
Çeviriyi Yapmak
Herhangi bir çeviri aracı ile po dosyasını açtığımızda, karşımıza temel olarak üç parçalı bir ekran çıkar. Üst kısımda tüm po dosyasının içeriğinin görüntülendiği alan, altta bir kısımda çevirisi yapılacak satırın bulunduğu alan ve son olarak çevirimizi gireceğimiz boş bir alan...
- Bazı dosyalarda çoğul çeviri mevcut olabilir. Bunun anlamı, bir satır hem bir tek şeyi ifade edebilir, hem de birden fazla şeyi.. Mesela,
msgid " - Credits expired for %u client!" msgid_plural " - Credits expired for %u clients!"
Burada, dikkat etmemiz gereken, çeviride kullandığımız araçta bununla ilgili gerekli ayarları yapmamızdır.
Not Edin!: Türkçe için bu ayar nplurals=1; plural=0; şeklindedir. |
- Satır satır çeviriye başlayın. Çeviri yaparken şu hususlara dikkat edin:
- Çevrilecek olan satırdaki %s %d gibi değişkenleri mutlaka uygun yere ekleyin.
ÖRNEK 1:
msgid "Open Remote Location: %1" msgstr "Uzak konumu aç: %1"
ÖRNEK 2:
msgid "Please enter password for \"%1\" to continue." msgstr "Lütfen \"%1\" için şifre girin. "
- Değişkenlerle birlikte olan işaretleri olduğu gibi bırakın.(Bkz. Örnek 2: Burada çift tırnak işaretinden önce gelen yatık ayraç işareti bir kaçış işareti olup, oradaki çift tırnak işaretinin metne dahil olmasını sağlar.)
- Bazı satırların sonunda \n işaretini göreceksiniz. Bu işaretin anlamı, cümlenin orada bir alt satırda devam ettiğidir. Gerekli yerlerde bunu mutlaka kullanın. Metnin aslında bu işaret yoksa, çeviride bunu kulanmayın. Aksi halde gettext araçları yaptığınız çeviride hata verir.
- Burada şu hususa geliyoruz, mümkün olduğunca kısa ifadeler kullanın. Asıl metnin uzunluğunu aşmamaya çalışın. Aksi halde yazılımı kullanırken uzun ifadelerin eksik görünebileceğini veya varsa grafiksel arayüzdeki kutunun içinden taşacağını unutmayın. Bir hatırlatma daha, ifadeleri kısaltacağım diyerek anlamsız veya eksik şeyler yazmayın.
- Noktalama işaretlerinden sonra mutlaka bir boşluk verin:
msgstr "Bu satır,oldukça yanlış bir satırdır."'''==> YANLIŞ''' msgstr "Bu satır, oldukça doğru bir satırdır."'''==> DOĞRU'''
- Çeviride kısayol işaretleri ile karşlışabilirsiniz. Bu işaretleri değiştirmeden istediğiniz harfin önünde kullanabilirsiniz. Uygun olanı, işaret kelimenin başında ise sizin de kelimenin başında kullanmanızdır:
msgid "&Add..." msgstr "&Ekle..."
msgid "_Add" msgstr "_Ekle..."
- Mutlaka uygulamanın özgün kısayol şemasının kullanılması gerekiyorsa kısayolları şu şekilde de belirtebilirsiniz:
msgid "&Add..." msgstr "Ekle...(&A)"
msgid "_Add" msgstr "Ekle...(_A)"
- Çeviride, doğruluğundan emin olmadığınız satırları bulanık (fuzzy) bırakın. Bunun anlamı, o satırın, gettext araçlarınca dosya kullanım için derlendiğinde; çevrilmiş kısımlara katılmayacağıdır. Bu satırlar dosyada mevcut, ancak henüz tam çevrilmemiş sayılacaklardır. Daha sonra uygun çeviri için yeniden o satıra dönebilirsiniz.
- Çeviri tamamlandığında yazım yanlışlarını denetleyin ve dosyayı tr.po olarak farklı kaydedin. KBabel gibi araçlar bu sırada gettext uyumluluğu ve bağlamsal denetimi (ayarlanmışsa) otomatik yaparlar ve hata varsa bunu size gösterirler.
- Böyle bir araç kullanmadıysanız tr.po dosyasının olduğu dizinde bir komut satırı açın. Komut satırında;
$ msgfmt -vco /dev/null tr.po |
komutunu verin. Ekranda varsa hatalar ve hangi satırlarda oldukları; kaç tane çevrilmiş, çevrilmemiş ve bulanık satır olduğunu görebilirsiniz. Ekran çıktılarına göre, varsa hataları düzeltip eksiklikleri giderin.
- Şimdi mümkün ise çevirisini yaptığınız uygulamayı sisteminize kurun. Bu aşamada yaptığımız çevirinin nasıl göründüğün denetleyeceğiz. Aşağıdaki komutu çalıştırın:
$ msgfmt -c --statistics tr.po |
Yukarıdaki komut bize hem çeviri ile ilgili varsa hataları bir kez daha gösterirken hem de bu sırada bir messages.mo dosyası oluşturacktır.
Not Edin!: MO uzantılı dosyalar ikili hale getirilmiş (binary) çeviri dosyalarıdırlar ve kullanıma hazır çevirileri barındırırlar. |
Çeviriniz hatasız ve istediğiniz gibi ise bu dosyayı yazılım_adı.mo olarak yeniden adlandırın.(Buradaki yazılımadı, çevirisini yaptığınız yazılımın adıdır. (Örneğin amarok.mo)) Dosyayı dağıtımınızda Türkçe yerelleştirilmiş dosyaları hangi dizinde ise oraya kopyalayın. Bu dizin Mageia'da /usr/share/locale/tr/LC_MESSAGES/
dizinidir.
- Şimdi, çevirisini yaptığınız yazılımı çalıştırın ve çevirinizin nasıl göründüğünü, hangi yerlerde hata yaptığınızı veya yanlış çevirdiğinizi denetleyip, aksaklıkları yukarıdaki kısımlarda anlatıldığı gibi giderin.
- Yapmış olduğunuz çevirinin .po dosyasını varsa çeviri ekibi liderine, diğer Türkçe çevirmenlerine; bu kişiler yoksa yazılımın yazarına gönderin. Hepsi bu kadar, artık bu kişilerin denetlemelerinden ve varsa sizi uyardıkları hataları giderdikten sonra yazılımı kullananların ve bizlerin teşekkürlerini şimdiden kabul edin. Linux topluluğuna katıkıda bulunmanın mutluluğunu yaşayın.
Çeviriyi güncel tutmak
Zamanla çevirisini yaptığınız yazılımın yeni sürümleri yayınlanabilir. Bu sürümlerde yeni özelliklerin eklenmesi, bazılarının çıkartılması veya değiştirilmesi sonucu çeviriniz güncelliğini yitirebilir. Yazılım geliştiricisi genellikle sizin çeviri dosyanızı da yazılımı ile birlikte günceller ve çevrilmemiş yeni satırlar ortaya çıkar. Yukarıda anlatıldığı şekilde eksik kalan kısımlar çevrilerek güncellik korunmuş olur.
Ancak bazen geliştiriciler çeviri dosyaların güncellemeyi unutabilirler. Bu durumda çevirinizi elle güncellemeniz gerekecektir.
Bu durumda önce yukarıda anlatılan ilk altı aşamayı uygulayın. Sonra tr.po dosyasının olduğu dizinde bir komut satırı açın. Komut satırında;
msgmerge tr.po /.pot dosyasının/bulunduğu/yer/yazılım_adı.pot > yeni_tr.po
komutunu verin. Oluşan yeni_tr.po dosyası üzerinde yukarıdaki yedinci aşamadan itibaren olan adımları uygulayın.
Warning! Bir başkasının yaptığı çeviriyi güncellemekteyseniz ve emeğe saygı duyuyorsanız; LÜTFEN; önceki çevirmenlere ait bilgileri silmeyiniz. |
Bu kısa rehberin sonu. Yerelleştirme ve çeviri işlerinde çalışmak isteyen herkese umarım yardımı olur. Unutmayın, bu çalışmalar hem Linux ve Özgür Yazılım Dünyasına hem de ulusal benliğimize, Türkçe'ye, çok önemli bir katkı olacaktır. Hepinize başarılar ve teşekkürler.
Kaynaklar:
Enixma Nisan 2008 Sayısı (KBabel Rehberi)
http://tr.pardus-wiki.org/NASIL:Pardus_Türkçe_Çeviri_Gönüllü_Programı
http://www.kde.org.tr/index.php?option=com_content&task=view&id=68&Itemid=84
http://www.kde.org.tr/index.php?option=com_content&task=view&id=30&Itemid=51
http://www.kde.org.tr/index.php?option=com_content&task=view&id=47&Itemid=82
http://www.tdk.gov.tr/TR/BelgeGoster.aspx?F6E10F8892433CFFAAF6AA849816B2EF972ACAD7D1AFFDBF
http://gnu-tr.sourceforge.net/
Yazar
YAZAN: tarakbumba 07:32, 6 Temmuz 2010 (UTC)