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

3.7 sürümünde geldi.

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#

4.9.1 sürümünde geldi.

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#

4.1 sürümünde geldi.

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

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 (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>#

3.0 sürümünde değişti: import_project komutu artık Bileşen keşfi eklentisini temel aldığından davranışında ve kabul ettiği parametrelerde bazı değişiklikler vardır.

Toplu işlem, bileşenleri dosya maskesine göre projeye aktarır.

<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 (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 (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#

3.2 sürümünde geldi.

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 --config '{"width": -1}' --update --all

Ayrıca bakınız

Eklentiler

list_languages#

weblate list_languages <locale>#

MediaWiki kodlarında desteklenen dilleri listeler. 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 listeler:

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

Adları dil adı yerine dil koduna göre listeler.

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

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

move_language#

weblate move_language source target#

3.0 sürümünde geldi.

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 etkinleştirilmiş 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 devre dışı bırakı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. Bilgi almak için: Proje erişim denetimi.

setuplang#

weblate setuplang#

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

--no-update#

Var olan dillerin otomatik olarak güncellenmesini devre dışı bırakı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.

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 depodaki kancaları, updategit ile düzenli olarak yoklamak yerine, Bildirim kancaları ögesini tetikleyecek şekilde yapılandırmak daha iyidir.