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 YönetimEklentiler 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 :wladmin:`install_addon kullanarak da yapılandırabilirsiniz.

../_images/addons.webp

Events that trigger add-ons

Add-on installation

Triggered when add-on is being installed.

Component update

Triggered whenever a change happens in a component such as:

  • Strings are changed in the repository.

  • A string is added.

  • A new translation is added.

Daily

Triggered daily, but add-ons usually split the daily load between components depending on BACKGROUND_TASKS.

Repository post-add

Triggered just after the new translation is added and committed.

Repository post-commit

Triggered just after the changes are committed.

Repository post-push

Triggered just after the repository is pushed upstream.

Repository post-update

Triggered whenever new changes are pulled from the upstream repository.

Repository pre-commit

Triggered just before the changes are committed.

Repository pre-push

Triggered just before the repository is pushed upstream.

Repository pre-update

Triggered just before the repository update is attempted.

Storage post-load

Triggered when file is parsed by Weblate.

Unit post-save

Triggered just after the string is saved.

Unit pre-create

Triggered just after the newly created string is saved.

Hazır eklentiler

Kendiliğinden çeviri

Eklenti kimliği:

weblate.autotranslate.autotranslate

Yapılandırma:

mode

Kendiliğinden çeviri kipi

Kullanılabilecek seçenekler:

suggest – Öneri olarak ekler

translate – Çeviri olarak ekler

fuzzy – “Düzenlenmesi gerekli” olarak ekler

filter_type

Arama süzgeci

Lütfen tüm dizgeleri çevirdiğinizde var olan tüm çevirileri yok sayılacağını unutmayın.

Kullanılabilecek seçenekler:

all – Tüm dizgeler

nottranslated – Çevrilmemiş dizgeler

todo – Tamamlanmamış dizgeler

fuzzy – Düzenlenecek olarak imlenmiş dizgeler

check:inconsistent – Denetim hatası: Tutarsız

check:translated – Failing check: Has been translated

auto_source

Kendiliğinden yapılmış çevirilerin kaynağı

Kullanılabilecek seçenekler:

others – Diğer çeviri bileşenleri

mt – Makine çevirisi

component

Bileşen

Kaynak olarak kullanılacak bir bileşenin kısaltmasını yazın. Geçerli projedeki tüm bileşenlerin kullanılması için boş bırakın.

engines

Makine çevirisi hizmetleri

threshold

Skor eşiği

Tetikleyiciler:

Add-on installation, Component update, Daily

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

Çevirilerin katılacağı eşik değeri.

css_selector

CSS seçici

Yerelleştirilebilir ögeleri algılamak için CSS seçici.

cookie_name

Dil tanımlama bilgisinin adı

Dil seçiminin kaydedildiği tanımlama bilgisinin adı.

files

Dizgeleri HTML dosyalarından ayıklama

Geçerli depoda ya da uzak adreslerde çevrilebilir dizgeler için işlenecek dosya adlarının listesi.

Tetikleyiciler:

Add-on installation, Daily, Repository post-commit, Repository post-update

JavaScript ya da HTML yerelleştirmesinde kullanılmak üzere içerik dağıtım ağına çevirileri yayınlar.

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

Boş dizgeleri silme

Added in version 4.4.

Eklenti kimliği:

weblate.cleanup.blank

Yapılandırma:

Bu eklentinin yapılandırması yok.

Tetikleyiciler:

Add-on installation, Repository post-commit, Repository post-update

Ç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:

Add-on installation, Repository post-update, Repository pre-commit

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:

Add-on installation, Daily, Repository post-add

Proje içindeki tüm bileşenler için tutarlı bir dil kümesinin kullanılmasını sağlar.

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

file_format

Dosya biçimi

name_template

Bileşen adını özelleştirme

base_file_template

Tek dil temel dosya adını tanımlama

İki dilli çeviri dosyaları için boş bırakın.

new_base_template

Yeni çeviriler için temel dosyayı tanımlama

Yeni çevirileri oluşturmak için kullanılan dosyanın adı. Gettext için .pot dosyası olarak seçin.

intermediate_template

Ara dil dosyası

Ara çeviri dosyasının adı. Çoğu durumda bu dosya geliştiriciler tarafından sunulan bir çeviri dosyasıdır ve gerçek kaynak dizgeler oluşturulurken kullanılır.

language_regex

Dil süzgeci

Dosya maskesi taranırken çeviri dosyalarını süzmek için kullanılan kurallı ifade.

copy_addons

Ana bileşendeki eklentileri yeni oluşturulanlara kopyalama

remove

Var olmayan dosyalar için bileşenleri kaldırma

confirm

Yukarıdaki eşleşmelerin doğru göründüğünü onaylıyorum

Tetikleyiciler:

Add-on installation, Repository post-update

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 bazı bilgiler gerekir. Yaygın kullanım örnekleri eklenti yardımı bölümünde bulunabilir.

Çeviri dosyalarını eşleştirmek için kurallı ifadede, bileşen ve dili eşleştirmek için 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.

Django kalıbındaki markup kodlarını tüm dosya adı alanlarında kullanabilirsiniz. Örneğin:

{{ component }}

Bileşenin dosya adıyla eşleşir

{{ 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:

../_images/addon-discovery.webp

Bileşen keşfi örnekleri

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

  • cs/website.po

  • de/application.po

  • de/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.po

  • locale/cs/LC_MESSAGES/website.po

  • locale/de/LC_MESSAGES/application.po

  • locale/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.po

  • src/locale/website.cs.po

  • src/locale/application.de.po

  • src/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.po

  • locale/cs/website/cs.po

  • locale/de/application/de.po

  • locale/de/website/de.po

Ayrılmış Android dizgeleri

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

  • res/values-cs/strings-help.xml

  • res/values-de/strings-about.xml

  • res/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.properties

  • parent/module1/submodule/src/main/resources/ApplicationResource_es.properties

  • parent/module2/src/main/resources/ApplicationResource_de.properties

  • parent/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 (YönetimAyarlarSü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.

Ayrıca bakınız

Kalıp kodlaması, import_project

Toplu düzenleme

Eklenti kimliği:

weblate.flags.bulk

Yapılandırma:

q

Sorgu

state

Ayarlanacak durum

Kullanılabilecek seçenekler:

-1 – Değiştirilmesin

10 – Düzenlenmesi gerekli

20 – Çevrilmiş

30 – Onaylanmış

add_flags

Eklenecek çeviri imleri

remove_flags

Kaldırılacak çeviri imleri

add_labels

Eklenecek etiketler

remove_labels

Kaldırılacak etiketler

Tetikleyiciler:

Add-on installation, Component update

Dizgelerin imlerini, etiketlerini veya durumlarını toplu düzenleyin.

Örnekler:

Yeni dizgeler kendiliğinden etiketlensin

Arama sorgusu

NOT has:label

Eklenecek etiketler

son

Tüm Uygulama mağazası üst veri dosyaları değişiklik günlüğü dizgelerini salt okunur olarak imleme

Arama sorgusu

language:en AND key:changelogs/

Eklenecek çeviri imleri

read-only

Belirli dizgeleri salt okunur olarak imleme

Arama sorgusu

source:r"^\`\`[.a-zA-Z0-9_-]*\`\`$" AND language:en

Eklenecek çeviri imleri

read-only

Değiştirilmemiş çevirileri “Düzenlenmesi gerekli” olarak imleme

Eklenti kimliği:

weblate.flags.same_edit

Yapılandırma:

Bu eklentinin yapılandırması yok.

Tetikleyiciler:

Unit pre-create

Sürüm denetimi sisteminden yeni bir çevrilebilir dizge içe aktarıldığında ve bir kaynak dizgeyle eşleştiğinde, Weblate üzerinde düzenlenmesi gerekli 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ş denetimini sıkılaştırmak isteyebilirsiniz.

Ayrıca bakınız

Çeviri durumları

Yeni kaynak dizgeleri “Düzenlenmesi gerekli” olarak imleme

Eklenti kimliği:

weblate.flags.source_edit

Yapılandırma:

Bu eklentinin yapılandırması yok.

Tetikleyiciler:

Unit pre-create

Sürüm denetimi sisteminden yeni bir kaynak dizge içe her aktarıldığında, Weblate üzerinde düzenlenmesi gerekli olarak imlenir. Böylece geliştiriciler tarafından yazılan kaynak dizgeleri kolayca süzebilir ve düzenleyebilirsiniz.

Ayrıca bakınız

Çeviri durumları

Yeni çevirileri “Düzenlenmesi gerekli” olarak imleme

Eklenti kimliği:

weblate.flags.target_edit

Yapılandırma:

Bu eklentinin yapılandırması yok.

Tetikleyiciler:

Unit pre-create

Sürüm denetimi sisteminden yeni bir çevrilebilir dizge içeri her aktarıldığında, Weblate üzerinde düzenlenmesi gerekli olarak imlenir. Böylece geliştiricilerin oluşturduğu çevirileri kolayca süzebilir ve düzenleyebilirsiniz.

Ayrıca bakınız

Çeviri durumları

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:

Add-on installation, Component update, Daily

Salt okunur dizgelerin çevirilerini kaynak dizgeler ile doldurur.

İstatistik oluşturma

Eklenti kimliği:

weblate.generate.generate

Yapılandırma:

filename

Oluşturulacak dosyanın adı

template

Oluşturulacak dosyanın içeriği

Tetikleyiciler:

Repository pre-commit

Ç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

Kalıp kodlaması

Ç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:

Add-on installation, Component update, Daily

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

Sözde yerel oluşturma

Added in version 4.5.

Eklenti kimliği:

weblate.generate.pseudolocale

Yapılandırma:

source

Kaynak dizgeler

target

Hedef çeviri

Bu çevirideki tüm dizgelerin üzerine yazılacak

prefix

Sabit dizge ön eki

var_prefix

Değişken dizge ön eki

suffix

Sabit dizge son eki

var_suffix

Değişken dizge son eki

var_multiplier

Değişken bölüm çarpanı

Kaynak dizgenin uzunluğuna bağlı olarak değişken bölümün kaç kez yineleneceği.

include_readonly

Salt okunur dizgeleri katma

Tetikleyiciler:

Add-on installation, Component update, Daily

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. Metin kaynak dizge uzunluğuna göre genişletilir. Değişken bölümler, metnin uzunluğunun çarpanla çarpılmasıyla yinelenir. Örneğin, değişken son eki _ olan Merhaba dünya ve değişken çarpanı 1 olduğunda Merhaba dünya___________ olur. Son ek kaynak dizgedeki her karakter için bir kez yinelenir.

Dizgeler şu model kullanılarak oluşturulacak:

Sabit dizge ön eki Değişken dizge ön eki Kaynak dizge Değişken dizge son eki Sabit dizge son eki

İ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:

Repository pre-commit

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:

Add-on installation, Daily, Repository post-add

Yeni bir çeviri eklendiğinde configure, configure.in ya da herhangi bir configure.ac dosyasında ALL_LINGUAS değişkeni güncellenir.

Gettext çıktısını özelleştirme

Eklenti kimliği:

weblate.gettext.customize

Yapılandırma:

width

Uzun satırları kaydırma

Varsayılan olarak gettext satırları 77 karakterden sonra ve yeni satır karakterlerinde kaydırır. –no-wrap parametresi kullanıldığında kaydırma yalnızca yeni satır karakterlerinde yapılır.

Kullanılabilecek seçenekler:

77 – Satırlar, 77 karakterden sonra ve yeni satır karakterlerinde kaydırılır (xgettext varsayılanı)

65535 – Satırlar yalnızca yeni satırlar karakterlerinde kaydırılır (‘xgettext –no-wrap’ gibi)

-1 – Satırlar kaydırılmaz

Tetikleyiciler:

Storage post-load

Gettext çıktısında satır kaydırma gibi davranışların özelleştirilmesini sağlar.

Şu seçenekleri sunar:

  • Satırlar 77 karakter ve yeni satır karakterlerinde kaydırılır

  • Satırları yalnızca yeni satır karakterlerinde kaydırılır

  • Satırlar kaydırılmaz

Not

Varsayılan olarak gettext satırları 77 karakterde ve yeni satır karakterlerinde kaydırır. --no-wrap parametresi kullanıldığında kaydırma yalnızca yeni satır karakterlerinde yapılır.

LINGUAS dosyasını güncelleme

Eklenti kimliği:

weblate.gettext.linguas

Yapılandırma:

Bu eklentinin yapılandırması yok.

Tetikleyiciler:

Add-on installation, Daily, Repository post-add

Yeni bir çeviri eklendiğinde LINGUAS dosyası güncellenir.

MO dosyaları üretme

Eklenti kimliği:

weblate.gettext.mo

Yapılandırma:

path

Oluşturulan MO dosyasının yolu

Belirtilmemişse, PO dosyasının konumu kullanılır.

fuzzy

Düzenlenmesi gereken dizgeler katılsın

Düzenlenmesi gereken (belirsiz) dizgeler genellikle çeviri olarak kullanılmaya hazır değildir.

Tetikleyiciler:

Repository pre-commit

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)

Eklenti kimliği:

weblate.gettext.msgmerge

Yapılandırma:

previous

Çevrilmiş dizgelerin önceki msgid değerleri saklansın

no_location

Çevrilmiş dizgelerin konumları kaldırılsın

fuzzy

Belirsiz eşleşme kullanılsın

Tetikleyiciler:

Add-on installation, Repository post-update

Tüm PO dosyalarını (Dosya maskesi ile yapılandırıldığı gibi) msgmerge komutunu kullanarak POT dosyasıyla eşleşecek şekilde (Yeni çeviriler kalıbı ile yapılandırıldığı gibi) günceller.

Most msgmerge command-line options can be set up through the add-on configuration.

Git işlemelerini bir araya toplar

Eklenti kimliği:

weblate.git.squash

Yapılandırma:

squash

İşlemeleri bir araya toplama

Kullanılabilecek seçenekler:

all – Tüm işlemeler bir arada yapılır

language – Her dilin işlemeleri ayrı yapılır

file – Her dosyanın işlemeleri ayrı yapılır

author – Her katkıda bulunanın işlemeleri ayrı yapılır

append_trailers

Bir 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:

Add-on installation, Repository post-commit

Değişiklikleri yollamadan önce Git işlemelerini bir araya toplar.

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

Eklenti kimliği:

weblate.json.customize

Yapılandırma:

sort_keys

JSON anahtarlarını sıralama

indent

JSON girintisi

style

JSON girintisinin biçemi

Kullanılabilecek seçenekler:

spaces – Boşluklar

tabs – Sekmeler

Tetikleyiciler:

Storage post-load

JSON çıktısındaki girinti ya da sıralama gibi davranışların ayarlanmasını sağlar.

Java özellikleri dosyasını biçimlendirme

Eklenti kimliği:

weblate.properties.sort

Yapılandırma:

case_sensitive

Büyük/küçük harfe duyarlı anahtar sıralaması kullanılsın

Tetikleyiciler:

Repository pre-commit

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:

age

Tutulacak gün sayısı

Tetikleyiciler:

Add-on installation, Daily

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:

age

Tutulacak gün sayısı

votes

Oy verme eşiği

Kaldırma eşiği. Oylama kapalıyken bu alanın herhangi bir etkisi yoktur.

Tetikleyiciler:

Add-on installation, Daily

Ö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:

Add-on installation, Repository post-update

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.

XML çıktısını özelleştirme

Added in version 4.15.

Eklenti kimliği:

weblate.xml.customize

Yapılandırma:

closing_tags

Boş XML kod imlerine kapanış kod imini ekler

Tetikleyiciler:

Storage post-load

XML çıktısında kod imlerini kapatma gibi davranışların ayarlanmasını sağlar.

YAML çıktısını özelleştirme

Eklenti kimliği:

weblate.yaml.customize

Yapılandırma:

indent

YAML girintisi

width

Uzun satırları kaydırma

Kullanılabilecek seçenekler:

80 – Satırlar 80 karakterde kaydırılır

100 – Satırları 100 karakterde kaydırılır

120 – Satırlar 120 karakterde kaydırılır

180 – Satırlar 180 karakterde kaydırılur

65535 – Satırlar kaydırılmaz

line_break

Satır sonları

Kullanılabilecek seçenekler:

dos – DOS (\r\n)

unix – UNIX (\n)

mac – MAC (\r)

Tetikleyiciler:

Storage post-load

YAML çıktısında satır uzunluğu ve yeni satır gibi davranışların ayarlanmasını sağlar.

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

Eklentileri geliştirmek

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 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: 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 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 kısaltması.

WL_PROJECT_SLUG

Adresi oluşturmak için kullanılan proje kısaltması.

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

Bileşen yapılandırması

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.