Eklentiler

2.19 sürümünde geldi.

Eklentiler, çeviri iş akışını özelleştirmenin ve otomatikleştirmenin yollarını sağlar. Yöneticiler, her bir çeviri bileşeninin YönetEklentiler menüsünden eklenti ekleyebilir ve onları yönetebilir.

İpucu

You can also configure add-ons using API, DEFAULT_ADDONS, or install_addon.

../_images/addons.png

Yerleşik eklentiler

Otomatik çeviri

3.9 sürümünde geldi.

Eklenti kimliği

weblate.autotranslate.autotranslate

Configuration

mode

Otomatik çeviri kipi

Kullanılabilir seçenekler:

suggest – Öneri olarak ekle

translate – Çeviri olarak ekle

fuzzy – Düzenleme ihtiyacı var olarak ekle

filter_type

Arama süzgeci

Lütfen tüm dizgileri çevirmenin varolan tüm çevirileri yoksayacağını unutmayın.

Kullanılabilir seçenekler:

all – Tüm dizgiler

nottranslated – Untranslated strings

todo – Unfinished strings

fuzzy – Düzenleme için işaretlenen dizgiler

check:inconsistent – Failed check: Inconsistent

auto_source

Otomatik çeviri kaynağı

Kullanılabilir seçenekler:

others – Diğer çeviri bileşenleri

mt – Makine çevirisi

component

Bileşenler

Kaynak olarak kullanılacak bileşeni girin, şu anki projedeki tüm bileşenleri kullanmak için boş bırakın.

engines

Makine çevirisi motorları

threshold

Skor eşiği

Triggers

bileşen güncellemesi, günlük

Makine çevirisini veya diğer bileşenleri kullanarak dizgileri kendiliğinden çevirir.

Ne zaman tetiklenir:

  • Bileşende yeni dizgiler göründüğünde.

  • Once in a month for every component, this can be configured using BACKGROUND_TASKS.

JavaScript yerelleştirme CDN’i

4.2 sürümünde geldi.

Eklenti kimliği

weblate.cdn.cdnjs

Configuration

threshold

Çeviri eşiği

Çevirilerin dahil edilmesi için eşik.

css_selector

CSS seçici

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

cookie_name

Dil tanımlama bilgisi adı

Dil tercihini saklayan tanımlama bilgisi adı.

files

HTML dosyalarından dizgileri çıkar

Çevrilebilir dizgiler için ayrıştırılacak şu anki depodaki veya uzak URL’lerdeki dosya adlarının listesi.

Triggers

daily, repository post-commit, repository post-update

JavaScript veya 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 için HTML sayfalarına ekleyebileceğiniz benzersiz bir URL oluşturur. Daha fazla ayrıntı için bkz: Translating HTML and JavaScript using Weblate CDN.

Boş dizgileri kaldır

4.4 sürümünde geldi.

Eklenti kimliği

weblate.cleanup.blank

Configuration

Bu eklentinin yapılandırması yok.

Triggers

repository post-commit, repository post-update

Çeviri dosyalarından çevirisi olmayan dizgileri kaldırır.

Çeviri dosyalarında boş dizgilerin görünmemesi için bunu kullanın (örneğin yerelleştirme kütüphaneniz kaynak dizgiyi kullanmak yerine bunları boş dizgiler olarak görüntülüyorsa).

Çeviri dosyaslarını temizle

Eklenti kimliği

weblate.cleanup.generic

Configuration

Bu eklentinin yapılandırması yok.

Triggers

repository pre-commit, repository post-update

Tüm çeviri dosyalarını tek dilli taban dosyayla eşleşmesi için güncelle. Çoğu dosya biçimi için bu, taban dosyada artık bulunmayan eski çeviri anahtarlarını kaldırmak anlamına gelir.

Eksik dilleri ekle

Eklenti kimliği

weblate.consistency.languages

Configuration

Bu eklentinin yapılandırması yok.

Triggers

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’e yeni diller eklendiğinde denetlenir.

Diğerlerinden farklı olarak, bu eklenti tüm projeyi etkiler.

İpucu

Yeni eklenen dizgileri Otomatik çeviri ile otomatik olarak çevirin.

Bileşen keşfi

Eklenti kimliği

weblate.discovery.discovery

Configuration

