Eklentiler¶
Eklentiler, çeviri iş akışını özelleştirmesi ve kendiliğinden yapılması için yöntemler sağlar. Yöneticiler, her bir çeviri bileşenine İşlemler ↓ Eklentiler menüsünden eklentiler ekleyip yönetebilir. Eklentiler Yönetim arayüzü bölümünden de site genelinde kurulabilir.
İpucu
Eklentileri API, DEFAULT_ADDONS ya da install_addon kullanarak da yapılandırabilirsiniz.
El ile tetiklenmeyi yeğleyen eklentiler, eklenti yönetiminden veya API ile çalıştırılabilir. Sonuçlar eklentinin etkinlik günlüğüne kaydedilir.
Eklentileri tetikleyen olaylar¶
Eklenti kurulumu¶
Eklenti kurulurken tetiklenir.
Bileşen güncellemesi¶
Bir bileşende aşağıdaki gibi bir değişiklik olduğunda tetiklenir:
Depodaki dizgeler değiştirildiğinde.
Bir dizge eklendiğinde.
Yeni bir çeviri eklendi.
Günlük¶
Günlük olarak tetiklenir, ancak eklentiler genellikle BACKGROUND_TASKS seçeneğine bağlı olarak günlük yükü bileşenler arasında paylaştırır.
Değişiklik etkinliği¶
Bir değişiklik etkinliğinin kaydedilmesinden sonra tetiklenir.
El ile tetikleme¶
Bir eklenti, eklenti yönetiminden veya API üzerinden el ile çalıştırıldığında tetiklenir.
Depo ekleme sonrası¶
Yeni çeviri eklendikten ve işlendikten hemen sonra tetiklenir.
Depo işleme sonrası¶
Değişiklikler işlendikten hemen sonra tetiklenir.
Depo itme sonrası¶
Depo yukarı akışa itildikten hemen sonra tetiklenir.
Depo kaldırma sonrası¶
Bir çevirinin kaldırılmasından hemen sonra tetiklenir.
Depo güncelleme sonrası¶
Yukarı akış deposundan yeni değişiklikler her çekildiğinde tetiklenir.
Depo işleme öncesi¶
Değişiklikler işlenmeden hemen önce tetiklenir.
Depo itme öncesi¶
Depo yukarı akışa itilmeden hemen önce tetiklenir.
Depo güncelleme öncesi¶
Deponun güncellenmesi denenmeden hemen önce tetiklenir.
Birim kaydetme sonrası¶
Dizgenin kaydedilmesinden hemen sonra tetiklenir.
Birim eşitleme sonrası¶
Dizgenin sürüm denetimi sistemi ile eşitlenmesinden sonra tetiklenir.
Birim oluşturma öncesi¶
Yeni oluşturulan dizge kaydedildikten hemen sonra tetiklenir.
Hazır eklentiler¶
Kendiliğinden çeviri¶
- Eklenti kimliği:
weblate.autotranslate.autotranslate- Yapılandırma:
modeKendiliğinden çeviri kipi
Kullanılabilecek seçenekler:¶ suggestÖneri olarak ekle
translateÇeviri olarak ekle
fuzzy“Düzenlenmesi gerekli” olarak ekle
qSorgu
Lütfen tüm dizgeleri çevirdiğinizde var olan tüm çevirileri yok sayılacağını unutmayın.
auto_sourceKendiliğinden yapılmış çevirilerin kaynağı
Kullanılabilecek seçenekler:¶ othersDiğer çeviri bileşenleri
mtMakine çevirisi
componentBileşen
Kaynak olarak kullanılacak bir bileşenin adres son ekini yazın. Geçerli projedeki tüm bileşenlerin kullanılması için boş bırakın.
enginesMakine çevirisi hizmetleri
thresholdSkor eşiği
- Tetikleyiciler:
Eklenti kurulumu, Bileşen güncellemesi, Günlük, Değişiklik etkinliği
Makine çevirisini ya da diğer bileşenleri kullanarak dizgeleri kendiliğinden çevirir.
JavaScript yerelleştirme CDN¶
Added in version 4.2.
- Eklenti kimliği:
weblate.cdn.cdnjs- Yapılandırma:
thresholdÇeviri eşiği
Çevirinin katılması için ulaşılması gereken çevrilmiş dizge yüzdesi.
css_selectorCSS seçici
Yerelleştirilebilir ögeleri algılamak için CSS seçici.
cookie_nameDil tanımlama bilgisinin adı
Dil seçiminin kaydedildiği tanımlama bilgisinin adı.
filesDizgeleri HTML dosyalarından ayıklama
Geçerli depoda ya da uzak adreslerde çevrilebilir dizgeler için işlenecek dosya adlarının listesi.
- Tetikleyiciler:
Eklenti kurulumu, Günlük, Depo işleme sonrası, Depo kaldırma sonrası, Depo güncelleme sonrası
JavaScript ya da HTML yerelleştirmesinde kullanılmak üzere içerik dağıtım ağına çevirileri yayınlar.
Durağan HTML sayfalarını yerelleştirmek veya JavaScript kodunda yerelleştirmeyi yüklemek için kullanılabilir.
Bileşeniniz için, bunları yerelleştirmek amacıyla HTML sayfalarına ekleyebileceğiniz benzersiz bir adres oluşturur. Ayrıntılı bilgi almak için: Weblate içerik aktarım ağını kullanarak HTML ve JavaScript çevirmek.
Not
Bu eklenti için, Weblate sunucusunda ek yapılandırma gerekir. LOCALIZE_CDN_PATH, oluşturulan dosyaların nereye yazılacağını (bir dosya sisteminde) ayarlar ve LOCALIZE_CDN_URL, bunların nereden sunulacağını (adres) belirler. Dosyalar Weblate tarafından sunulmaz ve dışarıdan ayarlanması gerekir (genellikle bir CDN içerik dağıtımı ağı hizmeti kullanılarak).
Bu eklenti Hosted Weblate üzerinde yapılandırılmıştır ve dosyaları https://weblate-cdn.com/ adresinden sunar.
Translation files CDN¶
Added in version 2026.5.
- Eklenti kimliği:
weblate.cdn.files- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Eklenti kurulumu, Bileşen güncellemesi, Depo işleme sonrası, Depo kaldırma sonrası, Depo güncelleme sonrası
Publishes translation files into a content delivery network.
Publishes translation files without converting them to another format. Files
are written below the add-on specific CDN directory and served from
LOCALIZE_CDN_URL/<add-on UUID>/. Single-file translations use the language
code and original file extension, for example cs.json or de.po.
Multi-file translations are served below the language code using paths relative
to the translation directory. Monolingual components include the source
language file, while bilingual components publish only target-language files.
See Yerelleştirme CDN for secure serving guidance.
Boş dizgeleri silme¶
Added in version 4.4.
- Eklenti kimliği:
weblate.cleanup.blank- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Eklenti kurulumu, Depo işleme sonrası, Depo güncelleme sonrası
Çeviri dosyalarından çevirisi olmayan dizgeleri kaldırır.
Çeviri dosyalarında boş dizgelerin görünmemesi için bunu kullanın (yerelleştirme kitaplığınızın kaynak dizgeyi kullanmak yerine boş dizgeler görüntülemesi gibi durumlarda).
Çeviri dosyalarını temizleme¶
- Eklenti kimliği:
weblate.cleanup.generic- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Eklenti kurulumu, Depo güncelleme sonrası, Depo işleme öncesi
Tüm çeviri dosyalarını tek dilli temel dosyayla eşleşecek şekilde günceller. Bu işlem çoğu dosya biçiminde temel dosyada artık bulunmayan eski çeviri anahtarlarını kaldırır.
Çeviri dizgelerinin yanı sıra ek içerik barındıran biçimler için (HTML dosyaları, Windows RC dosyaları veya OpenDocument biçimi gibi) bu işlem çeviri dosyasını temel dosyayla eşitler.
Eksik dilleri ekleme¶
- Eklenti kimliği:
weblate.consistency.languages- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Proje içindeki tüm bileşenler için tutarlı bir dil kümesinin kullanılmasını sağlar.
Not
Diğer projelerden paylaşılan bileşenler bu kapsamda değerlendirilmemiştir.
Eksik diller her 24 saatte bir ve Weblate üzerine yeni diller eklendiğinde denetlenir.
Diğerlerinden farklı olarak, bu eklenti tüm projeyi etkiler.
İpucu
Yeni eklenen dizgeler Kendiliğinden çeviri ile kendiliğinden çevrilir.
Bileşen keşfi¶
- Eklenti kimliği:
weblate.discovery.discovery- Yapılandırma:
matchÇeviri dosyalarıyla eşleştirilecek kurallı ifade
Kurallı ifade de, bileşen ve dil için adlandırılmış gruplar tanımlanmalıdır.
file_formatDosya biçimi
name_templateBileşen adını özelleştirme
Django kalıbı sözdizimini kullanın. Bu kalıpta {{ bileşen }} bulunmalıdır.
base_file_templateTek dil temel dosyası adını tanımlayın
İki dilli çeviri dosyaları için boş bırakın. Ayarlandığında, bu kalıpta {{ bileşen }} bulunmalıdır.
new_base_templateYeni çeviriler için temel dosyayı tanımlama
Yeni çeviriler oluşturmak için kullanılan dosyanın adı. Gettext için .pot dosyasını seçin. Bu kalıpta {{ bileşen }} bulunmalıdır.
intermediate_templateAra dil dosyası
Ara çeviri dosyasının dosya adı. Çoğu durumda bu, geliştiriciler tarafından sağlanan bir çeviri dosyasıdır ve gerçek kaynak dizgeleri oluştururken kullanılır. Bu kalıpta {{ bileşen }} bulunmalıdır.
language_regexDil süzgeci
Dosya maskesi taranırken çeviri dosyalarını süzmek için kullanılan kurallı ifade.
copy_addonsAna bileşendeki eklentileri yeni oluşturulanlara kopyalama
removeVar olmayan dosyalar için bileşenleri kaldırma
- Tetikleyiciler:
Sürüm denetim sistemindeki dosya değişikliklerine göre proje bileşenlerini kendiliğinden ekler ya da siler.
Eşleştirme, karmaşık yapılandırmayı etkinleştiren kurallı ifadeler kullanılarak yapılır. Ancak bunu yapmak için biraz bilgi gereklidir. Çeviri dosyalarını eşleştirmek için kurallı ifadede, bileşen ve dil ile eşleşecek iki adlandırılmış grup bulunmalıdır. Kurallı ifadedeki tüm adlandırılmış gruplar kalıp alanlarında değişken olarak kullanılabilir.
Keşif gereksinimleri¶
Bir bileşenin başarılı bir şekilde keşfedilmesi için yapılandırma şunların tümünü yapmalıdır:
Kurallı ifadede,
bileşenvediladlandırılmış grupları tanımlanmalıdır.Her bileşen için dosyaları adlandırmak veya bulmak için kullanılan kalıp alanlarında
{{ bileşen }}bulunmalıdır. Böylece oluşturulan değer aslında keşfedilen her bileşen için değişir.Tek dilli biçimler için, bileşende
base_file_templateile eşleşen bir dosya veeşleşmeile eşleşen en az bir çeviri dosyası bulunmalıdır.
Çalışan örnek: news_<dil>.md¶
Bu, yaygın bir dosya adı temelli dil değişkeni düzenidir:
docs/news_en.mddocs/news_cs.mddocs/guide_en.md
Başlangıç noktası için Dosya adı temelli dil çeşitleri hazır ayarını kullanın. Ardından eşleşen dosya biçimini seçin ve doldurulmuş değerleri gözden geçirin.
- Kurallı ifade:
(?:(?P<path>.*/))?(?P<component>.+?)_(?P<language>[A-Za-z]{2,3}(?:[_-][A-Za-z0-9]+)*)\.(?P<extension>[^/.]+)- Bileşen adı:
{{ component }}- Keşfedilen dosya maskeleri:
docs/news_*.mddocs/guide_*.md
Bu örnekte, {{ bileşen }} dil son ekinden önce temel adına çözümlenir. Bu nedenle docs/news_en.md, docs/news_pt_BR.md ve docs/news_pt-BR.md dosyalarının tümü news bileşeni haline gelir.
Django kalıbındaki markup kodlarını tüm dosya adı alanlarında kullanabilirsiniz. Örneğin:
{{ component }}Bileşen adı
bileşeneşleşme grubundan ayrıştırıldı{{ component|title }}İlk harfi büyük bileşenin dosya adıyla eşleşir
{{ path }}: {{ component }}Kurallı ifadedeki özel grup ile eşleşir
Kaydet üzerine tıkladığınızda, yapılandırmanın gereksinimlerinize uyup uymadığını denetleyebileceğiniz biçimde eşleşen bileşenlerin ön izlemesi sunulur:
Bileşen keşfi örnekleri¶
Yukarıdaki çalışan örnek, en yaygın dosya adı temelli değişken düzenini kapsar. Aşağıdaki örnekler, eşleştirebileceğiniz diğer depo yapılarını göstermektedir.
Her dil için ayrı klasör¶
Her dil için bileşenlerin çeviri dosyalarını içeren ayrı bir klasör kullanılır.
- Kurallı ifade:
(?P<language>[^/.]*)/(?P<component>[^/]*)\.po- Eşleşen dosyalar:
cs/application.pocs/website.pode/application.pode/website.po
Gettext yerelleri yerleşimi¶
Gettext PO dosyalarını kaydetmek için alışılmış yapı.
- Kurallı ifade:
locale/(?P<language>[^/.]*)/LC_MESSAGES/(?P<component>[^/]*)\.po- Eşleşen dosyalar:
locale/cs/LC_MESSAGES/application.polocale/cs/LC_MESSAGES/website.polocale/de/LC_MESSAGES/application.polocale/de/LC_MESSAGES/website.po
Karmaşık dosya adları¶
Dosya adında hem bileşen hem de dil adını kullanmak.
- Kurallı ifade:
src/locale/(?P<component>[^/]*)\.(?P<language>[^/.]*)\.po- Eşleşen dosyalar:
src/locale/application.cs.posrc/locale/website.cs.posrc/locale/application.de.posrc/locale/website.de.po
Yinelenen dil kodu¶
Yol ve dosya adında dili kullanmak.
- Kurallı ifade:
locale/(?P<language>[^/.]*)/(?P<component>[^/]*)/(?P=language)\.po- Eşleşen dosyalar:
locale/cs/application/cs.polocale/cs/website/cs.polocale/de/application/de.polocale/de/website/de.po
Android dizgeleri ayrılsın¶
Android kaynak dizgeleri, birkaç dosyaya ayrılmış.
- Kurallı ifade:
res/values-(?P<language>[^/.]*)/strings-(?P<component>[^/]*)\.xml- Eşleşen dosyalar:
res/values-cs/strings-about.xmlres/values-cs/strings-help.xmlres/values-de/strings-about.xmlres/values-de/strings-help.xml
Birkaç yolu eşleştirmek¶
Java öznitelikleri çevirileri ile birkaç modüllü Maven projesi.
- Kurallı ifade:
(?P<originalHierarchy>.+/)(?P<component>[^/]*)/src/main/resources/ApplicationResources_(?P<language>[^/.]*)\.properties- Bileşen adı:
{{ originalHierarchy }}: {{ component }}- Eşleşen dosyalar:
parent/module1/submodule/src/main/resources/ApplicationResources_fr.propertiesparent/module1/submodule/src/main/resources/ApplicationResource_es.propertiesparent/module2/src/main/resources/ApplicationResource_de.propertiesparent/module2/src/main/resources/ApplicationResource_ro.properties
İpucu
Bileşen bulma eklentisi İç Weblate adresleri kullanır. Sürüm denetimi sistemi kurulumunu birden çok bileşen arasında paylaşmanın kullanışlı bir yoludur. Bağlı bileşenler, ilgili her bir bileşenin Kaynak kod deposu alanına (İşlemler ↓ Ayarlar ↓ Sürüm denetimi sistemi) weblate://project/main-component doldurularak kurulan ana bileşenin yerel deposunu kullanır. Böylece yapılandırma ve sistem kaynakları açısından da zaman kazanılır.
İpucu
Yeni bileşende Eksik dilleri ekleme ile çevrilebilecek dillerin tam kümesinin bulunduğundan emin olun.
Ayrıca bakınız
Fedora Messaging¶
Added in version 5.15.
- Eklenti kimliği:
weblate.fedora_messaging.publish- Yapılandırma:
eventsDeğişiklik etkinlikleri
amqp_hostAMQP işleyici sunucusu
Bağlantı kurulacak AMQP işleyici.
amqp_sslAMQP bağlantısı için SSL kullanılsın
ca_certSertifika yetkilisi sertifikaları
Sunucu tarafından sunulan sertifikayı doğrulamak için kullanılan PEM ile kodlanmış CA sertifikaları paketi.
client_keyİstemci SSH anahtarı
PEM ile kodlanmış istemci kişisel SSL anahtarı.
client_certİstemci SSL sertifikaları
PEM ile kodlanmış istemci SSL sertifikası.
- Tetikleyiciler:
Fedora Messaging uyumlu bir AMQP değişimine bildirimler gönderir.
Fedora Messaging, Weblate üzerinde yapılan tüm değişiklikleri ileten AMQP temelli bir yayınlayıcıdır. Bunu kullanarak Weblate üzerindeki değişikliklere ek hizmetler bağlayabilirsiniz.
İleti konusu¶
Tüm iletiler weblate.<action>.<project>.<component>.<translation> konuludur. İşlem, boşluk yerine alt çizgilerle işlemin küçük harfli yazısal temsilidir. Örneğin resource_update, diğer tüm parçalar isteğe bağlıdır ve nesnenin veya bir dil kodunun adres son eklerini temsil eder.
İleti gövdesi¶
Gövde aşağıdaki alanlardan oluşur (etkinlik için uygun oldukları göz önüne alındığında):
change_idDeğişikliğin sayısal kimliği
actionDeğişikliğin ayrıntılı adı.
timestampISO biçiminde zaman damgası
targetDeğişikliğin yeni değeri (örneğin dizgenin yeni çevirisi)
oldDeğişikliğin eski değeri (örneğin dizgenin önceki çevirisi)
sourceKaynak dizge.
urlİlgili nesneyi görüntüleyecek mutlak adres.
authorYazar kullanıcı adı (örneğin önerileri kabul ederken kullanıcıdan farklı olabilir)
userİşlemi yapan kullanıcı adı
projectProjenin adres son eki
componentBileşenin adres son eki
translationÇeviri dili kodu
İleti üst bilgileri¶
Yönlendirme için de kullanabileceğiniz ek üst bilgiler bulunur:
actionDeğişikliğin ayrıntılı adı.
projectProjenin adres son eki
componentBileşenin adres son eki
Örnek iletiler¶
Depo birleştirme etkinliği:
{
"id": 1,
"action": "Merged repository",
"timestamp": "2017-06-15T11:30:47.325000+00:00",
"url": "http://example.com/projects/test/test/",
"component": "test"
}
Yeni kaynak dizge etkinliği:
{
"id": 2,
"action": "New source string",
"timestamp": "2017-06-15T11:30:47.372000+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Kaynak güncellendi etkinliği:
{
"id": 6,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.410000+00:00",
"url": "http://example.com/projects/test/test/cs/",
"project": "test",
"component": "test",
"translation": "cs"
}
{
"id": 7,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.510000+00:00",
"url": "http://example.com/projects/test/test/de/",
"project": "test",
"component": "test",
"translation": "de"
}
{
"id": 8,
"action": "Resource update",
"timestamp": "2017-06-15T11:30:47.595000+00:00",
"url": "http://example.com/projects/test/test/it/",
"project": "test",
"component": "test",
"translation": "it"
}
Proje silindi etkinliği:
{
"id": 9,
"action": "Removed project",
"timestamp": "2019-10-17T15:57:08.559420+00:00",
"target": "test",
"user": "testuser"
}
Yeni katılımcı etkinliği:
{
"id": 11,
"action": "New contributor",
"timestamp": "2019-10-17T15:57:08.759960+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"author": "testuser",
"user": "testuser",
"project": "test",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Yeni çeviri etkinliği:
{
"id": 12,
"action": "New translation",
"timestamp": "2019-10-17T15:57:08.772591+00:00",
"url": "http://example.com/translate/test/test/cs/?checksum=6412684aaf018e8e",
"target": ["Ahoj svete!\n"],
"author": "testuser",
"user": "testuser",
"project": "test",
"component": "test",
"translation": "cs",
"source": ["Hello, world!\n"]
}
Ayrıca bakınız
Toplu düzenleme¶
- Eklenti kimliği:
weblate.flags.bulk- Yapılandırma:
qSorgu
stateAyarlanacak durum
Kullanılabilecek seçenekler:¶ -1Değiştirilmesin
10Düzenlenmesi gerekli
11Düzenlenmesi gerekli (Yeniden yazılmalı)
12Düzenlenmesi gerekli (Denetlenmesi gerekli)
20Çevrilmiş
30Onaylanmış
add_flagsEklenecek çeviri imleri
remove_flagsKaldırılacak çeviri imleri
add_labelsEklenecek etiketler
remove_labelsKaldırılacak etiketler
- Tetikleyiciler:
Dizgelerin imlerini, etiketlerini veya durumlarını toplu düzenleyin.
Örnekler:
Arama sorgusu |
|
|---|---|
Eklenecek etiketler |
son |
Arama sorgusu |
|
|---|---|
Eklenecek çeviri imleri |
|
Arama sorgusu |
|
|---|---|
Eklenecek çeviri imleri |
|
Değiştirilmemiş çevirileri “Yeniden yazılmalı” olarak imleme¶
- Eklenti kimliği:
weblate.flags.same_edit- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Sürüm denetimi sisteminden yeni bir çevrilebilir dizge içe aktarıldığında ve bir kaynak dizgeyle eşleştiğinde, Weblate üzerinde yeniden yazılmalı olarak imlenir. Özellikle çevrilmemiş dizgeler için kaynak dizgeleri içeren dosya biçimleri için kullanışlıdır.
İpucu
Ayrıca, Çeviri imleri için strict-same imini ekleyerek Çeviri değiştirilmemiş kalite denetimini sıkılaştırmak isteyebilirsiniz.
Ayrıca bakınız
Yeni kaynak dizgeleri “Denetlenmesi gerekli” olarak imleme¶
- Eklenti kimliği:
weblate.flags.source_edit- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Sürüm denetimi sisteminden yeni bir kaynak dizge içe her aktarıldığında, Weblate üzerinde denetlenmesi gerekli olarak imlenir. Böylece geliştiriciler tarafından yazılan kaynak dizgeleri kolayca süzebilir ve düzenleyebilirsiniz.
Ayrıca bakınız
Yeni çevirileri “Yeniden yazılmalı” olarak imleme¶
- Eklenti kimliği:
weblate.flags.target_edit- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Sürüm denetimi sisteminden yeni bir çevrilebilir dizge içeri her aktarıldığında, Weblate üzerinde yeniden yazılmalı olarak imlenir. Böylece geliştiricilerin oluşturduğu çevirileri kolayca süzebilir ve düzenleyebilirsiniz.
Ayrıca bakınız
Depodan güncellenmiş çevirileri “Yeniden yazılmalı” olarak imle¶
- Eklenti kimliği:
weblate.flags.target_repo_update- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Sürüm denetimi sisteminden bir dizge çevirisi değiştirildiğinde, Weblate üzerinde yeniden yazılmalı olarak imlenir. Özellikle çeviri dosyaları sık sık el ile veya bir dış hizmet tarafından güncelleniyorsa kullanışlıdır.
Ayrıca bakınız
Salt okunur dizgeleri kaynak ile doldurma¶
Added in version 4.18.
- Eklenti kimliği:
weblate.generate.fill_read_only- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Salt okunur dizgelerin çevirilerini kaynak dizgeler ile doldurur.
İstatistik oluşturma¶
- Eklenti kimliği:
weblate.generate.generate- Yapılandırma:
filenameOluşturulacak dosyanın adı
templateOluşturulacak dosyanın içeriği
- Tetikleyiciler:
Çeviri durumu ile ilgili ayrıntılı bilgiler içeren bir dosya oluşturur.
Hem dosya adında hem de içerikte bir Django kalıbı kullanabilirsiniz. Markup ile ilgili ayrıntılı bilgi almak için Kalıp kodlaması bölümüne bakabilirsiniz.
Örneğin, her çeviri için bir özet dosyası oluşturma:
- Oluşturulacak dosyanın adı
locale/{{ language_code }}.json- İçerik
{ "language": "{{ language_code }}", "strings": "{{ stats.all }}", "translated": "{{ stats.translated }}", "last_changed": "{{ stats.last_changed }}", "last_author": "{{ stats.last_author }}", }
Ayrıca bakınız
Çeviriyi kaynak dizgeyle önceden doldurma¶
Added in version 4.11.
- Eklenti kimliği:
weblate.generate.prefill- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Çeviri dizgelerini kaynak dizgeler ile doldurur.
Bileşendeki tüm çevrilmemiş dizgeler kaynak dizgeyle doldurulur ve düzenlenmesi gerekli olarak imlenir. Çeviri dosyalarında boş dizge kabul edilmediğinde bunu kullanın. .. AUTOGENERATED START: weblate.generate.pseudolocale .. Bu bölüm ./manage.py list_addons tarafından kendiliğinden oluşturulur. El ile düzenlemeyin.
Sözde yerel oluşturma¶
Added in version 4.5.
- Eklenti kimliği:
weblate.generate.pseudolocale- Yapılandırma:
sourceKaynak dizgeler
targetHedef çeviri
Bu çevirideki tüm dizgelerin üzerine yazılacak
prefixBaşa eklenmiş sabit yazı
var_prefixBaşa eklenmiş değişken yazı
suffixSona eklenmiş sabit yazı
var_suffixSona eklenmiş değişken yazı
var_multiplierDeğişken yazı çarpanı
Kaynak dizgenin uzunluğuna bağlı olarak değişken yazının kaç kez yineleneceği.
include_readonlySalt okunur dizgeleri katma
- Tetikleyiciler:
Kaynak dizgelere kendiliğinden ön ek ve son ek ekleyerek çeviri oluşturur.
Sözde yereller, yerelleştirme için hazırlanmamış dizgeleri bulmaya yarar. Böylece, uygulamayı sözde yerel dilde çalıştırırken değiştirilmemiş dizgelerin bulunmasını kolaylaştırmak için tüm çevrilebilir kaynak dizgeleri değiştirilir.
Yerelleştirilmiş karşılıkları yerleşime uymayabilecek dizgeler de bulunabilir.
Değişken bölümlerin kullanılması, yerelleştirmeden sonra kullanıcı arabirimine sığmayabilecek dizgelerin bulunmasını sağlar. İçerik kaynak dizge uzunluğuna göre genişletilir. Değişken yazılar, içeriğin uzunluğunun çarpanla çarpılmasıyla yinelenir. Örneğin, Merhaba dünya ve _ değişken yazısı ile değişken çarpanı 1 olduğunda Merhaba dünya___________ olur. Yazı kaynak dizgedeki her karakter için bir kez yinelenir.
Dizgeler şu model kullanılarak oluşturulacak:
Başa eklenmiş sabit yazı Başa eklenmiş değişken yazı Kaynak dizge Sona eklenmiş değişken yazı Sona eklenmiş sabit yazı
İpucu
Deneme için gerçek dilleri kullanabilirsiniz. Bunun yanında Weblate üzerinde en_XA ve ar_XB gibi bu iş için ayrılmış sahte ayarlar vardır.
İpucu
Bu eklentiyi, var olan bir dilin ya da benzer bir dilin yeni bir yerel ayarına çeviri başlatmak için kullanabilirsiniz. Çeviriyi bileşene ekledikten sonra, eklentiyi izleyin. Örnek: fr diliniz varsa ve fr_CA çevirisini başlatmak istiyorsanız, kaynak olarak fr, hedef olarak fr_CA ayarlayın ve ön ek ile son eki boş bırakın.
Kopyalamadan sonra yapılan çevirilerin Weblate tarafından değiştirilmesini önlemek için yeni çeviriyi doldurduktan sonra eklentiyi kaldırın.
Katılımcıları yorum bölümünde görüntüleme¶
- Eklenti kimliği:
weblate.gettext.authors- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
PO dosyası üst bilgilerinin yorum bölümü, katılımcı adlarını ve katkı yıllarını içerecek biçimde güncellenir.
PO dosya üst bilgileri şöyle görünür:
# Michal Čihař <michal@weblate.org>, 2012, 2018, 2019, 2020.
# Pavel Borecki <pavel@example.com>, 2018, 2019.
# Filip Hron <filip@example.com>, 2018, 2019.
# anonymous <noreply@weblate.org>, 2019.
“configure” dosyasındaki ALL_LINGUAS değişkeni güncelleme¶
- Eklenti kimliği:
weblate.gettext.configure- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Eklenti kurulumu, Günlük, Depo ekleme sonrası, Depo kaldırma sonrası
Bir çeviri eklendiğinde veya kaldırıldığında “configure”, “configure.in” veya “configure.ac” dosyalarındaki ALL_LINGUAS değişkenini günceller.
Bir çeviri eklendiğinde veya kaldırıldığında, configure, configure.in veya herhangi bir configure.ac dosyasındaki ALL_LINGUAS değişkenini günceller.
Gettext çıktısını özelleştirme¶
Removed in version 5.13: Dosya biçimi parametreleri ile değiştirildi.
Update gettext template (Django)¶
Added in version 5.17.
- Eklenti kimliği:
weblate.gettext.django- Yapılandırma:
intervalGüncelleme sıklığı
Bileşen yenilendiğinde eklentinin POT dosyasının ne sıklıkta güncellemesi gerektiği.
Kullanılabilecek seçenekler:¶ dailyGünlük
weeklyHaftalık
monthlyAylık
normalize_headerPOT üst bilgisini normalleştirme
Gettext üst bilgilerini günceller ve yer belirtici POT yorumlarını değiştirir.
- Tetikleyiciler:
Hazır Django makemessages komutunu kullanarak gettext kalıbını günceller.
LINGUAS dosyasını güncelleme¶
- Eklenti kimliği:
weblate.gettext.linguas- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Eklenti kurulumu, Günlük, Depo ekleme sonrası, Depo kaldırma sonrası
Yeni bir çeviri eklendiğinde ya da kaldırıldığında LINGUAS dosyası güncellenir.
POT dosyasını güncelle (Meson)¶
Added in version 5.17.
- Eklenti kimliği:
weblate.gettext.meson- Yapılandırma:
intervalGüncelleme sıklığı
Bileşen yenilendiğinde eklentinin POT dosyasının ne sıklıkta güncellemesi gerektiği.
Kullanılabilecek seçenekler:¶ dailyGünlük
weeklyHaftalık
monthlyAylık
normalize_headerPOT üst bilgisini normalleştirme
Gettext üst bilgilerini günceller ve yer belirtici POT yorumlarını değiştirir.
comment_modeKod yorumları
Hiç bir xgettext yorumu ayıklanmayacak, tüm yorumlar ayıklanacak veya yalnızca belirli bir etiketle imlenmiş yorumlar ayıklanacak olarak seçin.
Kullanılabilecek seçenekler:¶ offYorumlar ayıklanmasın
allTüm yorumlar ayıklansın
taggedBelirli bir etiketteki yorumlar ayıklansın
comment_tagYorum etiketi
Etiketli yorum kipini kullanırken yorum ayıklaması için xgettext üzerine aktarılan etiket.
checksxgettext denetimleri
Ayıklanan iletileri etkinleştirmek için ek xgettext doğrulama denetimleri.
Kullanılabilecek seçenekler:¶ ellipsis-unicodeellipsis-unicode
space-ellipsisspace-ellipsis
quote-unicodequote-unicode
bullet-unicodebullet-unicode
keywordEk anahtar sözcük
İsteğe bağlı ek anahtar sözcük –keyword ile xgettext üzerine aktarıldı.
presetMeson hazır ayarı
Meson gettext bütünleştirmesiyle eşleşen hazır xgettext değişkeni hazır ayarı. GLib hazır ayarı, Meson gettext yardımcısı tarafından kullanılan anahtar sözcük ve biçim-im seçeneklerini ekler.
Kullanılabilecek seçenekler:¶ glibGLib
- Tetikleyiciler:
Meson gettext kurallarını kullanarak gettext kalıbını günceller.
MO dosyaları üretme¶
- Eklenti kimliği:
weblate.gettext.mo- Yapılandırma:
pathOluşturulan MO dosyasının yolu
Belirtilmemişse, PO dosyasının konumu kullanılır.
fuzzyDüzenlenmesi gereken dizgeler katılsın
Düzenlenmesi gereken (belirsiz) dizgeler genellikle çeviri olarak kullanılmaya hazır değildir.
- Tetikleyiciler:
PO dosyası her değiştirildiğinde MO dosyası kendiliğinden oluşturulur.
Oluşturulan MO dosyasının konumu özelleştirilebilir ve bunun için Kalıp kodlaması alanı kullanılır.
Not
Bir çeviri silinirse, PO dosyası depodan silinir, ancak bu eklenti tarafından oluşturulmuş MO dosyası silinmez. MO dosyası yukarı akıştan el ile kaldırılmalıdır.
PO dosyalarını POT ile eşleştirerek güncelleme (msgmerge)¶
5.13 sürümünde değişti: Ayarlar yapılandırması Dosya biçimi parametreleri konumuna taşındı.
- Eklenti kimliği:
weblate.gettext.msgmerge- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Tüm PO dosyalarını (“Dosya maskesi” tarafından yapılandırıldığı gibi) msgmerge kullanarak POT dosyasıyla eşleşecek şekilde günceller (“Yeni çeviriler kalıbı” tarafından yapılandırıldığı gibi).
Bu eklenti, POT (kalıb) dosyasının yeni dizgelerle ya da var olan dizgelerdeki değişikliklerle güncellendiği gettext PO dosyalarıyla çalışırken çok önemlidir. POT dosyası depoda güncellendiğinde, bu eklenti bu değişiklikleri otomatik olarak tüm dil PO dosyalarıyla birleştirerek şunları sağlar:
Yeni çevrilebilir dizgeler tüm dillerde görüntülenir
Kaldırılmış dizgeler kullanılmıyor olarak işaretlenir
Değiştirilmiş dizgeler gözden geçirilmesi gerekli olarak işaretlenir (bulanık)
Çoğu msgmerge komut satırı seçeneği dosya biçimi parametreleri yapılandırması ile ayarlanabilir.
POT dosyasını güncelle (Sphinx)¶
Added in version 5.17.
- Eklenti kimliği:
weblate.gettext.sphinx- Yapılandırma:
intervalGüncelleme sıklığı
Bileşen yenilendiğinde eklentinin POT dosyasının ne sıklıkta güncellemesi gerektiği.
Kullanılabilecek seçenekler:¶ dailyGünlük
weeklyHaftalık
monthlyAylık
normalize_headerPOT üst bilgisini normalleştirme
Gettext üst bilgilerini günceller ve yer belirtici POT yorumlarını değiştirir.
filter_modeSüzme
İsteğe bağlı olarak Sphinx ayıklamasından sonra çevrilmeye uygun olmayan dizgeleri kaldırır.
Kullanılabilecek seçenekler:¶ noneYok
weblate_docsWeblate belgeleri
- Tetikleyiciler:
Proje yapılandırmasını yüklemeden Sphinx gettext oluşturucusunu kullanarak gettext kalıbını günceller.
POT dosyasını güncelle (xgettext)¶
Added in version 5.17.
- Eklenti kimliği:
weblate.gettext.xgettext- Yapılandırma:
intervalGüncelleme sıklığı
Bileşen yenilendiğinde eklentinin POT dosyasının ne sıklıkta güncellemesi gerektiği.
Kullanılabilecek seçenekler:¶ dailyGünlük
weeklyHaftalık
monthlyAylık
normalize_headerPOT üst bilgisini normalleştirme
Gettext üst bilgilerini günceller ve yer belirtici POT yorumlarını değiştirir.
comment_modeKod yorumları
Hiç bir xgettext yorumu ayıklanmayacak, tüm yorumlar ayıklanacak veya yalnızca belirli bir etiketle imlenmiş yorumlar ayıklanacak olarak seçin.
Kullanılabilecek seçenekler:¶ offYorumlar ayıklanmasın
allTüm yorumlar ayıklansın
taggedBelirli bir etiketteki yorumlar ayıklansın
comment_tagYorum etiketi
Etiketli yorum kipini kullanırken yorum ayıklaması için xgettext üzerine aktarılan etiket.
checksxgettext denetimleri
Ayıklanan iletileri etkinleştirmek için ek xgettext doğrulama denetimleri.
Kullanılabilecek seçenekler:¶ ellipsis-unicodeellipsis-unicode
space-ellipsisspace-ellipsis
quote-unicodequote-unicode
bullet-unicodebullet-unicode
keywordEk anahtar sözcük
İsteğe bağlı ek anahtar sözcük –keyword ile xgettext üzerine aktarıldı.
input_modeGiriş kaynağı
xgettext tarafından kaynak dosyalarının glob modellerinden mi yoksa bir POTFILES/POTFILES.in bildiriminden mi okunacağını seçin.
Kullanılabilecek seçenekler:¶ patternsKaynak dosya modelleri
potfilesPOTFILES envanteri
languagexgettext dili
Programlama dili xgettext üzerine aktarıldı, örneğin Python veya C.
source_patternsKaynak dosya modelleri
xgettext ile ayıklanacak dosyalar için yeni satır ile ayrılmış depoya göre glob modelleri.
potfiles_pathPOTFILES yolu
POTFILES veya POTFILES.in dosyasına depoya göre yol. Kayıtlar depo kök klasörüne göre çözümlenir. Envanterin yanında varsa, POTFILES.skip listelenen dosyaları ayıklamaya katmaz.
- Tetikleyiciler:
Seçilmiş kaynak dosyalarda xgettext kullanarak gettext kalıbını günceller.
Git işlemelerini bir araya toplar¶
- Eklenti kimliği:
weblate.git.squash- Yapılandırma:
squashİşlemeleri bir araya toplama
Kullanılabilecek seçenekler:¶ allTüm işlemeler bir arada
languageDile göre
fileDosyaya göre
authorKatkıda bulunana göre
append_trailersBir araya toplanmış işlemelerin iletisine art bilgiler eklensin
‘Co-authored-by: …’ gibi bir işleme iletisinin başka bir serbest biçim bölümünün sonunda, art bilgi satırları RFC 822 e-posta üst bilgilerine benzeyen satırlardır.
commit_messageİşleme iletisi
Bu işleme iletisi, bir araya toplanmış işleme iletilerinden gelen birleşik işleme iletileri yerine kullanılır.
- Tetikleyiciler:
Değişiklikleri yollamadan önce Git işlemelerini bir araya toplar.
İpucu
Gereksiz çelişkileri önlemek için, yukarı akış değişikliklerinin internet kancaları veya API ile kendiliğinden alınacak şekilde yapılandırmanız önerilir. Ayrıntılı bilgi almak için: Depoları güncellemek.
Git işlemeleri, değişiklikler itilmeden önce aşağıdaki kiplerden biri kullanılarak bir araya toplanabilir:
Tüm işlemeler bir arada
Dile göre
Dosyaya göre
Katkıda bulunana göre
Özgün işleme iletileri korunur. Ancak Katkıda bulunana göre olarak seçilmediği ya da işleme iletisi eklenecek şekilde özelleştirilmediği sürece katkıda bulunan bilgisi eksik kalır.
Özgün işleme iletileri, isteğe bağlı olarak özel bir işleme iletisiyle değiştirilebilir.
Art bilgiler (Co-authored-by: … gibi işleme satırları) isteğe bağlı olarak özgün işleme iletilerinden kaldırılabilir ve bir araya toplanmış işleme iletisinin sonuna eklenebilir. Bu aynı zamanda her çevirmen için özel bir Co-authored-by: bilgisi oluşturur.
JSON çıktısını özelleştirme¶
5.12 sürümünde değişti: Ayraçlardan sonra boşluk bırakılmasın seçeneği eklendi.
Removed in version 5.13: Dosya biçimi parametreleri ile değiştirildi.
Depoyu yukarı akışa sıfırla¶
Added in version 5.17.
- Eklenti kimliği:
weblate.hosted.reset- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Her gece Weblate deposundaki tüm değişiklikleri yok sayar.
Java özellikleri dosyasını biçimlendirme¶
- Eklenti kimliği:
weblate.properties.sort- Yapılandırma:
case_sensitiveBüyük/küçük harfe duyarlı anahtar sıralaması kullanılsın
- Tetikleyiciler:
Java özellikleri dosyasını biçimlendirir ve sıralar.
Yeni satır karakterlerini Unix karakterleri olarak değiştirir.
Unicode kaçınma dizilerini büyük harfle biçimlendirir (varsa).
Boş satırları ve yorumları siler.
Dizgeleri anahtarlara göre sıralar.
Yinelenen dizgeleri kaldırır.
Eski yorumları kaldırma¶
- Eklenti kimliği:
weblate.removal.comments- Yapılandırma:
ageTutulacak gün sayısı
- Tetikleyiciler:
Yorumların kaldırılması için bir zaman dilimi ayarlayabilirsiniz.
Bu özellik, güncelliğini yitirmiş olabilecek eski yorumları kaldırmak için yararlı olabilir. Bir yorumun eski olması önemini yitirdiği anlamına gelmediğinden dikkatli kullanın.
Eski önerileri kaldırma¶
- Eklenti kimliği:
weblate.removal.suggestions- Yapılandırma:
ageTutulacak gün sayısı
votesOy verme eşiği
Threshold for removal. Leave empty to remove suggestions regardless of votes. This field has no effect with voting turned off.
- Tetikleyiciler:
Önerilerin kaldırılması için bir zaman dilimi ayarlayabilirsiniz.
Belirli bir zaman diliminde yeterince olumlu oy almayan önerilerin kaldırılması için öneri oylamayla (ayrıntılı bilgi almak için: Akran değerlendirmesi) bağlantılı olarak çok yararlı olabilir.
RESX dosyalarını güncelleme¶
- Eklenti kimliği:
weblate.resx.update- Yapılandırma:
Bu eklentinin yapılandırması yok.
- Tetikleyiciler:
Tüm çeviri dosyalarını tek dilli temel dosya ile eşleşecek biçimde günceller. Kullanılmayan dizgeler kaldırılır ve yeni dizgeler kaynak dizgenin kopyaları olarak eklenir.
İpucu
Yalnızca eski çeviri anahtarlarını kaldırmak istiyorsanız Çeviri dosyalarını temizleme kullanın.
Slack internet kancaları¶
Added in version 5.12.
- Eklenti kimliği:
weblate.webhook.slack- Yapılandırma:
webhook_urlİnternet kancası adresi
eventsDeğişiklik etkinlikleri
- Tetikleyiciler:
Seçilmiş etkinliklere göre bir Slack kanalına bildirim gönderir.
Uyarı
Bildirim içeriğinde HTML kod imleri görüntülenebilir. Bu durum, bilinen ve yakında ele alınacak olan bir sorundur. Ayrıntılı bilgi almak için: https://github.com/WeblateOrg/weblate/issues/15056.
İpucu
Bir internet kancası adresi edinmek için, Slack gelen internet kancaları belgesi içinde anlatılan adımları izleyin
İnternet kancası¶
Added in version 5.11.
5.15 sürümünde değişti: Parola uzunluğunun teknik özelliklere uygunluğu doğrulandı.
- Eklenti kimliği:
weblate.webhook.webhook- Yapılandırma:
webhook_urlİnternet kancası adresi
secretİnternet kancası parolası
Standart internet kancaları parolası base64 kodlu bir dizgedir.
eventsDeğişiklik etkinlikleri
- Tetikleyiciler:
Standart Webhooks teknik özelliklerine uygun olarak, seçilmiş etkinliklere göre dış hizmetlere bildirim gönderir.
İstek yükü Weblate Messaging şeması ile uyumludur. OpenAPI açıklaması /api/docs/ adresinde de bulunabilir. Örnek istek gövdesi:
{
"change_id": 99,
"action": "Translation changed",
"timestamp": "2019-08-24T14:15:22Z",
"target": "Nazdar svete!",
"old": "Nazdar!",
"source": "Hello, world",
"url": "/translate/project-slug/component-slug/cs/?checksum=46add148a53cab6f",
"author": "author-username",
"user": "user-username",
"project": "project-slug",
"component": "component-slug",
"translation": "cs"
}
Kategoriler ile örnek istek gövdesi:
{
"change_id": 8910,
"action": "Component renamed",
"timestamp": "2025-06-11T07:15:09Z",
"target": ["new-name"],
"old": ["component-slug"],
"url": "/projects/project-slug/parent-category/child-category/sub-category/component-slug/",
"user": "testuser",
"project": "project-slug",
"component": "component-slug",
"category": [
"sub-category",
"child-category",
"parent-category"
]
}
Örnek istek üst bilgileri:
{
"webhook-id": "7f1c5477f6275a69af7b83236c20cb1a",
"webhook-timestamp": "1748505623.044281",
"webhook-signature": "v1,Ceo5qEr07ixe2NLpvHk3FH9bwy/WavXrAFQ/9tdO6mc="
}
Webhook-signature, secret dizgesi, istek yükü, webhook-timestamp ve webhook-id kullanılarak oluşturulan HMAC imzalarının boşluklarla ayrılmış bir listesidir. Bu imza internet kancası isteğinin gerçekliğini ve bütünlüğünü doğrular.
Belirtilen parola, 24 bayt (192 bit) ve 64 bayt (512 bit) arasında base64 kodlu bir dizgedir. Kolay tanımlama için whsec_ ön eki kullanılabilir.
Bir isteği doğrulamak için standardwebhooks kitaplığındaki Webhook.verify yöntemini veya “Standart Webhooks teknik özelliklerinin” bir uygulamasını kullanabilirsiniz.
Sahipsiz eklentiler¶
XML çıktısını özelleştirme¶
Added in version 4.15.
Removed in version 5.13: Dosya biçimi parametreleri ile değiştirildi.
YAML çıktısını özelleştirme¶
Removed in version 5.13: Dosya biçimi parametreleri ile değiştirildi.
Yaygın eklenti parametreleri¶
Makine çevirisi hizmetleri¶
|
Alibaba |
|
Amazon Translate |
|
Anthropic |
|
Apertium APy |
|
Azure AI Translator |
|
Azure OpenAI |
|
Baidu |
|
CyrTranslit |
|
DeepL |
|
Glosbe |
|
Google Cloud Translation Advanced |
|
Google Cloud Translation Basic |
|
LTEngine |
|
LibreTranslate |
|
ModernMT |
|
MyMemory |
|
Netease Sight |
|
Ollama |
|
OpenAI |
|
SAP Translation Hub |
|
Systran |
|
Weblate |
|
Weblate çeviri belleği |
|
Yandex |
|
Yandex v2 |
|
Youdao Zhiyun |
|
tmserver |
Dosya biçimi¶
|
Apple eklentileriyle XLIFF 1.2 |
|
Uygulama mağazası üst veri dosyaları |
|
ARB dosyası |
|
Android dizge kaynağı |
|
AsciiDoc dosyası |
|
Advanced Substation Alpha alt yazı dosyası |
|
Haiku catkeys |
|
Çok platform kaynağı oluşturma |
|
CSV dosyası |
|
Çok değerli CSV dosyası |
|
Basit CSV dosyası |
|
DokuWiki metin dosyası |
|
DTD dosyası |
|
Düz XML dosyası |
|
Fluent dosyası |
|
Format.JS JSON dosyası |
|
go-i18n v1 JSON dosyası |
|
go-i18n v2 JSON dosyası |
|
go-i18n TOML dosyası |
|
gotext JSON dosyası |
|
GWT özellikleri |
|
HTML dosyası |
|
i18next JSON dosyası v3 |
|
i18next JSON dosyası v4 |
|
IDML dosyası |
|
INI dosyası |
|
Inno Setup INI dosyası |
|
Joomla dil dosyası |
|
JSON dosyası |
|
JSON iç içe geçmiş yapı dosyası |
|
Laravel PHP dizgeleri |
|
Markdown dosyası |
|
MDX file |
|
MediaWiki metin dosyası |
|
@draggable/i18n dil dosyası |
|
Mobile Kotlin kaynağı |
|
Nextcloud JSON dosyası |
|
OpenDocument dosyası |
|
PHP dizgeleri |
|
XLIFF 1.2 çeviri dosyası |
|
gettext PO dosyası |
|
gettext PO dosyası (tek dilli) |
|
gettext eklentileriyle XLIFF 1.2 |
|
Java özellikleri |
|
RC dosyası |
|
RESJSON dosyası |
|
ResourceDictionary dosyası |
|
.NET kaynak dosyası |
|
Ruby YAML dosyası |
|
SubRip alt yazı dosyası |
|
Substation Alpha alt yazı dosyası |
|
iOS dizgeleri |
|
Stringsdict dosyası |
|
MicroDVD alt yazı dosyası |
|
TermBase eXchange dosyası |
|
TOML dosyası |
|
Qt Linguist çeviri dosyası |
|
Düz metin dosyası |
|
WebExtension JSON dosyası |
|
WixLocalization dosyası |
|
Yerleştirilebilir ögeler desteği olan XLIFF 1.2 |
|
XLIFF 2.0 çeviri dosyası |
|
Yerleştirilebilir ögeler desteği olan XLIFF 2.0 |
|
Excel Open XML |
|
XWiki tam sayfası |
|
XWiki Java özellikleri |
|
XWiki sayfası özellikleri |
|
YAML dosyası |
Değişiklik etkinlikleri¶
|
Kaynak güncellendi |
|
Çeviri tamamlandı |
|
Çeviri değiştirildi |
|
Yorum eklendi |
|
Öneri eklendi |
|
Çeviri eklendi |
|
Kendiliğinden çevrildi |
|
Öneri kabul edildi |
|
Çeviri geri alındı |
|
Çeviri yüklendi |
|
Kaynak dizge eklendi |
|
Bileşen kilitlendi |
|
Bileşenin kilidi açıldı |
|
Değişiklikler işlendi |
|
Değişiklikler itildi |
|
Depo sıfırlandı |
|
Depo birleştirildi |
|
Depo yeniden yerleştirildi |
|
Depo birleştirilemedi |
|
Depo yeniden yerleştirilemedi |
|
İşlenemedi |
|
Çeviri silindi |
|
Öneri silindi |
|
Çeviri değiştirildi |
|
Depo itilemedi |
|
Öneri temizleme sırasında silindi |
|
Kaynak dizge değiştirildi |
|
Dizge eklendi |
|
Durum toplu olarak değiştirildi |
|
Görünürlük değiştirildi |
|
Kullanıcı eklendi |
|
Kullanıcı silindi |
|
Çeviri onaylandı |
|
Düzenlenmek üzere imlendi |
|
Bileşen silindi |
|
Proje silindi |
|
Proje yeniden adlandırıldı |
|
Bileşen yeniden adlandırıldı |
|
Bileşen taşındı |
|
Katkıda bulunan katıldı |
|
Duyuru gönderildi |
|
Uyarı tetiklendi |
|
Dil eklendi |
|
Dil istendi |
|
Proje oluşturuldu |
|
Bileşen oluşturuldu |
|
Kullanıcı çağrıldı |
|
Depo bildirimi alındı |
|
Çeviri dosya yüklemesi ile değiştirildi |
|
Lisans değiştirildi |
|
Katılımcı lisans anlaşması değiştirildi |
|
Ekran görüntüsü eklendi |
|
Ekran görüntüsü yüklendi |
|
Depodaki dizge değiştirildi |
|
Eklenti kuruldu |
|
Eklenti yapılandırması değiştirildi |
|
Eklenti kaldırıldı |
|
Dizge kaldırıldı |
|
Yorum silindi |
|
Yorum çözümlendi |
|
Açıklama güncellendi |
|
Kategori silindi |
|
Kategori yeniden adlandırıldı |
|
Kategori taşındı |
|
Dizge kaydedilemedi |
|
Depoya dizge eklendi |
|
Yüklemedeki dizge güncellendi |
|
Yüklemeye dizge eklendi |
|
Çeviri kaynak yüklemesi ile değiştirildi |
|
Bileşen çevirisi tamamlandı |
|
Zorunlu denetim uygulandı |
|
Değişiklik yayıldı |
|
Dosya yüklendi |
|
Ek imler güncellendi |
|
Yazı tipi yüklendi |
|
Yazı tipi değiştirildi |
|
Yazı tipi silindi |
|
Çevirilerin eşitlenmesi dayatıldı |
|
Çevirilerin yeniden taranması dayatıldı |
|
Ekran görüntüsü kaldırıldı |
|
Etiket eklendi |
|
Etiket kaldırıldı |
|
Depo temizlendi |
|
Yüklemeye kaynak dizge eklendi |
|
Depoya kaynak dizge eklendi |
|
Proje yedeklendi |
|
Proje geri yüklendi |
|
Bileşen geri yüklendi |
|
Kullanıcı düzenlemesi geri alındı |
|
Project setting changed |
|
Component setting changed |
Eklenti listesini özelleştirme¶
Eklenti listesi WEBLATE_ADDONS tarafından yapılandırılır. Başka bir eklenti eklemek için, bu seçeneğe mutlak sınıf adını eklemeniz yeterlidir.
Eklenti yazma¶
Kendi eklentilerinizi de yazabilir, eklenti üst verilerini tanımlamak için weblate.addons.base.BaseAddon alt sınıfını oluşturabilir ve ardından işlemi yapmak için bir geri çağırma ekleyebilirsiniz.
Ayrıca bakınız
Eklentiden betikleri çalıştırma¶
Eklentiler, dış betikleri yürütmek için de kullanılabilir. Bu özellik eskiden Weblate ile bütünleşikti. Ancak şimdi betikleri bir eklenti ile sarmalamak için bazı kodlar yazmanız gerekiyor.
# Copyright © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later
"""Example pre commit script."""
from __future__ import annotations
from typing import ClassVar
from django.utils.translation import gettext_lazy
from weblate.addons.events import AddonEvent
from weblate.addons.scripts import BaseScriptAddon
class ExamplePreAddon(BaseScriptAddon):
# Event used to trigger the script
events: ClassVar[set[AddonEvent]] = {
AddonEvent.EVENT_PRE_COMMIT,
}
# Name of the addon, has to be unique
name = "weblate.example.pre"
# Verbose name and long description
verbose = gettext_lazy("Execute script before commit")
description = gettext_lazy("This add-on executes a script.")
# Script to execute
script = "/bin/true"
# File to add in commit (for pre commit event)
# does not have to be set
add_file = "po/{{ language_code }}.po"
Kurulum ile ilgili ayrıntılı bilgi almak için: Özel kalite denetimleri, eklentiler, kendiliğinden öneriler ve kendiliğinden düzeltmeler.
Betik dosyası, belirtilen bileşen için sürüm denetimi sistemi deposunun kök klasörüne ayarlanmış geçerli klasör ile yürütülür.
Ek olarak, şu ortam değişkenleri kullanılabilir:
- WL_VCS¶
Kullanılan sürüm denetimi sistemi.
- WL_REPO¶
Yukarı akış deposu adresi.
- WL_PATH¶
Sürüm denetimi sistemi deposunun mutlak yolu.
- WL_BRANCH¶
Geçerli bileşende yapılandırılmış depo dalı.
- WL_FILEMASK¶
Geçerli bileşen için dosya maskesi.
- WL_TEMPLATE¶
Tek dilli çeviriler için kalıbın dosya adı (boş olabilir).
- WL_NEW_BASE¶
Yeni çeviriler oluşturmak için kullanılan dosyanın adı (boş olabilir).
- WL_FILE_FORMAT¶
Geçerli bileşende kullanılan dosya biçimi.
- WL_LANGUAGE¶
İşlenmekte olan çevirinin dili (bileşen düzeyinde kancalar için kullanılamaz).
- WL_PREVIOUS_HEAD¶
Güncellemeden sonra önceki HEAD (yalnızca güncelleme sonrası kancası çalıştırıldıktan sonra kullanılabilir).
- WL_COMPONENT_SLUG¶
Adresi oluşturmak için kullanılan bileşen adres son eki.
- WL_PROJECT_SLUG¶
Adresi oluşturmak için kullanılan proje adres son eki.
- WL_COMPONENT_NAME¶
Bileşen adı.
- WL_PROJECT_NAME¶
Proje adı.
- WL_COMPONENT_URL¶
Bileşen adresi.
- WL_ENGAGE_URL¶
Proje etkileşim sayfası adresi.
Ayrıca bakınız
Güncelleme sonrası depo işleme¶
Sürüm denetimi sistemi yukarı akış kaynağı değiştiğinde çeviri dosyalarını güncellemek için kullanılabilir. Bunu yapabilmek için lütfen Weblate tarafından yalnızca sürüm denetimi sistemine işlenmiş dosyaların görüldüğünü, bu nedenle değişiklikleri betiğin bir parçası olarak yapmanız gerektiğini unutmayın.
Örneğin Gulp ile bunu şu kodu kullanarak yapabilirsiniz:
#! /bin/sh
gulp --gulpfile gulp-i18n-extract.js
git commit -m 'Update source strings' src/languages/en.lang.json
Depoya işlenmeden önce çevirilerin işlenmesi¶
Bir çevirinin depoya kaydedilmesinden önce kendiliğinden değiştirilmesi için işleme betiğini kullanın.
Geçerli bir çevirinin dosya adından oluşan tek bir parametre olarak aktarılır.
Eklenti işlemleri günlüklerinin kaydedilmesi¶
Eklenti işlem günlüğü, eklentinin çalışmasını izler ve eklenti işlemlerini izlemek için kullanılabilir.
ADDON_ACTIVITY_LOG_EXPIRY seçeneği yapılandırılarak belirli bir zamandan önceki günlük kayıtları kaldırılabilir.