Yönetim komutları

Not

Yönetim komutlarını site sunucunuzu çalıştıran kullanıcıdan başka bir kullanıcı ile çalıştırmak, dosya izinlerinin yanlış olmasına neden olabilir. Ayrıntılı bilgi almak için: Dosya sistemi izinleri.

Temel yönetim komutlarını (Django kaynaklarında ./manage.py dosyasında ya da genişletilmiş bir küme olarak Weblate üzerine kurulabilen weblate adlı betik dosyasında bulabilirsiniz).

Yönetim komutlarını çağırmak

Daha önce de belirtildiği gibi, çağrı yöntemi Weblate kurulumunuza bağlıdır.

Weblate için virtualenv kullanıyorsanız, weblate komutunun tam yolunu belirtebilir ya da çağırmadan önce virtualenv etkinleştirebilirsiniz:

# Direct invocation
~/weblate-env/bin/weblate

# Activating virtualenv adds it to search path
. ~/weblate-env/bin/activate
weblate

Kaynak kodunu doğrudan kullanıyorsanız (tarball ya da Git checkout menüsünden), Weblate kaynaklarındaki yönetim betiği ./manage.py dosyasıdır. Çalıştırmak için:

python ./manage.py list_versions

Weblate kurulumu için pip kurucusunu ya da ./setup.py betiğini kullandıysanız, Weblate denetimi için kullanılacak weblate yolunuza (ya da kullandığınız virtualenv yoluna) kurulur:

weblate list_versions

Docker kalıbında betik yukarıdaki gibi kurulur ve docker exec komutuyla çalıştırıllabilir:

docker exec --user weblate <container> weblate list_versions

docker-compose-plugin için de işlem benzerdir. Yalnızca docker compose exec kullanmanız gerekir:

docker compose exec --user weblate weblate weblate list_versions

Bir dosya belirtleniz gerekirse, geçici olarak bir birim ekleyebilirsiniz:

docker compose exec --user weblate /tmp:/tmp weblate weblate importusers /tmp/users.json

add_suggestions

weblate add_suggestions <project> <component> <language> <file>

Dosyadaki çeviriyi belirtilen çeviri için öneri olarak içe aktarır. Aynı olan çevirileri atlar. Yalnızca farklı olanları ekler.

--author USER@EXAMPLE.COM

Önerileriniz için sorumlu e-posta adresi. Bu kullanıcının içe aktarma işleminden önce var olması gerekir (gerekirse yönetici arayüzünden bir kullanıcı oluşturabilirsiniz).

Örnek:

weblate --author michal@cihar.com add_suggestions weblate application cs /tmp/suggestions-cs.po

auto_translate

weblate auto_translate <project> <component> <language>

4.6 sürümünde değişti: Çeviri kipi parametresi eklenir.

Diğer bileşen çevirilerini temel alarak kendiliğinden çeviri yapar.

--source PROJECT/COMPONENT

Çeviri için kaynak olarak kullanılacak bileşeni belirtir. Belirtilmediğinde, projedeki tüm bileşenler kullanılır.

--user USERNAME

Çevirilerin yazarı olarak görüntülenecek kullanıcı adını belirtir. Belirtilmediğinde “Anonim” olarak görüntülenir.

--overwrite

Var olan çevirilerin üzerine yazılıp yazılmayacağını belirler.

--inconsistent

Tutarsız olan var olan çevirilerin üzerine yazılıp yazılmayacağını belirler (ayrıntılı bilgi almak için: Tutarsız).

--add

Belirtilen bir çeviri bulunmuyorsa dili kendiliğinden ekler.

--mt MT

Makine çevirisi olarak diğer bileşenler yerine makine çevirisini kullanır.

--threshold THRESHOLD

Makine çevirisi için benzerlik eşiği. Varsayılan değer: 80.

--mode MODE

Çeviri kipini belirtir. Varsayılan değer: translate. fuzzy ya da suggest seçenekleri de kullanılabilir.

Örnek:

weblate auto_translate --user nijel --inconsistent --source weblate/application weblate website cs

Ayrıca bakınız

Kendiliğinden çeviri

celery_queues

weblate celery_queues

Celery görev kuyruklarının uzunluğunu görüntüler.

checkgit

weblate checkgit <project|project/component>

Arka uç Git deposunun geçerli durumunu yazdırır.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

commitgit

weblate commitgit <project|project/component>

