Telif Hakkı © 2004 Recai Oktaş
Yasal Uyarı
Bu belge GNU Genel Kamu Lisansı ile dağıtılmaktadır. Herkese yardımcı olması ümidiyle yazılmıştır, fakat hiç bir garanti vadedilmemektedir.
Şubat 01, 2004
| Baskı Tarihçesi | ||
|---|---|---|
| Baskı 1.0.0 | Şubat 01, 2004 | roktas |
| İlk sürüm. | ||
Özet
Debian Türkçe yerelleştirme projesi (debian-l10n-turkish) Debian dağıtımında bir bütün olarak Türkçe desteğini artırmayı hedefleyen bir projedir. Bu belgede projenin ana faaliyeti alanını oluşturan Türkçe çevirilere ilişkin çeşitli bilgiler sunulmuştur.
İçindekiler
Debian Türkçe yerelleştirme çalışmalarının önemli bir bölümünü çeviri faaliyetleri oluşturuyor. Çevirilerin belirli bir düzen içinde seyretmesi amacıyla, çevrilen belgenin türüne göre farklılıklar göstermekle birlikte aşağıda özetlenen genel akış şeması ve prensipler takip edilmektedir:
Uzun bir belge olmaması kaydıyla, çevirilerde “Bir belge-Bir çevirmen” ilkesini kullanıyoruz. Çevireceğiniz belgeyi bakımı ve gelişiminden sorumlu olduğunuz bir çocuk gibi değerlendirebilirsiniz. Bu sorumluluk son maddede belirttiğimiz “güncelleme” keyfiyeti açısından özel bir önem taşımaktadır.
Seçtiğiniz belgenin türüne ilişkin olarak detayları ilgili bölümlerde açıklanan basit prosedürleri uyguluyorsunuz. Genel hatlarıyla özetlemek gerekirse, bu prosedürler listeye gönderilen iletilerin 'Konu' alanlarında seçtiğiniz belgenin ne olduğunu ve yürüttüğünüz çalışmanın ne durumda bulunduğunu belirten bir dizi sözde-url yapılarının kullanılması esasına dayanıyor. Listeyi takip eden bir “bot” bu etiketleri ayrıştırarak yerelleştirme çalışmalarının koordinasyonunu sağlayacak bir tablo oluşturuyor.
Çeviri faaliyetlerinde ilk aşama üzerinde çalışacağınız uygun bir belge bulmaktır. “Uygunluk” tabiri, belgenin çevrilmemiş olması veya -çevrilmişse- orijinalindeki değişikliklerden dolayı güncelliğini yitirmiş olması, ve bir başka kişinin sizden önce o belge üzerinde çalışma niyeti bildirmemiş olması durumlarını kapsıyor. Bu sonuncu şartın sağlanıp sağlanmadığını koordinasyon sayfasından takip edebilirsiniz. Diğer uygunluk şartları için aciliyeti hakkında liste üzerinden haberdar olduğunuz belgelere öncelik tanımanız önerilmekle birlikte çevreyi araştırarak dilediğiniz bir belge üzerinde de karar kılabilirsiniz.
Belge dolaşımını düzenli hale getirmek ve grup çalışmalarını kolaylaştırmak gayesiyle üzerinde halen çalışılan veya çalışacak olan belgelerin birçoğunu “Sürüm denetimi” altında tutuyoruz. Bu amaçla nispeten yeni, fakat şu haliyle bile çok kararlı durumda bulunan bir “Sürüm Denetim Sistemi” kullanıyoruz: “Subversion kullanımı”. Şart olmamakla birlikte, çalışacağınız dosyaları Alioth'da konumlandırdığımız Subversion deposundan edinebilirsiniz. Belge temini için bu sistemi kullanmak istemeyeceklere yönelik olarak ilgili belge türüne ait prosedürde belirttiğimiz daha basit yollar da mevcut.
Çeviri faaliyetlerinin koordinasyonunda kullanılan sözde-url'ler, çeviri kalitesinin yükseltilmesine yönelik düzenlemeler de içeriyor. Ön çalışması tamamlanmış bir çeviri, ileti ekinde listeye gönderilerek diğer katılımcılar tarafından gözden geçiriliyor. Belge, bu şekilde bir dizi denetimden geçtikten sonra nihaî halini alacaktır.
Son aşamada, çevirisi tamamlanan belge isteğinize bağlı olarak siz veya bir başkası tarafından dağıtıma eklenmek üzere ilgili geliştiriciye iletilecektir.
Yerelleştirme çalışmalarında “Çeviri güncelliğini korumak” gibi önemli bir problemiz var. Çevirisi biten bir belgenin orijinali bir süre sonra değiştiğinde, değişikliklerin çeviriye de yansıtılması gerekiyor. Bu güncellemeyi yapmaya en uygun aday yine ilk çeviriyi yapan kişi oluyor. Dolayısıyla çevirisini tamamladığınız belgenin güncellik durumunu aynı kanalları kullanarak denetlemeyi de lütfen ihmal etmeyin.
Birçok Debian paketi kurulum sırasında etkileşimli olarak yapılandırılabilme yeteneğine sahiptir. Bu yetenek Debian mimarisinde Debconf denilen bir alt sistemin sayesindedir. Paket geliştiricisi, -eğer buna ihtiyaç varsa- sistem yöneticisinin isteğine bağlı yapılandırma seçenekleriyle ilgili soru veya açıklamalardan oluşan bir dizi mesajı, kurulum sürecinde Debconf tarafından işlenmek üzere pakete programlar. Bu bölümde ele alınacak olan po-debconf çevirileri, PO biçeminde kaydedilen bu mesajların Türkçe'ye çevrilmesi anlamını taşımaktadır. po-debconf dosyaları kaynak paket dizininde bulacağınız debian dizini altında konumlanmaktadır. (debian/po)
Üzerinde çalışacağınız uygun bir dosya bulmak için koordinasyon ve po-debconf sayfalarını incelemeniz gerekiyor. Bir paket belirlediğinizi ve bunun da adduser olduğunu varsayalım. Bu pakete ait PO dosyasına doğrudan po-debconf sayfasından erişebilir veya Subversion deposundan indirebilirsiniz. Subversion yöntemi için şu komutu kullanıyoruz:
export SVN_SSH="ssh -l user-guest"
svn checkout svn+ssh://l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/\
svn/trunk/po-debconf/adduser
veya daha kolayı “svn-tr betiği” ile:
svn-tr co po-debconf://adduser
Çeviriye girişmeden önce niyetinizi listeye bildiriyorsunuz. Niyet iletisinin 'Konu' başlığı şöyle olmalı:
[ITT] po-debconf://adduser
Ön çeviriyi tamamladığınızda tr.po dosyasını “gözden geçirme” işlemi için iletiye ilişik halde ve aşağıdaki sözde-url'yi 'Konu' alanına yazarak listeye gönderiyorsunuz:
[RFR] po-debconf://adduser
Çeviri üzerinde düzeltmeler yapıldıktan sonra bir aşamadan daha geçiyor: (yine iletiye ilişik halde çeviri dosyasını gönderiyoruz)
[LCFC] po-debconf://adduser
Bir belge için LCFC isteğinde bulunmadan önce, son RFR'dan itibaren en az üç gün geçtiğine ve bu süreç içinde gözden geçirmenin bekletilmesini bildiren bir ITR talebinin gelmediğine emin olmalıyız.
Artık tamamlanan çeviriyi sorumlu geliştiriciye gönderiyoruz. BTS üzerinden gerçekleştirilecek bu işlemi kendiniz yapabilir veya bir başkasına devredebilirsiniz. (bk. “BTS kullanımı (hata bildirimleri)”)
Türk kullanıcıların Debian'la ilk tanışmalarının mahallî bir atmosferde gerçekleşmesi için Debian kurulumunun yerelleştirilmesi diğer bütün çeviri türlerine göre özel bir önem arz ediyor. Çeşitli modüllerden oluşan Debian kurulum programı (a.k.a 'd-i') bu sayfaları okuyor olduğunuz tarihlerde hâlâ aktif olarak geliştiriliyor ve d-i çevirileri bu gelişime paralel olarak sürekli güncellenmesi gereken bir durumda. Esas itibarıyla bir yapılandırma aracı olan d-i kullanıcıya yöneltilen sorular için Debian paketlerinde olduğu gibi Debconf altyapısını kullanıyor; yani kurulum mesajlarını Türkçeye çevirme faaliyeti “Debian kurulum suiti: debian-installer://” faaliyetinden farklı değil.
d-i çeviri durumunu koordinasyon sayfasından öğrenebilirsiniz. d-i çeviri faaliyetleri diğer faaliyetlere nispetle sınırlı ve zamana çok daha duyarlı olduğundan bu alanda çalışma yapmak isteyenlerin görev paylaşımı için listeye danışmaları daha uygun olacaktır. Bununla birlikte koordinasyon sayfasında gözden geçirme aşamasında (RFR veya LCFC) bulunan çevirilere bu açıdan katkıda bulunmak yerinde olacaktır.
Listeye danışarak belirleyeceğiniz PO dosyalarına debian-installer bağından erişebilir veya daha pratiği dosyaların bütününü tek seferde Subversion depolarından indirebilirsiniz. Bu ikinci yöntem için aşağıdaki komutu kullanıyoruz:
export SVN_SSH="ssh -l user-guest"
svn checkout svn+ssh://l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/\
svn/trunk/debian-installer
veya daha kolayı “svn-tr betiği” ile:
svn-tr co debian-installer://
Diğer çevirilerle benzer şekilde debian-installer hakkında listeye gönderdiğimiz iletilerin 'Konu' başlıklarında koordinasyon için sözde-url yapılarını kullanıyoruz. Aşağıdaki ileti başlığını ele alalım:
[RFR] debian-installer://tools/autopartkit/debian/tr.po
Bu başlık şunu anlatıyor: “debian-installer kaynaklarından tools/autopartkit/debian/tr.po olarak erişeceğiniz dosya gözden geçirme aşamasındadır.”
debian-installer çevirilerinin dağıtıma eklenmesi CVS üzerinden gerçekleşmektedir. Bu işlem sadece CVS depolarına yazma hakkı olan kişiler tarafından icra edilebilir. Eğer böyle bir olanağınız yoksa çevirisi sizin sorumluluğunuzda olan d-i dosyasını yazma izni olan bir kişiye iletmeniz yeterli olacaktır.
Bu kategoride Debian'a özgü araçların (ör. dpkg, apt) PO çevirilerini amaçlıyoruz. Daha genel nitelikte programların yerelleştirilmesi için o programların ait olduğu üst kategori üzerinde faaliyet gösteren Türkçe yerelleştirme gruplarıyla irtibat kurulması doğru olacaktır. (ör.glibc için “gnu-tr” grubu, gnome-terminal için “gnome-turkish” grubu)
Çeviride takip edilecek yöntem Debconf şablonlarından çok farklı değildir. Uygun bir PO dosyası bulmak için koordinasyon ve po sayfalarını inceleyebilirsiniz. dpkg paketi için süreci örneklendirmek gerekirse, pakete ait PO dosyasını ilgili sayfadan indirebilir veya aşağıdaki komut vasıtasıyla Subversion deposundan edinebilirsiniz:
export SVN_SSH="ssh -l user-guest"
svn checkout svn+ssh://l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/\
svn/trunk/po/dpkg
veya “svn-tr betiği” ile:
svn-tr co po://dpkg
Çeviriye başlamadan önce niyet bildiriyoruz:
[ITT] po://dpkg/tr.po
Biten çeviriyi gözden geçirilmek üzere listeye gönderiyoruz. (İleti ekinde PO dosyası bulunuyor.)
[RFR] po://dpkg/tr.po
po-debconf'la benzer şekilde LFCF aşamasından geçtikten sonra tamamlanan çeviri için dpkg paketiyle ilgili hata bildiriminde bulunuyoruz. Bu işlemi kendiniz yapabilir veya bir başkasına bırakabilirsiniz.
Debian Web sayfalarında statik veya genel nitelikteki içeriği, dinamik veya özel nitelikte içerikten ayırmak amacıyla WML denilen bir etiketleme sistemi kullanılmaktadır. Her bir dil'e ait HTML kaynakları CVS sürüm denetimi altında bulunan WML kaynaklarından düzenli aralıklarla üretilerek Web sayfaları güncellenmekte ve Debian sunucularına yansılanmaktadır. Debian'ın Türkçe vitrini olarak değerlendirdiğimizde Türkçe Web sayfalarının güncel durumda tutulması bir hayli önem arz etmektedir.
Çevirilecek belgenin PO biçeminde olmamasının yarattığı sorunlardan dolayı wml çevirileri için diğer çeviri türlerine göre -şimdilik- daha az sistematik olan bir yöntem kullanıyoruz. WML dosyalarını Subversion üzerinde takip etmeye yönelik bir otomasyon sistemimiz henüz mevcut değil. Bu dosyalara CVS depolarından erişeceğiz. Çevirilerde uygun başlangıç noktası olarak Türkçe Web istatistikleri sayfasına başvuruyoruz. İstatistiklerden hareketle çevirisine karar verdiğimiz bir sayfanın WML kaynağını CVS depolarından alacağız. WML kaynaklarına CVS üzerinden erişimi açıklayan bir belge mevcut. Kısaca özetlemek gerekirse:
Önce CVS sunucusuna anonim giriş yapıyoruz:
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml login
Bundan sonra çeviri de baz alacağımız İngilizce orijinalleri indirmek için:
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml checkout -l \
webwml webwml/english
komutunu kullanıyoruz. Bu alanda çalışacakların, Debian Web çevirileriyle ilgili çeviri belgesini incemeleri de yerinde olacaktır:
Dosya dolaşımı açısından wml çevirilerinin diğer çeviri türlerine göre daha az sistematik olacağı gerçeği bir yana bırakılırsa, çeviri koordinasyonu açısından diğerleriyle benzer bir prosedürü uygulayacağız. Seçtiğimiz belgenin CVS deposundaki english/intro/organization.wml dosyası olduğunu varsayalım. Bu durumda niyetinizle ilgili olarak listeye göndereceğiniz iletinin konu başlığı şöyle olmalı:
[ITT] wml://intro/organization.wml
WML dosyaları üzerinde çalışırken sadece çevrilecek metin üzerinde durun ve WML etiketlemesiyle ilgili öğelere dokunmamaya dikkat edin. Bu dosya Debian depolarına geri döndüğünde otomatik olarak işlenecektir. Oluşacak muhtemel bir hatanın tespiti ve düzeltilmesi vakit alabilir.
Çevirisini tamamladığınız bir PO dosyasının biçimsel hatalar içermediğini denetlemek gayesiyle gettext suitinden çıkan msgfmt aracını kullanıyoruz:
msgfmt --check -o /dev/null tr.po
Aynı aracı kullanarak çeviri istatistikleriyle ilgili bilgi almak suretiyle çevrilmeyen veya belirsiz durumda olan mesaj kalmadığına da emin olmalıyız:
msgfmt --statistics -o /dev/null tr.po
po-debconf çevirilerinde, yukarıdaki işlemlere ek olarak, çevrilmiş mesajların debconf arayüzünde yaklaşık olarak nasıl görüntüleneceğini de test etmeliyiz. podebconf-display-po aracı bu amaca yönelik olarak geliştirilmiştir:
podebconf-display-po tr.po
Zamanınızı feda ederek çalıştınız. Çevirdiğiniz belgede varlığınızı belirtir birşeyler bırakmanız ve bunu yaparken de “Çeviri etiği” olarak adlandırabileceğimiz prensiplere uymanız yerinde olacaktır. Türkçe po-debconf dosyalarının (tr.po) başlık bölümlerinde katkı sağlayanları ve irtibat bilgilerini belirtmek amacıyla şu şablonu kullanıyoruz:
# Orijinal dosyadaki başlık
# ...
# Translators:
# Hakan Şükür <hakan@gs.org>
# ... Diğer çevirmenler
# Ergün Pembe <ergun@gs.org>
msgid ""
msgstr ""
...
"Last-Translator: Ergün Pembe <ergun@gs.org>\n"
"Language-Team: Debian l10n Turkish <debian-l10n-turkish@lists.debian.org>\n"
...
Çalıştığınız dosyada farklı bir başlık kullanılmış olabilir. Lütfen başlık kısmını yukarıdaki biçimde değiştirmeyi unutmayın.
Güncel olmayan bir çeviri üzerinde çalıştığınızı varsayalım. Bu durumda başlık kısmında sizden önceki çevirmenlerin listesi ve Last-Translator alanında son çevirmen'a ait adres bilgisi bulunacaktır. Dosya üzerinde bir değişiklik yapmışsanız çevirmen listesine kimlik bilginizi ekleyebilirsiniz. Last-Translator alanında da böyle bir değişiklik yapmaya girişmeden önce bazı faktörleri dikkate almalısınız:
Son çeviri tarihinden itibaren uzun bir zaman geçmiş ise katkı derecenize bağlı olmaksızın kendinizi son çevirmen olarak göstermeniz uygun olur. Böylece söz konusu çevirinin aktif olarak kimin tarafından yürütüldüğü anlaşılabilir.
Bir önceki durumdan farklı olarak nispeten taze bir çeviri üzerinde çalışmışsanız Last-Translator alanını değiştirmek için dosyada yaptığınız değişikliklerin nitelik ve niceliğini değerlendireceksiniz. Çok da nesnel olması umulmayan bu değerlendirmede nihaî karar için takdir hakkınızı kullanabilirsiniz.
l10n-turkish projesinde sürüm denetim sistemi olarak Subversion kullanılmaktadır. Çeviri dosyalarını bu sistemle yönetmek isteyeceklerin bilgisayarlarına Subversion istemcisini kurmaları gerekiyor. unstable veya testing dağıtımını kullananların aynı isimli paketi kurmaları yeterlidir:
apt-get install subversion
Woody için aşağıdaki APT kaynağı kullanılabilir:
deb http://people.debian.org/~cjwatson/subversion-woody ./
Alioth sunucusunda Subversion depoları için aşağıdaki kök URI kullanılıyor:
l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/svn
Alioth'da henüz Apache 2 WebDAV etkin olmadığından depo erişimleri svn+ssh:// protokolü ile gerçekleştiriliyor. Yani sisteminizde SSH istemcisi de kurulu olmalıdır.
Aşağıdaki bölümlerde amaçlarımız açısından önemli olan Subversion işlemlerine de değinilmiştir. Subversion hakkında daha detaylı bilgi edinmek isteyenler Subversion kitabına başvurabilir. Bu belgeyi /usr/share/doc/subversion/book dizininde de bulabilirsiniz.
Subversion'ı yukarıda açıklandığı şekilde kurmuşsanız, erişim için size gerekecek diğer husus Alioth'da “l10n-turkish” proje grubuna üye bir hesabınızın olmasıdır. Alioth hesabı için:
http://alioth.debian.org/account/register.php
bağını kullanıyoruz. Başvurunuz sonuçlandığında size “user-guest” biçiminde bir isim verilecektir. Bu isimle birlikte debian-l10n-turkish listesine, projeye üye olmak istediğinizi belirten bir ileti göndermeniz yeterlidir.
l10n-turkish projesine ait Subversion depolarında sözde-url yapılarıyla uyumlu bir düzenleme yapılmıştır. Bu düzenlemede trunk, branches, tags geleneği de gözetilmiştir:
trunk/ po-debconf/paket-adı/tr.po po/paket-adı/tr.po wmlCVS-turkish-içeriği/ man/paket-adıdosyalar/ d-i/modül-adı/tr.po doc/belge|paket-adıdosyalar/ diğer-projeler... branches/ alt-dizinler... tags/ alt-dizinler...
WebDAV aktif olmadığından bu dizinlere doğrudan tarayıcı erişimi şimdilik mümkün değildir. (Subversion kullanmayanların depo erişimi için dolaylı bir yöntem uygulanmaktadır.)
Alioth Subversion depolarına SSH ile svn+ssh:// protokolü üzerinden bağlanıyoruz. Meselâ, po-debconf://adduser olarak etiketlenen bir belgeyi depodan indirmek istiyorsanız:
export SVN_SSH="ssh -l user-guest"
svn checkout svn+ssh://l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/\
svn/trunk/po-debconf/adduser
komutunu kullanacaksınız.
Hatırlanması zor aynı şeyleri her seferinde yazmamak için sözde-url yapılarıyla da uyumlu svn-tr adında basit bir betiğimiz mevcut. Yukarıdaki işlem bu betikle şu komuta indirgeniyor:
svn-tr co po-debconf://adduser
svn-tr, svn istemcisini basitçe çevreleyen bir betiktir. Yani komut satırında alışık olduğunuz diğer svn anahtarlarını kullanabilirsiniz, tek fark depo adreslerini sözde-url biçeminde veriyorsunuz.
Subversion işlemleri için öncelikle depo erişim izninizin olması lâzım. Bu şartları sağlıyorsanız aşağıda “user-guest” olarak gösterilen bir giriş isminiz olacak. Ayrıca -bu işlem için şart olmamakla birlikte- sisteminizde l10n-turkish projesine ait bir Subversion çalışma dizinin bulunması uygun olur.
İlgili bölümde değinildiği gibi her belge türü için depoda bir alt dizin mevcut. Eklemek üzere hazır beklettiğiniz belgeyi öncelikle o belge türünün depolanma şekline uygun hale getirmeniz gerekiyor. Benzer mantığı diğer türlere de uygulamak üzere po-debconf://adduser örneğiyle konuyu anlatalım. Elinizde adduser paket kaynağından elde ettiğiniz tr.po dosyası var. Paket ismiyle aynı isimde bir dizin açarak, paket kaynağındaki yapıyla benzer şekilde şu düzenlemeyi yapıyoruz:
mkdir -p adduser/debian cp tr.po adduser/debian
Sisteminizde zaten bir Subversion çalışma kopyası varsa (aşağıda bu kopyanın bulunduğu dizin WC olarak geçiyor) adduser dizinini depoya ekleyerek, commit işlemini uyguluyoruz:
cp -a adduser WC/po-debconf/ cd WC/po-debconf/adduser export SVN_SSH="ssh -l user-guest" svn commit -m "po-debconf://adduser eklendi."
Sisteminizde Subversion çalışma dizini yoksa, depoya doğrudan ihraç (import) yapacaksınız:
export SVN_SSH="ssh -l user-guest"
svn import adduser svn+ssh://l10n-turkish.alioth.debian.org\
/org/alioth.debian.org/chroot/home/groups/l10n-turkish/svn \
-m "po-debconf://adduser eklendi."
veya “svn-tr betiği” ile:
svn-tr import adduser po-debconf://adduser \
-m "po-debconf://adduser eklendi."
Kalite denetiminden geçerek hazır hale gelen bir çeviriyi dağıtıma eklemek için çevirinin yer aldığı paketten sorumlu geliştiriciyle irtibata geçiyoruz. Bu amaçla kişisel yazışma yerine BTS'i yani “Hata Takip Sistemi”ni kullanmalıyız.
BTS'e hata bildiriminde bulunmak için reportbug aracını kullanıyoruz. (Bu araç aynı isimli paketle kurulabilir.) Hata bildiriminde şu kurallara uyulmalıdır:
Çeviriye ilişkin uygun hata derecesi (Severity) “wishlist”dir.
Bir pakete ekleme yapmak “yama” (patch) uygulamak anlamına geldiğinden hata bildirimi “patch” olarak etiketlenmelidir. BTS'de bunun karşılığı Tags: patch başlığıdır.
Hata'nın yerelleştirmeyle ilgili olduğunu belirtmek için Tags: alanında l10n şeklinde bir etiket daha kullanılmalıdır. Bu yapıldığında iletinin Tags başlığı şu hali alacaktır:
Tags: patch, l10n
Son olarak, l10n-tr orijinli hata bildirimlerinin kolayca tanınması için konu başlığını şu biçimde oluşturuyoruz:
[INTL:tr] Turkish belge-tipi translation
belge-tipi alanında po, po-debconf, man vb. bulunmalıdır.
Ekinde çevirinin gönderildiği hata bildirimlerinde, ileti gövdesinde fazladan bir şey yazmanızı gerektirmeyecek bir 'Konu' başlığı belirlemelisiniz. Fakat birkaç cümle kullanmak istiyorsanız ileti gövdesi aşağıdaki gibi olabilir:
Please find attached the Turkish belge-tipi translation. Regards,
(belge-tipi po, po-debconf, man şeklinde)
Bu yönergeleri dikkate alarak adduser örnek paketi için tam etkileşimli şekilde 'reportbug adduser' komutunu kullanılabilirsiniz. Fakat işlemleri daha kolay hale getirmek için doğrudan aşağıdaki komutun kullanılmasını öneriyoruz:
reportbug --subject '[INTL:tr] Turkish po-debconf translation' \
--severity wishlist \
--tags patch, l10n \
--attach tr.po \
--offline adduser
Bilinçli bir özellik olarak reportbug etkileşimsiz çalışacak şekilde tasarlanmamıştır. Yukarıdaki komut asgari sorgulamayla uygun bir hata bildirim metni oluşturacaktır. Gereksiz gördüğümüz satırları silerek iletiye son halini verdiğimizde adduser_3.51_all.deb paketine ait hata bildirim metni şuna benzer bir görüntüye sahip olacaktır:
Subject: [INTL:tr] Turkish po-debconf translation
Package: adduser
Version: 3.51
Severity: wishlist
Tags: patch, l10n
Please find attached the Turkish po-debconf translation.
Regards,
Hata bildirimi yerine ulaştığında, iletinize BTS tarafından otomatik olarak bir hata numarası atanacak ve bu numara bir cevap iletisiyle size bildirilecektir. Çeviri durumunun l10n-tr bot'u tarafından takip edilmesi amacıyla cevap iletisinde görülen hata numarasıyla birlikte aşağıdaki 'Konu' başlığına sahip bir iletiyi listeye geçmeyi unutmuyoruz:
[BTS#hatano] po-debconf://adduser
Yaptığınız çeviri adduser paketine eklendiğinde geliştirici bu hatayı“Closed” olarak imler. Liste bot'u hatanın bu şekilde kapatıldığını algıladığı anda çeviri durumunu DONE olarak gösterecektir.
Çeviride “belirsizlik” olduğunu ifade eden bu satırlar çeviri faaliyetlerindeki güncellik sorununun en önemli kaynağını oluşturmaktadır. Aşağıda bu konuyla ilgili olarak, Adam Di Carlo'nun yaptığı açıklama okunabilir:
Bazen bir mesajın “fuzzy” olarak işaretlendiğini görürsünüz. Bunun nedeni PO dosyalarını yaratan ve güncelleyen msgmerge programına kodlanmış olan zekâdır. Bu etiketler genellikle msgmerge'ün koşturulması sırasında ortaya çıkan iki durumda oluşur:
Çevirisi zaten yapılmış bir mesaj vardır. Ör.
msgid "Insert a disk in the floppy drive" msgstr "Disket sürücüye bir disket yerleştirin"ve msgmerge, geliştirici tarafından bu çevrilen mesajla benzer içerikte yeni bir mesajın daha yaratıldığını farkederek, yeni mesaj'a “fuzzy” olarak damgaladığı bir çeviri ekler. Program, msgid'leri benzer iki mesaj'a ait çevirilerin de muhtemelen benzer olacağını düşündüğünden böyle yapar. Ör.
#, fuzzy msgid "Insert a diskette in the floppy drive" msgstr "Disket sürücüye bir disket yerleştirin"(disket, diskette farkı)
Önceden çevirilen mesajın orijinali (msgid) değişmiştir.
Yukarıda sıralanan her iki durumda da çevirmen “fuzzy” etiketli çeviriyi gözden geçirmeli, gerekiyorsa düzeltmeli ve “fuzzy” etiketini silmelidir.
Bu satırlar mesajın geliştirici tarafından kaldırıldığını ve artık geçerli olmadığını (“obsolete”) ifade etmektedir. Bu şekilde lağvedilmiş mesajları dosyadan silebilirsiniz.
PO dosyalarında UTF-8'i tercih ediyoruz. PO dosyasının başlık bölümünde buna uygun olarak:
"Content-Type: text/plain; charset=UTF-8\n"
tanımlaması bulunmalıdır.
PO dosyaları dışındaki çevirilerde (WML vb.) aksi belirtilmedikçe ISO8859-9 kodlama kullanacağız. Woody'de UTF-8 ve genel olarak Türkçe desteği maalesef iyi bir durumda değil. Bu sürümde kullanılan GNOME 1.4'ün UTF-8'i desteklememesi önemli bir problem. GUI araçlarıyla Woody üzerinde çeviri yapacakların çalıştıkları dosyayı önce ISO8859-9'a çevirmeleri olası sorunları engelleyebilir. Çeviri süreci tamamlandığında dosyayı kolayca UTF-8'e dönüştürebilirsiniz. Kodlama dönüşümleri için bu konunun anlatıldığı “PO dosyasının kodlamasını nasıl değiştirebilirim?” bölümüne başvurabilirsiniz.
Debian'a Türkçe desteğinin nasıl verileceğini anlatan bir Türkçe mini-NASIL belgemiz mevcut.
Başka çözüm yöntemleri de bulunmakla beraber PO dosyalarında kodlama dönüşümü için msgconv aracını kullanıyoruz. PO dosyasını ISO-8859-9'e çevirmek için:
msgconv -t ISO-8859-9 tr.po > tr-ISO.po
UTF-8'e dönüşüm için:
msgconv -t UTF-8 tr.po > tr-UTF.po
Bu konu Türkçe mini-NASIL'da açıklanıyor. Woody'de UTF-8 dosyaları görmek (ve eğer metin düzenleyiciniz bunu destekliyorsa) düzenlemek için başvurulabilecek en basit yöntem Türkçe mini-NASIL'ı uyguladıktan sonra:
LANG=tr_TR.UTF-8 uxterm
komutuyla UTF-8 destekli xterm altında çalışmak olacaktır.
UTF-8 kipi için sisteminizi daha zengin olanaklara kavuşacağınız “unstable” sürüme yükseltmenizi veya en azından Woody'ye geri taşınmış GNOME 2.x paketlerini kullanmanızı öneririz.
PO biçemiyle fazla tanışık olmayanlar için bu amaçla geliştirilmiş GUI programlarını öneriyoruz: gtranslator ve kbabel. Seçtiğiniz programın UTF-8 ayarlı olmasını ve dosya başlığının ilgili bölümde anlatıldığı şekilde özelleştirilmesine dikkat edin.
Çeviri için basitçe UTF-8 destekli gedit (GNOME 2.x sürümü), kedit veya kate'i de kullanabilirsiniz. Emacs ve VIM tutkunları için PO dosyalarını düzenlemeye yönelik makro paketleri mevcut. Emacs'ın PO düzenleme kipi gettext belgelerinde dokümante edilmiştir.
VIM kullanıcılarına po.vim dosyatipi eklentisini tavsiye diyoruz. Bu eklentiyi ~/.vim/ftplugin dizinine yerleştirerek aktif hale getiriyoruz. VIM mükemmel UTF-8 desteği sunan bir düzenleyicidir. Sistem yereliniz zaten UTF-8 ise (LANG=tr_TR.UTF-8) VIM otomatik olarak bu kip'e geçecektir.
Kullandığınız VIM versiyonuna bağlı olarak bu konuda bir sıkıntı yaşarsanız tr.po dosyalarında UTF-8 kipinin etkinleştirilmesi için ~/.vimrc ilkelendirme dosyanıza şu satırları ekleyebilirsiniz:
if has("unix")
au BufEnter tr.po set enc=utf-8 fenc=utf-8
endif
Bu yapılandırma sadece kodlamayı değiştirir. Türkçe yazıtiplerinin doğru şekilde görüntülenmesi için UTF-8 kodlu yazıtiplerinin VIM'i çalıştırdığınız uç birim'de tanınması gerekir. Yani bu yöntemin sonuç verici olması için VIM'i uxterm altında çalıştırmanız gerekecektir. Alternatif olarak GVIM'i kullanmanız halinde UTF-8 kodlu ekran yazıtipi seçmeniz yeterlidir. GVIM, sistemlerini ISO8859-9 kipinde kullananların sadece UTF-8 metin düzenleme için sistem yerelini değiştirmeleri zorunluluğunu da ortadan kaldırır.
adduser paketiyle örneklendirerek bu soruyu yanıtlayalım. adduser paketine ait kaynağın son sürümünü indiriyoruz. Bir pakete ait son sürüm kaynağını kurmak için sisteminizin öncelikle buna uygun şekilde yapılandırılmış olması gerekir. (Bu şartı zaten sağlayanlar bu adımı atlayabilirler.) Sadece kaynak paketlerini “unstable”'dan indirmek için “APT pinning” özelliğini kullanabiliriz. Sisteminizi “stable” sürümde kullandığınızı varsayarsak, /etc/apt/preferences dosyasını aşağıdaki şekilde düzenlememiz yeterli olacaktır.
Package: * Pin: release a=stable Pin-Priority: 600 Package: * Pin: release a=testing Pin-Priority: 550 Package: * Pin: release a=unstable Pin-Priority: 500 Package: * Pin: release a=experimental Pin-Priority: 450
APT kaynaklarına uygun bir “unstable”kaynak deposu ekliyoruz. Meselâ Debian Türkiye yansısını kullanmak üzere /etc/apt/sources.list dosyasına:
deb-src http://ftp.tr.debian.org/debian unstable main contrib non-free
satırını ekliyoruz.
APT indekslerini güncelliyoruz. Bir pakete ait en son kaynak sürümünü indirmek için daima bu adımın uygulanması gerektiğini unutmayın. Aksi taktirde üzerinde çalıştığınız çeviri eski bir sürüm olabilir.
apt-get update
“unstable” sürümden kaynak paketi indiriyoruz:
apt-get source -t unstable adduser
Kaynak paket dizininde debian/po alt dizinine geçerek Türkçe po dosyası için templates.pot dosyasından bir tr.po kopyası üretiyoruz:
cp templates.pot tr.po
Çeviri için bu tr.po üzerinde çalışmamız yeterli. Fakat (sorunun diğer bölümüne de cevap olmak üzere) bu paketi Subversion deposuna da eklemek istiyorsak “İstediğim po-debconf listede yok, nasıl edinebilirim?” bölümünde açıklanan adımları da uygulamalıyız. Bu adımlarla uğraşmak istemeyenler listeye bir ileti göndererek bir başkasından bunu isteyebilirler.
Bu iş için debconf-updatepo aracını kullanıyoruz. Bu araç po-debconf paketinden çıkmaktadır:
apt-get install po-debconf
tr.po dosyasını güncellemek için kaynak paket'te debian diziniyle aynı dizin seviyesinde veya debian dizini içinde:
debconf-updatepo
komutunu çalıştırıyoruz.