match

Çeviri dosyalarına karşı eşleştirmek için düzenli ifade

file_format

Dosya biçimi

name_template

Bileşen adını özelleştir

base_file_template

Tek dil taban dosya adını tanımla

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

new_base_template

Yeni çeviriler için taban dosyayı tanımla

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

language_regex

Dil süzgeci

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

copy_addons

Ana bileşenden yeni oluşturulanlara ekleri çoğalt

remove

Varolmayan dosyalar için bileşenleri kaldır

confirm

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

Triggers

depo güncellenmesinden sonra

Sürüm denetim sistemindeki dosya değişikliklerine göre proje bileşenlerini kendiliğinden ekler veya kaldırır.

Triggered each time the VCS is updated, and otherwise similar to the import_project management command. This way you can track multiple translation components within one VCS.

The matching is done using regular expressions enabling complex configuration, but some knowledge is required to do so. Some examples for common use cases can be found in the add-on help section.

Once you hit Save, a preview of matching components will be presented, from where you can check whether the configuration actually matches your needs:

../_images/addon-discovery.png

İpucu

Component discovery add-on uses Weblate internal URLs. It’s a convenient way to share VCS setup between multiple components. Linked components use the local repository of the main component set up by filling weblate://project/main-component into the Kaynak kod deposu field (in ManageSettingsVersion control system) of each respective component. This saves time with configuration and system resources too.

Ayrıca bakınız

Template markup

Toplu düzenleme

3.11 sürümünde geldi.

Eklenti kimliği

weblate.flags.bulk

Configuration

q

Sorgu

state

Ayarlanacak durum

Kullanılabilir seçenekler:

-1 – Değiştirmeyin

10 – Düzenleme gerekli

20 – Çevrildi

30 – Onaylandı

add_flags

Eklenecek çeviri işaretleri

remove_flags

Kaldırılacak çeviri işaretleri

add_labels

Eklenecek etiketler

remove_labels

Kaldırılacak etiketler

Triggers

bileşen güncellemesi

Dizgilerin işaretlerini, etiketlerini veya durumlarını toplu düzenleyin.

NOT has:label arama sorgusuyla başlayarak etiketlemeyi otomatikleştirin ve tüm dizgiler gerekli tüm etiketlere sahip olana kadar etiketler ekleyin. Weblate üst verileri için diğer otomatik işlemler de yapılabilir.

Examples:

Label new strings automatically

Arama sorgusu

NOT has:label

Eklenecek etiketler

en son

Marking all Uygulama mağazası üst veri dosyaları changelog entries read-only

Arama sorgusu

language:en AND key:changelogs/

Eklenecek çeviri işaretleri

read-only

Değiştirilmemiş çevirileri “Düzenleme gerekli” olarak işaretle

3.1 sürümünde geldi.

Eklenti kimliği

weblate.flags.same_edit

Configuration

Bu eklentinin yapılandırması yok.

Triggers

unit post-create

VCS’den yeni bir çevrilebilir dizgi içe aktarıldığında ve bir kaynak dizgiyle eşleştiğinde, Weblate’te düzenleme gerekli olarak işaretlenir. Özellikle çevrilmemiş dizgiler için kaynak dizgileri içeren dosya biçimleri için kullanışlıdır.

İpucu

You might also want to tighthen the Değiştirilmemiş çeviri check by adding strict-same flag to Çeviri işaretleri.

Ayrıca bakınız

Translation states

Yeni kaynak dizgileri “Düzenleme gerekli” olarak işaretle

Eklenti kimliği

weblate.flags.source_edit

Configuration

Bu eklentinin yapılandırması yok.

Triggers

unit post-create

Yeni bir kaynak dizgi VCS’den içe her aktarıldığında, Weblate’de düzenleme gerekli olarak işaretlenir. Bu yolla geliştiriciler tarafından yazılan kaynak dizgiler kolayca süzebilir ve düzenleyebilirsiniz.

Ayrıca bakınız

Translation states

Yeni çevirileri “Düzenleme gerekli” olarak işaretle

Eklenti kimliği

weblate.flags.target_edit

Configuration

Bu eklentinin yapılandırması yok.

Triggers

unit post-create