Arka uç Git deposunda bekliyor olabilecek değişiklikleri işler.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilir (weblate/application gibi), var olan tüm bileşenleri güncellemek için -all seçeneğini kullanabilir ya da dosya biçimine göre süzmek için --file-format seçeneğini kullanabilirsiniz.

commit_pending

weblate commit_pending <project|project/component>

Belirli bir süreden daha önce bekleyen değişiklikleri işler.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

--age HOURS

İşleme için saat olarak yaş. Belirtilmezse, Bileşen yapılandırması içinde yapılandırılmış değer kullanılır.

Not

Bu işlem, Weblate tarafından arka planda kendiliğinden yapılır. Bu nedenle Bileşen yapılandırması tarafından belirtilenden daha erken bir işlemeyi dayatmanın yanında, bunu el ile çağırmaya gerek yoktur.

cleanuptrans

weblate cleanuptrans

Arta kalmış denetimleri ve çeviri önerilerini temizler. Normalde bunu el ile çalıştırmaya gerek yoktur. Temizlik arka planda kendiliğinden yapılır.

Ayrıca bakınız

Bakım görevlerini yürütmek

cleanup_ssh_keys

weblate cleanup_ssh_keys

Added in version 4.9.1.

Depolanmış SSH sunucu anahtarlarını temizler:

  • GitHub tarafından kullanımdan kaldırılmış RSA anahtarlarını GitHub ile bağlantı kurma sorunlarına yol açmaması için kaldırır.

  • Çift sunucu anahtarı kayıtlarını kaldırır.

Ayrıca bakınız

SSH depoları

createadmin

weblate createadmin

Parola belirtilmemişse rastgele bir parolay ile bir admin hesabı oluşturur.

--password PASSWORD

Rastgele bir parola oluşturulmaması için komut satırından bir parola belirtilmesini sağlar.

--no-password

Parola ayarlanmaz. Bu kullanım –update seçeneği ile yararlı olabilir.

--username USERNAME

Admin yerine belirtilen ad kullanılır.

--email USER@EXAMPLE.COM

Yönetici e-posta adresini belirtir.

--name

Yönetici adını belirtir (görüntülenecek).

--update

Var olan kullanıcıyı günceller (parolaları değiştirmek için bunu kullanabilirsiniz).

dump_memory

weblate dump_memory

Weblate çeviri belleği içeriğini bir JSON dosyası olarak dışa aktarır.

dumpuserdata

weblate dumpuserdata <file.json>

Kullanıcı verilerini daha sonra importuserdata tarafından kullanılabilecek biçimde bir dosyaya kaydeder.

İpucu

Bu seçenek, Weblate kopyalarını taşırken ya da birleştirirken işe yarar.

import_demo

weblate import_demo

Added in version 4.1.

<https://github.com/WeblateOrg/demo> bileşenlerini temel alan bir tanıtım projesi oluşturur. Bu komutu çalıştırmadan önce Celery görevlerinin çalıştığından emin olun.

Bu seçenek, Weblate geliştirme çalıştırmaları için yararlı olabilir.

--delete

Var olan tanıtım projesini kaldırır.

import_json

weblate import_json <json-file>

JSON verileri kullanan bileşenleri toplu olarak içe aktarır.

İçe aktarılan JSON dosya yapısı aşağı yukarı bileşen nesnesine karşılık gelir (ayrıntılı bilgi almak için: GET /api/components/(string:project)/(string:component)/). name ve filemask alanlarını katmanız gerekir.

--project PROJECT

Bileşenlerin nereden içe aktarılacağını belirtir.

--main-component COMPONENT

Bunların tümü için bu bileşenden verilen sürüm denetimi sistemi deposunu kullanır.

--ignore

İçe aktarılmış (zaten) bileşenleri atlar.

--update

İçe aktarılmış (zaten) bileşenleri günceller.

JSON dosyası örneği:

[
  {
    "slug": "po",
    "name": "Gettext PO",
    "file_format": "po",
    "filemask": "po/*.po",
    "new_lang": "none"
  },
  {
    "name": "Android",
    "filemask": "android/values-*/strings.xml",
    "template": "android/values/strings.xml",
    "repo": "weblate://test/test",
    "file_format": "aresource"
  }
]

Ayrıca bakınız

import_memory

import_memory

weblate import_memory <file>

TMX ya da JSON dosyasını Weblate çeviri belleği içine aktarır.

