Weblate ile bütünleştirmek

Weblate temelleri

Proje ve bileşen yapısı

Weblate üzerinde çeviriler, projeler ve bileşenler olarak düzenlenir. Bir projede çok sayıda bileşen bulunabilir ve bunlar ayrı dillerin çevirilerini içerebilir. Bileşen çevrilebilir bir dosyaya karşılık gelir GNU gettext PO (Portable Object) ya da Android dizge kaynakları). Projeler, bileşeni mantıksal kümeler halinde düzenlemenize yardımcı olmak için düşünülmüştür (tek bir uygulamada kullanılan tüm çevirileri gruplamak gibi).

İçeride, her projenin varsayılan olarak içindeki diğer bileşenlere yayılan ortak dizge çevirileri vardır. Bu özellik, yinelenen ve çok sürümlü çeviri yükünü hafifletir. Çevirilerin farklılaşması durumunda Bileşen yapılandırması için Çevirilerin yayılmasını sağlamak seçeneği kullanılarak çevirilerin yayılması kullanımdan kaldırılabilir.

Depo bütünleştirmesi

Weblate, yukarı akış sürüm denetimi deposuyla bütünleşik olarak çalışmak üzere oluşturulmuştur. Sürekli yerelleştirme belgesinde yapı taşları ve değişikliklerin bunlar arasında nasıl aktığı açıklanmıştır.

Ayrıca bakınız

Mimari özeti belgesinde Weblate içeride nasıl işliyor anlatılmıştır.

Kullanıcı ilişkilendirmesi

Weblate, çevirmenler tarafından düzgünce yazılan çevirileri ad ve e-posta kullanarak sürüm kontrol deposunda tutar. İşlemeye gerçek bir e-postanın eklenmesi, dağıtılmış sürüm denetimi ruhuna uygundur ve GitHub gibi hizmetlerin Weblate üzerinde yaptığınız katkıları GitHub profilinizle ilişkilendirmesini sağlar.

Bu özellik aynı zamanda sürüm denetimi işlemelerinde yayınlanan e-posta adresinin kötüye kullanılması riskini de beraberinde getirir. Dahası, böyle bir işleme, herkese açık barındırma üzerinde (GitHub gibi) yayınlandıktan sonra onu düzenlemenin herhangi bir yolu yoktur. Weblate, bunu önlemek için Hesap içinden özel bir işleme e-posta adresi seçmenize izin verir.

Bu nedenle yöneticiler Weblate yapılandırması sırasında buna dikkat etmelidir:

  • Böyle bir belgeye gerek duyulması durumunda, bu tür bir e-posta adresinin kullanıldığı hizmet koşullarında açıkça belirtilmelidir. Yasal belgesi bu konuda yardımcı olabilir.

  • PRIVATE_COMMIT_EMAIL_OPT_IN e-postaları varsayılan olarak gizli yapabilir.

Yerelleştirme projesini Weblate içine aktarmak

Weblate, temel bir özelliği olarak sürüm denetimi sistemi bütünleştirmesi göz önünde bulundurularak geliştirilmiştir. Bu nedenle en kolay yol, deponuza Weblate erişimi izni vermektir. İçe aktarma işlemi, çevirilerinizi bileşenlere yapılandırma konusunda size yol gösterir.

Alternatif olarak, bütünleştirmeler olmadan tüm çevirileri içeren yerel bir depo kurmak için Weblate kullanabilirsiniz.

Weblate üzerinden güncellenmiş çevirileri almak

Weblate, güncellenen dizgeleri bir veri tabanında tutar ve bunları yerel bir sürüm denetimi deposuna gönderir. Weblate deposunu ( Git dışa aktarıcı açıkken) uzak depo olarak ekleyebilir ve çeviri güncellemelerini alabilirsiniz.

Bundan önce, bekleyen değişiklikleri göndermek isteyebilirsiniz (ayrıntılı bilgi almak için: Lazy commit işlemeleri). Bunu kullanıcı arayüzünde (Depo bakımı bölümünde) ya da komut satırında Weblate istemcisi komutu ile yapabilirsiniz.

Weblate için deponuza itme erişimi verir ve Bileşen yapılandırması içinde Depo itme adresi değerini yapılandırırsanız, değişiklikleri itme işlemi kendiliğinden yapılabilir. Ayrıntılı bilgi almak için: Weblate üzerindeki değişiklikleri itmek.

Alternatif olarak, çevirileri son sürümleriyle eşleşecek şekilde güncellemek için Weblate REST API uygulaması kullanabilirsiniz.

Uzak değişiklikleri Weblate üzerine almak

Deponuzda yeni güncellenen dizgeleri Weblate üzerine getirmek için, yukarı akış deposundan çekmesine izin vermeniz yeterlidir. Bu işlem, kullanıcı arayüzünde (depo ‘bakımı bölümünden) ya da komut satırından Weblate istemcisi komutu ile yapılabilir.