Yeni bir çevrilebilir dizgi, VCS’den içeri her aktarıldığında, Weblate’de düzenleme gerekli olarak işaretlenir. Bu yolla geliştiricilerin oluşturduğu çevirileri kolayca süzer ve düzenleyebilirsiniz.

Ayrıca bakınız

Translation states

İstatistik oluşturucu

Eklenti kimliği

weblate.generate.generate

Configuration

filename

Oluşturulan dosyanın adı

template

Oluşturulan dosyanın içeriği

Triggers

depo işlenmesinden önce

Çeviri durumu hakkında ayrıntılı bilgi içeren bir dosya oluşturur.

Hem dosya adında hem de içerikte bir Django şablonu kullanabilirsiniz, ayrıntılı bir işaretleme açıklaması için Template markup bölümüne bakın.

Örneğin, her çeviri için bir özet dosyası oluşturma:

Oluşturulan 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

Template markup

Prefill translation with source

4.11 sürümünde geldi.

Eklenti kimliği

weblate.generate.prefill

Configuration

Bu eklentinin yapılandırması yok.

Triggers

bileşen güncellemesi, günlük

Fills in translation strings with source string.

All untranslated strings in the component will be fileld with the source string, and marked as needing edit. Use this when you can not have empty strings in the translation files.

Sözde yerel oluşturma

4.5 sürümünde geldi.

Eklenti kimliği

weblate.generate.pseudolocale

Configuration

source

Kaynak dizgiler

target

Hedef çeviri

prefix

Dizgi öneki

suffix

Dizgi soneki

Triggers

bileşen güncellemesi, günlük

Kaynak dizgilere kendiliğinden ön ek ve son ek ekleyerek çeviri oluşturur.

Pseudolocales are useful to find strings that are not prepared for localization. This is done by altering all translatable source strings to make it easy to spot unaltered strings when running the application in the pseudolocale language.

Finding strings whose localized counterparts might not fit the layout is also possible.

İpucu

You can use real languages for testing, but there are dedicated pseudolocales available in Weblate - en_XA and ar_XB.

İpucu

You can use this add-on to start translation to a new locale of an existing language or similar language. Once you add the translation to the component, follow to the add-on. Example: If you have fr and want to start fr_CA translation, simply set fr as the source, fr_CA as the target, and leave the prefix and suffix blank.

Uninstall the add-on once you have the new translation filled to prevent Weblate from changing the translations made after the copying.

Yorum içindeki katılımcılar

Eklenti kimliği

weblate.gettext.authors

Configuration

Bu eklentinin yapılandırması yok.

Triggers

depo işlenmesinden önce

PO dosyası başlığının yorum bölümünü, katılımcı adlarını ve katkı yıllarını içerecek şekilde günceller.

The PO file header will look like this:

# Michal Čihař <michal@cihar.com>, 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şkenini güncelle

Eklenti kimliği

weblate.gettext.configure

Configuration

Bu eklentinin yapılandırması yok.

Triggers

depo eklenmesinden sonra, günlük

Yeni bir çeviri eklendiğinde ALL_LINGUAS değişkenini configure, configure.in veya herhangi bir configure.ac dosyasında günceller.

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

Eklenti kimliği

weblate.gettext.customize

Configuration

width

Uzun satırları kaydır

Varsayılan olarak gettext satırları 77 karakterde ve yeni satırlarda kaydırır, –no-wrap parametresi ile kaydırma yalnızca yeni satırlarda yapılır.

Kullanılabilir seçenekler:

77 – Satırları, 77 karakterde ve yeni satırlarda kaydır

65535 – Satırları yalnızca yeni satırlarda kaydır

-1 – Satır kaydırma yok

Triggers

storage post-load

Gettext çıktısı davranışının özelleştirilmesine izin verir, örneğin satır kaydırma.

Aşağıdaki seçenekleri sunar:

  • Satırları, 77 karakterde ve yeni satırlarda kaydır

  • Satırları yalnızca yeni satırlarda kaydır

  • Satır kaydırma yok

Not

Varsayılan olarak gettext satırları 77 karakterde ve yeni satırlarda kaydırır. --no-wrap parametresi ile kaydırma yalnızca yeni satırlarda yapılır.

LINGUAS dosyasını güncelle

Eklenti kimliği

weblate.gettext.linguas

Configuration

Bu eklentinin yapılandırması yok.