--language-map LANGMAP

TMX dosyasındaki dillerin Weblate çeviri belleği ile eşlenmesini sağlar. Dil kodları genellikle Weblate tarafından yapılan normalleştirmeden sonra eşlenir.

Örneğin, --language-map en_US:en, tüm en_US dizgelerini en dizgeleri olarak içe aktarır.

Bu seçenek, TMX dosyasının yerel ayarlarının Weblate üzerindekiler ile eşleşmemesi durumunda yararlı olabilir.

import_project

weblate import_project <project> <gitrepo> <branch> <filemask>

Toplu işlem, dosya maskesini temel alarak bileşenleri projeye aktarır. Bileşen keşfi eklentisini temel alır, dolayısıyla onun yerine bunu kullanmak isteyebilirsiniz.

<project>, bileşenlerin içe aktarılacağı var olan bir projeyi adlandırır.

<gitrepo>, kullanılacak Git deposu adresini tanımlar ve <branch> Git dalını belirtir. Var olan bir Weblate bileşeninden ek çeviri bileşenlerini içe aktarmak için, <gitrepo> için bir weblate://<project>/<component> adresi kullanın.

<filemask>, depoda aranacak dosyaları tanımlar. Genel arama karakterleri kullanılarak basitleştirilebilir ya da kurallı ifadelerin tüm gücünü kullanabilir.

Basit eşleştirmede, bileşen adı için ** ve dil için * kullanılır. Örnek: **/*.po

Kurallı ifadede component ve `language adlı gruplar bulunmalıdır. Örneğin: (?P<language>[^/]*)/(?P<component>[^-/]*)\.po

İçe aktarma, dosyalara bakarak var olan bileşenleri bulur ve var olmayanları ekler. Zaten var olanları değiştirmez.

--name-template TEMPLATE

Django kalıp söz dizimini kullanarak bir bileşenin adını özelleştirin.

Örnek: Belgeler: {{ component }}

--base-file-template TEMPLATE

Tek dilli çeviriler için temel dosyayı özelleştirin.

Örnek: {{ component }}/res/values/string.xml

--new-base-template TEMPLATE

Yeni çevirilerin eklenmesi için temel dosyayı özelleştirin.

Örnek: {{ component }}/ts/en.ts

--file-format FORMAT

Kullanılacak dosya biçimini de belirtebilirsiniz (ayrıntılı bilgi almak için: Desteklenen dosya biçimleri). Varsayılan değer: otomatik algılama.

--language-regex REGEX

Bu parametreyle süzülecek dili belirtebilirsiniz (ayrıntılı bilgi almak için: Bileşen yapılandırması). Kurallı ifade geçerli olmalıdır.

--main-component

Hangi bileşenin ana bileşen olarak seçileceğini belirtebilirsiniz. VCS deposunu içeren bileşen olmalıdır.

--license NAME

Genel, proje veya bileşen çeviri lisansını belirtin.

--license-url URL

Çeviri lisansının bulunduğu adresi belirtin.

--vcs NAME

Hangi sürüm denetim sistemini kullanacağınızı belirtmeniz gerekirse, buradan yapabilirsiniz. Varsayılan sürüm denetimi: Git.

Örnek olması için, iki projeyi içe aktarmayı deneyelim.

İlk olarak, her dilin her bölümün çevirilerinin ayrı bir klasörde bulunan Debian el kitabı çevirileri:

weblate import_project \
    debian-handbook \
    git://anonscm.debian.org/debian-handbook/debian-handbook.git \
    squeeze/master \
    '*/**.po'

Ardından, temel dosya kalıbıyla birlikte dosya biçiminin belirtilmesi gereken Tanaguru aracı ve tüm bileşenler ile çevirilerin tek bir klasörde nasıl bulunduğu:

