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 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.

Repository integration#

Weblate is built to integrate with upstream version control repository, Sürekli yerelleştirme describes building blocks and how the changes flow between them.

Ayrıca bakınız

Architecture overview describes how Weblate works internally.

User attribution#

Weblate keeps the translations properly authored by translators in the version control repository by using name and e-mail. Having a real e-mail attached to the commit follows the distributed version control spirits and allows services like GitHub to associate your contributions done in Weblate with your GitHub profile.

This feature also brings in risk of misusing e-mail published in the version control commits. Moreover, once such a commit is published on public hosting (such as GitHub), there is effectively no way to redact it. Weblate allows choosing a private commit e-mail in Hesap to avoid this.

Therefore, admins should consider this while configuring Weblate:

  • Such a usage of e-mail should be clearly described in service terms in case such document is needed. Yasal can help with that.

  • PRIVATE_COMMIT_EMAIL_OPT_IN can make e-mails private by default.

Yerelleştirme projesini Weblate içine aktarmak#

Weblete, 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ın kodla birlikte bir sürüm denetimi sisteminde bulunması durumunda, 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ı olduğunda, şu yöntemlerle Weblate üzerine yeni dizgeler eklenebilir.

Not

Weblate üzerine dizge eklenebilmesi Dizge yönetimi ögesine bağlıdır.

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