[Gelistirici] COMAR service.py betiği içeren paketlerde küçük değişiklikler
Gürer Özen
gurer at pardus.org.tr
2 Tem 2009 Per 21:21:34 EEST
On Thursday 02 July 2009 18:33:30 Necmettin Begiter wrote:
> 1. fail(_()) yerine değişkeni tanımlarken _({}) yapsam değişen birşey
> oluyor mu?
İlkinde fonksiyon çağrıldığında çeviri yapılırken, ikincide modül
yüklendiğinde yapılıyor. Çağrılar ilk başta modülü yüklediği için fark
etmemesi lazım ama Bahadır daha iyi bilecektir son durumu.
> 2. Diğer çevirmenleri olaya nasıl dahil edeceğiz? İlgili paket
> çiftlikte derlenirken bu şekilde verdiğimiz katarlar .pot dosyalarına
> girecek mi, yoksa bu _() COMAR'ın kendi içindeki bir 'sistem dilini
> LC_ALLdan al, ona göre ilgili katarı göster' fonksiyonu mu?
Bu alt çizgi fonksiyonu Çomarın kendi tanımladığı bir fonksiyon ve hangi dili
kullanacağını çağrıyı yapan kullanıcının dbus'tan gelen locale ayarına göre
seçiyor.
Zamanında böyle bir yöntemi seçmemizin nedeni şuydu. Çomar betiklerinde bikaç
tane çevrilecek string oluyor. Bunlardan po oluştursak, o po dosyasını mo'ya
çevirecek ve pakete dahil edecek mekanizmayı Pisi'ye koymak gerekecekti.
Çomarında bu mo'ları bulup yükleyecek bir mekanizmaya ihtiyacı olacaktı.
Başka bir alternatif tüm betikleri tarayıp tek bir po/mo serisi oluşturmak ve
ayrı bir comar-i18n.pisi olarak dağıtmak, ancak o zaman bir paket kendi
çevirilerini taşıyamayacak. O yüzden çevirileri direk olarak betiğin içine
koymayı tercih ettik.
2009 için geç değilse buna daha düzgün bir çözüm olarak şu yapılabilir.
betiklerin yanına bir adet comar-translations.xml gibi bir dosya konur (ya da
direk translations.xml içine ayrı bir Tag ile de koyabiliriz?). Bu özgün
mesajları ve çevirilerini içerir (paketin tüm betikleri için). Pisi bu
dosyayı da paketler ve kurulumda Çomara verir. Çomarın alt çizgi fonksiyonu
da eğer varsa bu dosyayı açıp ilgili çeviriyi kullanır. Çok büyük bir
değişiklik sayılmaz. Çevirmenler paket başına bir xml editleyip kodları
kurcalamadan işlerini yapabilirler. Tabi Bahadır ve Faik daha iyi fikir
belirtebilirler bu konuda.
Gelistirici mesaj listesiyle ilgili
daha fazla bilgi