weblate import_project \
    --file-format=properties \
    --base-file-template=web-app/tgol-web-app/src/main/resources/i18n/%s-I18N.properties \
    tanaguru \
    https://github.com/Tanaguru/Tanaguru \
    master \
    web-app/tgol-web-app/src/main/resources/i18n/**-I18N_*.properties

Daha karmaşık bir örnek olarak, src/security/Numerous_security_holes_in_0.10.1.de.po gibi bir dosya adından doğru bileşeni ve dili ayıklamak:

weblate import_project \
    tails \
    git://git.tails.boum.org/tails master \
    'wiki/src/security/(?P<component>.*)\.(?P<language>[^.]*)\.po$'

Yalnızca seçilmiş bir dildeki çevirileri süzme:

./manage import_project \
    --language-regex '^(cs|sk)$' \
    weblate \
    https://github.com/WeblateOrg/weblate.git \
    'weblate/locale/*/LC_MESSAGES/**.po'

Birden çok dosyaya ayrılmış Sphinx belgelerini içe aktarmak:

$ weblate import_project --name-template 'Documentation: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/**.po'

Birden çok dosya ve klasöre ayrılmış Sphinx belgelerini içe aktarmak:

$ weblate import_project --name-template 'Directory 1: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/dir1/**.po'
$ weblate import_project --name-template 'Directory 2: %s' \
    --file-format po \
    project https://github.com/project/docs.git master \
    'docs/locale/*/LC_MESSAGES/dir2/**.po'

Ayrıca bakınız

Daha ayrıntılı örnekler Yerelleştirmeye başlamak bölümünde bulunabilir. Alternatif olarak import_json kullanmak isteyebilirsiniz.

importuserdata

weblate importuserdata <file.json>

dumpuserdata ile oluşturulmuş bir dosyadan kullanıcı verilerini içe aktarır.

importusers

weblate importusers --check <file.json>

Django auth_users veri tabanının JSON dökümünden kullanıcıları içe aktarır.

--check

Bu seçenekle, yalnızca belirli bir dosyanın içe aktarılıp aktarılamayacağı denetlenir ve kullanıcı adlarından ya da e-posta adreslerinden kaynaklanan olası çakışmalar bildirilir.

Şunu kullanarak kullanıcıları var olan Django kurulumundan dökebilirsiniz:

weblate dumpdata auth.User > users.json

install_addon

weblate install_addon --addon ADDON <project|project/component>

Bir bileşen kümesine bir eklenti kurar.

--addon ADDON

Kurulacak eklentinin adı. Örneğin weblate.gettext.customize.

--configuration CONFIG

Bir eklentinin JSON olarak kodlanmış yapılandırması.

--update

Var olan eklenti yapılandırmasını güncelle.

Eklentinin hangi projeye ya da bileşene kurulacağını belirtebilir (weblate/application gibi) ya da var olan tüm bileşenleri katmak için --all kullanabilirsiniz.

Tüm bileşenler için Gettext çıktısını özelleştirme kurmak için:

weblate install_addon --addon weblate.gettext.customize --configuration '{"width": -1}' --update --all

Ayrıca bakınız

Eklentiler

install_machinery

Added in version 4.18.

weblate install_machinery --service SERVICE

Site genelinde çalışacak bir kendiliğinden öneri hizmeti kurar.

--service SERVICE

Kurulacak hizmetin adı. Örneğin deepl.

--configuration CONFIG

Bir hizmetin JSON olarak kodlanmış yapılandırması.

--update

Var olan hizmet yapılandırmasını güncelle.

Kurmak için DeepL:

weblate install_service --service deepl --configuration '{"key": "x", "url": "https://api.deepl.com/v2/"}' --update

Ayrıca bakınız

Kendiliğinden öneriler

list_languages

weblate list_languages <locale>

MediaWiki kodlarında desteklenen dilleri görüntüler. Dil kodları, İngilizce adlar ve yerelleştirilmiş adlar.

Bu, <https://wiki.l10n.cz/Slovn%C3%ADk_s_n%C3%A1zvy_jazyk%C5%AF> oluşturmak için kullanılır.

list_translators

weblate list_translators <project|project/component>

Belirtilen projeye katkıda bulunan çevirmenleri dile göre görüntüler:

[French]
Jean Dupont <jean.dupont@example.com>
[English]
John Doe <jd@example.com>
--language-code

Adları dil adı yerine dil koduna göre görüntüler.

Hangi projenin ya da bileşenin kullanılacağını belirtebilirsiniz (weblate/application gibi) ya da var olan tüm bileşenlerin çevirmenlerini listelemek için --all seçeneğini kullanabilirsiniz.

list_versions

weblate list_versions

Tüm Weblate bağımlılıklarını ve sürümlerini görüntüler.

loadpo

weblate loadpo <project|project/component>

Çevirileri diskten yeniden yükler (örneğin, sürüm denetimi sistemi deposunda bazı güncellemeler yaptıysanız).

--force

Dosyalar güncel olsa bile güncellemeye dayatın.

--lang LANGUAGE

İşlemi tek bir dille sınırlandırın.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Not

Bunu nadiren çağırmanız gerekir, Weblate her sürüm denetimi sistemi güncellemesi için değiştirilen dosyaları otomatik olarak yükler. Bu işlem, temel alınan bir Weblate sürüm denetimi sistemi deposunu el ile değiştirmeniz durumunda ya da yükseltmenin ardından bazı özel durumlarda gerekir.

lock_translation

weblate lock_translation <project|project/component>

Bir bileşen üzerinde çeviri yapılmasını önler.

İpucu

Temel alınan depoda bazı bakım işlemleri yapmak istediğinizde yararlıdır.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Ayrıca bakınız

unlock_translation

migrate

weblate migrate

Veri tabanını geçerli Weblate şemasına aktarır. Komut satırı seçenekleri Django migrate bölümünde açıklanmıştır.

İpucu

Bir kurulumu etkileşimsiz olarak yapmak isterseniz, weblate migrate --noinput komutunu kullanabilir ve ardından createadmin komutu ile bir yönetici kullanıcı oluşturabilirsiniz.

Ayrıca bakınız

migrate, Veri tabanını doldurmak

move_language

weblate move_language source target

Dil içeriğini birleştirmenizi sağlar. Bu seçenek, (generated) son ekiyle oluşturulmuş daha önce bilinmeyen dillerin diğer adlarını içeren yeni bir sürüme güncellerken yararlıdır. Tüm içeriği kaynak dilden hedef dile taşır.

Örnek:

weblate move_language cze cs

İçeriği taşıdıktan sonra, geride bir şey kalıp kalmadığını denetleyip (bu arada birisi depoyu güncellerse yarış koşulları geçerli olur) ve (generated) dili kaldırmalısınız.

pushgit

weblate pushgit <project|project/component>

İşlenen değişiklikleri yukarı akış sürüm denetimi deposuna iter.

--force-commit

Bekleyen değişikliklerin itilmeden önce işlenmesini dayatır.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Not

Weblate Bileşen yapılandırması içindeki İşleme ile itme seçeneği açılmış ise değişiklikler otomatik olarak gönderilir ve bu varsayılan değerdir.

unlock_translation

weblate unlock_translation <project|project/component>

Belirli bir bileşenin kilidini açarak çeviri yapılmasına izin verir.

İpucu

Temel alınan depoda bazı bakım işlemleri yapmak istediğinizde yararlıdır.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Ayrıca bakınız

lock_translation

setupgroups

weblate setupgroups

Varsayılan grupları yapılandırır ve isteğe bağlı olarak tüm kullanıcıları bu varsayılan gruba atar.

--no-privs-update

Var olan grupların otomatik olarak güncellenmesini kapatır (yalnızca yeniler eklenir).

--no-projects-update

Var olan projeler için grupların otomatik olarak güncellenmesini engeller. Bu seçenek, var olan projelere yeni grupların eklenmesine izin verir. Ayrıntılı bilgi almak için: Proje erişim denetimi.

Ayrıca bakınız

İzinlerin listesi

setuplang

weblate setuplang

Weblate üzerinde tanımlanmış dillerin listesini günceller.

--no-update

Var olan dillerin otomatik olarak güncellenmesini kapatır (yalnızca yeniler eklenir).

updatechecks

weblate updatechecks <project|project/component>

Tüm dizgeler için tüm denetimleri günceller.

İpucu

Denetimlerde büyük değişiklikler yapılmış olan yükseltmelerde yararlıdır.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Not

Denetimler Weblate tarafından düzenli olarak arka planda yeniden hesaplanır. Sıklık BACKGROUND_TASKS seçeneği ile yapılandırılabilir.

updategit

weblate updategit <project|project/component>

Uzak sürüm denetimi sistemi depolarını getirir ve iç ön belleği günceller.

Hangi projenin veya bileşenin güncelleneceğini tanımlayabilirsiniz (weblate/application gibi) ya da var olan tüm bileşenleri güncellemek için --all seçeneğini kullanabilirsiniz.

Not

Genellikle, güncellemeleri updategit ile düzenli olarak tetiklemek yerine, depodaki kancaları Bildirim kancaları tetikleyecek şekilde yapılandırmak daha iyidir.