Bu işlem, yeni bir işleme olduğunda Weblate tetiklemesi için deponuzda bir internet kancası ayarlayarak kendiliğinden yapılabilir. Ayrıntılı bilgi almak için: Depoları güncellemek.

Sürüm denetimi sistemi bütünleştirmesi kullanmıyorsanız, çevirileri kod tabanınızla eşleşecek şekilde güncellemek için kullanıcı arayüzü ya da Weblate REST API uygulaması kullanabilirsiniz.

Yeni dizgeler eklemek

Çeviri dosyalarınız kodla birlikte bir uzak sürüm denetimi sisteminde bulunuyorsa, büyük olasılıkla geliştiricilerin yeni dizgeler eklemesi için kullanılan bir iş akışınız vardır. Dizge eklemenin herhangi bir yolu seçilir. Ancak hatalara neden olmamak için Kaynak dizgeler için kalite aracısı kullanmayı değerlendirin.

Çeviri dosyaları koddan ayrılmış olduğunda, şu yöntemlerle Weblate üzerine yeni dizgeler eklenebilir.

  • El ile, kaynak dildeki Araçlar menüsünden Yeni çeviri dizgesi ekle seçeneğini kullanarak.

  • Programlamada API kullanılarak: http:post:/api/translations/(string:project)/(string:component)/(string:language)/units/.

  • Kaynak dosyayı Var olan çeviri dosyasını değiştir (var olan dizgelerin üzerine yazar, bu nedenle dosyada hem eski hem de yeni dizgelerin bulunduğundan emin olun) ya da Yeni dizgeler ekle seçeneği ile yükleyerek. Ayrıntılı bilgi almak için: İçe aktarma yöntemleri.

Not

Weblate üzerine dizge eklenebilmesi için Dizge yönetimi gereklidir.

Hedef dil dosyalarını güncellemek

Tek dilli dosyalar için (ayrıntılı bilgi almak için: format) Weblate, gerçek çevirilerde değil, Tek dilli temel dil dosyası içinde bulunmayan yeni çeviri dizgeleri ekleyebilir. Bununla birlikte, beklenmeyen sonuçları olabileceğinden, eski dizgeleri kendiliğinden temizlemez. Bunu yapmak istiyorsanız, lütfen gereksinimlerinize göre temizleme işlemini yapacak olan Çeviri dosyalarını temizleme eklentisini kurun.

Weblate ayrıca iki dilli dosyaları hiçbir şekilde güncellemeye çalışmaz. Bu nedenle pot dosyaları ile güncellenen po dosyaları kullanmanız gerekiyorsa, Kaynak dizgeleri güncelle İçe aktarma yöntemleri ya da PO dosyalarını POT ile eşleştirerek güncelleme (msgmerge) eklentisini kullanarak kendiniz yapmalısınız.

Yeni dizgeler sunmak

Dizge yönetimi açıkken Weblate üzerine yeni dizgeler ekleyebilirsiniz. Ancak genellikle yeni dizgeleri onları tanıtan kod değişiklikleriyle birlikte sunmak daha iyidir.

Tek dilli biçimlerde Tek dilli temel dil dosyası için yeni dizgenin eklenmesi gerekir. Bu genellikle kod geliştirme sırasında geliştiriciler tarafından yapılır. Kaynak dizgeler için kalite aracısı kullanarak bu dizgeleri onaya sunmak isteyebilirsiniz.

İki dilli biçimlerde dizgeler tipik olarak bazı araçlar kullanılarak kaynak koddan çıkarılır (xgettext ya da intltool-update gibi). Bunun nasıl yapılacağı ile ilgili yönergeler için yerelleştirme çatısı belgelerinize bakabilirsiniz. Dizgeler ayıklandıktan sonra, var olan çevirileri güncellemek için bir ek adım gerekebilir. Ayrıntılı bilgi almak için: Hedef dil dosyalarını güncellemek.

İpucu

Weblate şu anda dizge ayıklamanın kendiliğinden yapılması ile ilgilenmiyor. Bunun için genellikle güvenilmeyen bir kodun çalıştırılması gerekir. Bu durum yerelleştirmeye özgü bir platformdan yerine genel bir sürekli bütünleştirme için daha uygundur.

Yeni dizgelerin kendiliğinden çeviri olarak görünmesini sağlamak için bunu sürekli bütünleştirme altyapınızla birleştirmek isteyebilirsiniz. Bu altyapıda Birleştirme çakışmalarından kaçınmak seçeneği de kapsanmalıdır.

Sürüm denetim deposunu yönetmek

Weblate, tüm çevirileri sürüm denetimi deposunda tutar. Yukarı akışa bağlanabilir ya da yalnızca içeride olabilir. Depo bakımı bölümünden depoyla ilgili işlemleri yapabilirsiniz.

İpucu

Sürekli yerelleştirme ile depo, değişiklik olduğunda kendiliğinden gönderilir ve genellikle el ile işlem yapmak gerekmez.

../_images/component-repository.webp