Triggers

depo eklenmesinden sonra, günlük

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

MO dosyaları üret

Eklenti kimliği

weblate.gettext.mo

Configuration

path

Oluşturulan MO dosyasının yolu

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

Triggers

depo işlenmesinden önce

Her değiştirilen PO dosyası için kendiliğinden MO dosyası üretir.

The location of the generated MO file can be customized and the field for it uses Template markup.

POT ile eşleşmesi için PO dosyalarını güncelle (msgmerge)

Eklenti kimliği

weblate.gettext.msgmerge

Configuration

previous

Çevrilen dizgilerin önceki msgid’lerini sakla

no_location

Çevrilen dizgilerin konumlarını kaldır

fuzzy

Belirsiz eşleşmeyi kullan

Triggers

depo güncellenmesinden sonra

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 için şablon ile yapılandırıldığı gibi) günceller.

Yukarı akış deposundan yeni değişiklikler çekildiğinde tetiklenir. Eklenti yapılandırması aracılığıyla msgmerge komut satırı seçeneklerinin çoğu yapılandırılabilir.

Git işlemelerini sıkıştır

Eklenti kimliği

weblate.git.squash

Configuration

squash

Sıkıştırmayı işle

Kullanılabilir seçenekler:

all – Tüm işlemeler bir arada

language – Dil başına

file – Per file

author – Per author

append_trailers

Sıkıştırılmış işleme iletisine artbilgileri ekle

‘Ortak yazan: …’ gibi bir işleme iletisinin başka bir serbest biçim parçasının sonunda, artbilgi satırları RFC 822 e-posta üstbilgilerine benzeyen satırlardır.

commit_message

İletiyi işle

Bu işleme iletisi, sıkıştırılmış işleme iletilerinden gelen birleşik işleme iletileri yerine kullanılacaktır.

Triggers

depo işlenmesinden sonra

Değişiklikleri yollamadan önce Git işlemelerini sıkıştırın.

Git commits can be squashed prior to pushing changes in one of the following modes:

  • Tüm işlemeler bir arada

  • Dil başına

  • Dosya başına

  • Hazırlayan başına

Orijinal işleme iletileri tutulur, ancak Hazırlayan başına seçilmediği veya işleme iletisi eklemek üzere özelleştirilmediği sürece yazarlık kaybedilir.

The original commit messages can optionally be overridden with a custom commit message. See Template markup for the message options.

Trailers (commit lines like Co-authored-by: ) can optionally be removed from the original commit messages and appended to the end of the squashed commit message. This also generates proper Co-authored-by: credit for every translator.

JSON çıktısını özelleştir

Eklenti kimliği

weblate.json.customize

Configuration

sort_keys

JSON anahtarlarını sırala

indent

JSON girintisi

style

JSON girinti stili

Kullanılabilir seçenekler:

spaces – Spaces

tabs – Tabs

Triggers

storage post-load

JSON çıktısı davranışının ayarlanmasına izin verir, örneğin girinti veya sıralama.

Java özellikleri dosyasını biçimlendirir

Eklenti kimliği

weblate.properties.sort

Configuration

Bu eklentinin yapılandırması yok.

Triggers

depo işlenmesinden önce

Java özellikleri dosyasını sıralar.

Eski yorum kaldırma

3.7 sürümünde geldi.

Eklenti kimliği

weblate.removal.comments

Configuration

age

Saklanacak günler

Triggers

daily

Yorumların kaldırılması için bir zaman dilimi ayarla.

Bu, güncelliğini yitirmiş olabilecek eski yorumları kaldırmak için faydalı olabilir. Yorumun eski olması önemlerini yitirdikleri anlamına gelmediği için dikkatli kullanın.

Eski öneri kaldırma

3.7 sürümünde geldi.

Eklenti kimliği

weblate.removal.suggestions

Configuration

age

Saklanacak günler

votes

Oy verme eşiği

Kaldırma eşiği. Bu alanın oylamanın kapatılması ile etkisi yoktur.

Triggers

daily

Önerilerin kaldırılması için bir zaman dilimi ayarlayın.

Belirli bir zaman diliminde yeterince olumlu oy almayan önerileri kaldırmak için öneri oylamayla (bkz: Peer review) bağlantılı olarak çok faydalı olabilir.

RESX dosyalarını güncelle

3.9 sürümünde geldi.

Eklenti kimliği

weblate.resx.update

Configuration

Bu eklentinin yapılandırması yok.

Triggers

depo güncellenmesinden sonra

Tek dilli yukarı akış tabanlı dosya ile eşleştirmek için tüm çeviri dosyalarını güncelleyin. Kullanılmayan dizgiler kaldırılır ve kaynak dizginin kopyaları olarak yenileri eklenir.

İpucu

Yalnızca eski çeviri anahtarlarını kaldırmak istiyorsanız Çeviri dosyaslarını temizle kullanın.

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

3.10.2 sürümünde geldi.

Eklenti kimliği

weblate.yaml.customize

Configuration

indent

YAML girintisi

width

Uzun satırları kaydır

Kullanılabilir seçenekler:

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

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

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

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

65535 – Satır kaydırma yok

line_break

Satır sonları

Kullanılabilir seçenekler:

dos – DOS (\r\n)

unix – UNIX (\n)

mac – MAC (\r)

Triggers

storage post-load

YAML çıktısı davranışının ayarlanmasına izin verir, örneğin satır uzunluğu veya yeni satırlar.

Eklenti listesini özelleştirme

The list of add-ons is configured by WEBLATE_ADDONS. To add another add-on, simply include the absolute class name in this setting.

Eklenti yazma

You can write your own add-ons too, create a subclass of weblate.addons.base.BaseAddon to define the add-on metadata, and then implement a callback to do the processing.

Ayrıca bakınız

Developing add-ons

Eklentiden betikleri çalıştırma

Add-ons can also be used to execute external scripts. This used to be integrated in Weblate, but now you have to write some code to wrap your script with an add-on.

#
# Copyright © 2012–2022 Michal Čihař <michal@cihar.com>
#
# This file is part of Weblate <https://weblate.org/>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
#
"""Example pre commit script."""


from django.utils.translation import gettext_lazy as _

from weblate.addons.events import EVENT_PRE_COMMIT
from weblate.addons.scripts import BaseScriptAddon


class ExamplePreAddon(BaseScriptAddon):
    # Event used to trigger the script
    events = (EVENT_PRE_COMMIT,)
    # Name of the addon, has to be unique
    name = "weblate.example.pre"
    # Verbose name and long descrption
    verbose = _("Execute script before commit")
    description = _("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"

For installation instructions see Custom quality checks, add-ons and auto-fixes.

The script is executed with the current directory set to the root of the VCS repository for any given component.

Additionally, the following environment variables are available:

WL_VCS

Version control system used.

WL_REPO

Upstream repository URL.

WL_PATH

Absolute path to VCS repository.

WL_BRANCH

2.11 sürümünde geldi.

Repository branch configured in the current component.

WL_FILEMASK

File mask for current component.

WL_TEMPLATE

Filename of template for monolingual translations (can be empty).

WL_NEW_BASE

2.14 sürümünde geldi.

Filename of the file used for creating new translations (can be empty).

WL_FILE_FORMAT

Geçerli bileşende kullanılan dosya biçimi.

WL_LANGUAGE

Language of currently processed translation (not available for component-level hooks).

WL_PREVIOUS_HEAD

Previous HEAD after update (only available after running the post-update hook).

WL_COMPONENT_SLUG

3.9 sürümünde geldi.

Component slug used to construct URL.

WL_PROJECT_SLUG

3.9 sürümünde geldi.

Project slug used to construct URL.

WL_COMPONENT_NAME

3.9 sürümünde geldi.

Component name.

WL_PROJECT_NAME

3.9 sürümünde geldi.

Project name.

WL_COMPONENT_URL

3.9 sürümünde geldi.

Component URL.

WL_ENGAGE_URL

3.9 sürümünde geldi.

Project engage URL.

Ayrıca bakınız

Component configuration

Güncelleme sonrası depo işleme

Can be used to update translation files when the VCS upstream source changes. To achieve this, please remember Weblate only sees files committed to the VCS, so you need to commit changes as a part of the script.

For example with Gulp you can do it using following code:

#! /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şlemden geçirilmesi

Use the commit script to automatically change a translation before it is committed to the repository.

It is passed as a single parameter consisting of the filename of a current translation.