Comandos de gestão¶
Nota
Executar comandos de gestão sob um utilizador diferente daquele que executa o seu servidor da Web pode fazer com que os ficheiros recebam permissões erradas, por favor, consulte Permissões do sistema de ficheiros para mais detalhes.
Encontrará comandos básicos de gestão (disponíveis como ./manage.py nas fontes do Django ou como um conjunto estendido num script chamado weblate instalável em cima do Weblate).
Invocando comandos de gestão¶
Como mencionado anteriormente, a invocação depende de como instalou o Weblate.
If using a Python environment for Weblate, you can either specify the full path to weblate, or activate the Python environment prior to invoking it:
# Direct invocation
~/weblate-env/bin/weblate
# Activating Python environment adds it to search path
. ~/weblate-env/bin/activate
weblate
Se estiver a usar o código-fonte diretamente (de um tarball ou checkout Git), o script de gestão é ./manage.py disponível nos fontes do Weblate. Para executá-lo:
python ./manage.py list_versions
If you’ve installed Weblate using the pip installer, or by using the ./setup.py
script, the weblate is installed to your path (or Python environment path),
from where you can use it to control Weblate:
weblate list_versions
Para a imagem Docker, o script é instalado como acima e pode executá-lo usando docker exec:
docker exec --user weblate <container> weblate list_versions
Para docker-compose-plugin o processo é semelhante, apenas tem que usar docker compose exec:
docker compose exec --user weblate weblate weblate list_versions
Caso precise passar-le um ficheiro, pode adicionar temporariamente um volume:
docker compose exec --user weblate /tmp:/tmp weblate weblate importusers /tmp/users.json
add_suggestions¶
- weblate add_suggestions <project> <component> <language> <file>¶
Importa uma tradução do fcheiro para usar como sugestão para a tradução fornecida. Pula traduções duplicadas; apenas os diferentes são adicionados.
- --author USER@EXAMPLE.COM¶
E-mail of author for the suggestions. This user has to exist prior to importing (you can create one in the admin interface if needed).
Exemplo:
weblate --author michal@cihar.com add_suggestions weblate application cs /tmp/suggestions-cs.po
auto_translate¶
- weblate auto_translate <project> <component> <language>¶
Alterado na versão 4.6: Adicionado parâmetro para o modo de tradução.
Executa a tradução automática com base noutras traduções de componentes.
- --source PROJECT/COMPONENT¶
Specifies the component to use as source available for translation. If not specified all components in the project are used.
- --user USERNAME¶
Specify username listed as author of the translations. «Anonymous user» is used if not specified.
- --overwrite¶
Whether to overwrite existing translations.
- --inconsistent¶
Whether to overwrite existing translations that are inconsistent (see Inconsistente).
- --add¶
Automatically add language if a given translation does not exist.
- --mt MT¶
Use machine translation instead of other components as machine translations.
- --threshold THRESHOLD¶
Similarity threshold for machine translation, defaults to 80.
- --mode MODE¶
Specify translation mode, default is
translatebutfuzzyorsuggestcan be used.
Exemplo:
weblate auto_translate --user nijel --inconsistent --source weblate/application weblate website cs
Veja também
backup¶
- weblate backup¶
Runs configured backups synchronously, without using Celery. It first updates
the settings and database backup dumps in DATA_DIR, then runs the
selected Borg backup service or services.
- --list¶
Lists configured backup service IDs.
- --service ID¶
Runs one backup service by ID.
- --all¶
Runs all enabled backup services.
Use Django’s standard --verbosity 2 option to show backup service output.
Failed backup service output is shown even without increased verbosity.
Exemplos:
weblate backup --list
weblate backup --service 1 --verbosity 2
weblate backup --all
For Docker Compose deployments, you can stop the regular Weblate container and run the command in a one-off container using docker compose run. The database and configured backup storage still need to be available.
docker compose stop weblate
docker compose run --rm --user weblate weblate weblate backup --list
docker compose run --rm --user weblate weblate weblate backup --service 1 --verbosity 2
Veja também
benchmark¶
- weblate benchmark¶
Importa determinado conteúdo para o Weblate, útil para testes de desempenho.
# Run benchmark with a profiling
python -m cProfile -o benchmark.prof ./manage.py benchmark --project benchmark --filemask '*.tbx' --format tbx --zipfile /tmp/MicrosoftTermCollection2.zip
# Convert to SVG for visualization
uvx gprof2dot -f pstats benchmark.prof | dot -Tsvg -o benchmark.svg
# Display SVG
firefox ./benchmark.svg
# Run benchmark under memray
uvx memray run ./manage.py benchmark --project benchmark --filemask '*.tbx' --format tbx --zipfile /tmp/MicrosoftTermCollection2.zip
# Render the profile
uvx memray flamegraph ./memray-manage.py.2554179.bin
# Display it
fixefox memray-flamegraph-manage.py.2554179.html
billing_demo¶
- weblate billing_demo¶
Added in version 5.15.
Creates a demo billing project. Can be executed multiple times to add additional invoices and billing events.
This can be useful when developing Weblate. Needs Faturação installed.
celery_queues¶
- weblate celery_queues¶
Exibe o tamanho das filas de tarefas do Celery.
Veja também
checkgit¶
- weblate checkgit <project|project/component>¶
Imprime o estado atual do repositório Git de backend.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
commitgit¶
- weblate commitgit <project|project/component>¶
Faz commit de todas as alterações pendentes possíveis para o repositório Git de backend.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes, ou use --file-format para filtrar com base no formato do ficheiro.
commit_pending¶
- weblate commit_pending <project|project/component>¶
Faz commit de alterações pendentes anteriores a uma determinada idade.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
- --age HOURS¶
Age in hours for committing. If not specified the value configured in Configuração de componente is used.
Nota
Isso é realizado automaticamente em segundo plano pelo Weblate, de modo que não há necessidade real de invocar isso manualmente, além de forçar um commit anterior do que o especificado por Configuração de componente.
Veja também
cleanuptrans¶
- weblate cleanuptrans¶
Limpa verificações e sugestões de tradução órfãs. Normalmente, não há necessidade de executá-lo manualmente, pois as limpezas acontecem automaticamente em segundo plano.
Veja também
cleanup_memory¶
- weblate cleanup_memory¶
Added in version 5.13.
Removes all obsolete entries with pending status from the translation memory.
cleanup_ssh_keys¶
- weblate cleanup_ssh_keys¶
Added in version 4.9.1.
Executa a remoção das chaves de host SSH armazenadas:
Remove as chaves RSA descontinuadas do GitHub que podem causar problemas de conexão com o GitHub.
Remove entradas duplicadas nas chaves do host.
Veja também
createadmin¶
- weblate createadmin¶
Cria uma conta admin com uma palavra-passe aleatória, a menos que seja especificada.
- --password PASSWORD¶
Provides a password on the command-line, to not generate a random one.
- --no-password¶
Do not set password, this can be useful with –update.
- --username USERNAME¶
Use the given name instead of
admin.
- --email USER@EXAMPLE.COM¶
Specify the admin e-mail address.
- --name¶
Specify the admin name (visible).
- --update¶
Update the existing user (you can use this to change passwords).
dump_memory¶
- weblate dump_memory¶
Exporta um ficheiro JSON que contem o conteúdo de memória de tradução do Weblate.
Veja também
dumpuserdata¶
- weblate dumpuserdata <file.json>¶
Despeja dados de utilizador num ficheiro para uso posterior por importuserdata.
Dica
Isso é útil ao migrar ou mesclar instâncias do Weblate.
import_demo¶
- weblate import_demo¶
Added in version 4.1.
Cria um projeto de demonstração com componentes baseados em <https://github.com/WeblateOrg/demo>. Certifique-se de que as tarefas de Celery estejam em execução antes de executar este comando.
Isso pode ser útil ao desenvolver Weblate.
- --delete¶
Removes existing demo project.
import_json¶
- weblate import_json <json-file>¶
Importação em lote de componentes com base em dados JSON.
A estrutura do ficheiro JSON importado corresponde basicamente ao objeto do componente (consulte GET /api/components/(string:project)/(string:component)/). Deve incluir os campos name e filemask.
- --project PROJECT¶
Specifies where the components will be imported from.
- --main-component COMPONENT¶
Use the given VCS repository from this component for all of them.
- --ignore¶
Skip (already) imported components.
- --update¶
Update (already) imported components.
Exemplo de ficheiro JSON:
[
{
"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"
}
]
Veja também
import_memory¶
- weblate import_memory <file>¶
Importa um ficheiro para a memória de tradução do Weblate.
Os formatos de ficheiro compatíveis são TMX, JSON, XLIFF, PO, CSV.
Especificar um idioma de origem e um de destino pode ser necessário para formatos diferentes de JSON e TMX.
- --language-map LANGMAP¶
Allows mapping languages in the TMX to the Weblate translation memory. The language codes are mapped after normalization usually done by Weblate.
--language-map en_US:enwill for example import allen_USstrings asenones.This can be useful in case your TMX file locales happen not to match what you use in Weblate.
- --source-language SOURCE_LANG¶
Specifies the source language for imported translations. Typically needed for formats where the languages cannot be determined from the file itself.
- --target-language TARGET_LANG¶
Specifies the target language for imported translations. Typically needed for formats where the languages cannot be determined from the file itself.
Veja também
import_project¶
- weblate import_project <project> <gitrepo> <branch> <filemask>¶
Importa componentes em lote para o projeto com base na máscara do ficheiro. É baseado no complemento Descoberta de componentes, portanto, talvez seja melhor usá-lo.
<project> é o nome de um projeto existente, para o qual os componentes devem ser importados.
O <gitrepo> define a URL do repositório Git a ser usada e <branch> significa o ramo Git. Para importar componentes de tradução adicionais de um componente Weblate existente, use uma URL weblate://<project>/<component> ao <gitrepo>.
O <filemask> define a descoberta de ficheiro para o repositório. Pode ser simplificado usando curingas ou pode usar todo o poder das expressões regulares.
A correspondência simples usa ** para o nome do componente e * para o idioma, por exemplo: **/*.po
A expressão regular deve conter grupos chamados component e language. Por exemplo: (?P<language>[^/]*)/(?P<component>[^-/]*)\.po.
A importação corresponde aos componentes existentes com base em ficheiros e adiciona aqueles que não existem. Isso não altera os já existentes.
- --name-template TEMPLATE¶
Customize the name of a component using Django template syntax.
For example:
Documentation: {{ component }}
- --base-file-template TEMPLATE¶
Customize the base file for monolingual translations.
For example:
{{ component }}/res/values/string.xml
- --new-base-template TEMPLATE¶
Customize the base file for addition of new translations.
For example:
{{ component }}/ts/en.ts
- --file-format FORMAT¶
You can also specify the file format to use (see Formatos de ficheiro de localização), the default is auto-detection.
- --language-regex REGEX¶
You can specify language filtering (see Configuração de componente) with this parameter. It has to be a valid regular expression.
- --main-component¶
You can specify which component will be chosen as the main one—the one actually containing the VCS repository.
- --license NAME¶
Specify the overall, project or component translation license.
- --license-url URL¶
Specify the URL where the translation license is to be found.
- --vcs NAME¶
In case you need to specify which version control system to use, you can do it here. The default version control is Git.
Para dar alguns exemplos, vamos tentar importar dois projetos.
Primeiro as traduções do Manual do Debian, onde cada idioma separou uma pasta com as traduções de cada capítulo:
weblate import_project \
debian-handbook \
https://salsa.debian.org/hertzog/debian-handbook.git \
bullseye/main \
'*/**.po'
Em seguida, a ferramenta Tanaguru, onde o formato do ficheiro precisa ser especificado, junto com o modelo de ficheiro base e como todos os componentes e traduções estão localizados numa única pasta:
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
Um exemplo mais complexo de análise de nomes de ficheiro para obter o componente correto e o idioma de um nome de ficheiro como src/security/Numerous_security_holes_in_0.10.1.de.po:
weblate import_project \
tails \
git://git.tails.boum.org/tails master \
'wiki/src/security/(?P<component>.*)\.(?P<language>[^.]*)\.po$'
Filtrando apenas traduções num idioma escolhido:
./manage import_project \
--language-regex '^(cs|sk)$' \
weblate \
https://github.com/WeblateOrg/weblate.git \
'weblate/locale/*/LC_MESSAGES/**.po'
Importando a documentação do Sphinx dividida em vários ficheiros:
$ weblate import_project --name-template 'Documentation: %s' \
--file-format po \
project https://github.com/project/docs.git master \
'docs/locale/*/LC_MESSAGES/**.po'
A documentação de importação do Sphinx dividida em vários ficheiros e diretórios:
$ 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'
Veja também
Exemplos mais detalhados encontram-se no capítulo Começar com a internacionalização, alternativamente pode usar import_json.
import_projectbackup¶
- weblate import_projectbackup <project_name> <project_slug> <username> <filename>¶
Added in version 5.10.
Importa Cópias de segurança de nível de projeto.
Dica
Normalmente, é mais confortável importar o projeto quando Adicionar projetos e componentes de tradução.
importuserdata¶
- weblate importuserdata <file.json>¶
Importa dados do utilizador de um ficheiro criado por dumpuserdata.
importusers¶
- weblate importusers --check <file.json>¶
Importa utilizadores do despejo JSON da base de dados auth_users do Django.
- --check¶
With this option it will just check whether a given file can be imported and report possible conflicts arising from usernames or e-mails.
You can dump users from the existing Django site using:
./manage.py dumpdata auth.User > users.json
Dica
Use dumpuserdata for dumping data from other Weblate server as that includes user settings as well.
Veja também
install_addon¶
- weblate install_addon --addon ADDON <project|project/component>¶
Instala uma extensão para um conjunto de componentes.
- --addon ADDON¶
Name of the add-on to install. For example
weblate.gettext.customize.
- --configuration CONFIG¶
JSON encoded configuration of an add-on.
- --update¶
Update the existing add-on configuration.
Pode definir em qual projeto ou componente instalar a extensão (por exemplo, weblate/application) ou usar --all para incluir todos os componentes existentes.
To install Gerar ficheiros MO for all components:
weblate install_addon --addon weblate.gettext.mo --configuration '{"fuzzy": true}' --update --all
Veja também
install_machinery¶
Added in version 4.18.
- weblate install_machinery --service SERVICE¶
Instala um serviço de sugestões automáticas em todo o site.
- --service SERVICE¶
Name of the service to install. For example
deepl.
- --configuration CONFIG¶
JSON encoded configuration of a service.
- --update¶
Update the existing service configuration.
Para instalar DeepL:
weblate install_machinery --service deepl --configuration '{"key": "x", "url": "https://api.deepl.com/v2/"}' --update
Veja também
list_addons¶
- weblate list_addons¶
Lista os complementos no reStructuredText como um modelo para Extensões.
- --sections {events,addons,parameters}¶
Filter the generated output to just the add-on event sections, the built-in add-on sections, or the shared add-on parameter sections. If omitted, all generated sections are shown.
Veja também
list_permissions¶
- weblate list_permissions¶
Lista as permissões em reStructuredText como um modelo para Controlo de acesso.
Veja também
list_checks¶
- weblate list_checks¶
Lista verificações de qualidade em reStructuredText como um modelo para Verificações e correções, Verificações e correções.
- --sections {checks,flags}¶
Filter the generated output to just the quality check sections or the shared check flag sections. If omitted, all generated sections are shown.
Nota
Using --output requires selecting exactly one value in --sections so
each generated snippet is written to its own file. This matches the
Contribua para a documentação do Weblate workflow and the make -C docs
update-docs targets.
Veja também
list_languages¶
- weblate list_languages <locale>¶
Lista os idiomas suportados na marcação MediaWiki – códigos de idioma, nomes em inglês e nomes localizados.
This is used to generate <https://www.l10n.cz/wiki/Slovn%C3%ADky/Slovn%C3%ADk_s_n%C3%A1zvy_jazyk%C5%AF/>.
list_machinery¶
- weblate list_machinery¶
Lista os serviços de sugestões automáticas no reStructuredText como um modelo para Sugestões automáticas.
Veja também
list_translators¶
- weblate list_translators <project|project/component>¶
Lista tradutores por idioma contribuído ao projeto em questão:
[French]
Jean Dupont <jean.dupont@example.com>
[English]
John Doe <jd@example.com>
- --language-code¶
List names by language code instead of language name.
Pode definir qual projeto ou componente usar (por exemplo, weblate/application) ou usar --all para listar os tradutores de todos os componentes existentes.
list_versions¶
- weblate list_versions¶
Lista todas as dependências do Weblate e as versões deles.
list_file_format_params¶
- weblate list_file_format_params¶
Lists File format parameters.
list_change_events¶
- weblate list_change_events¶
Lists all possible change event types.
list_format_features¶
- weblate list_format_features¶
Generates RST documentation snippets describing the supported features for every file format.
The command generates one file for every format, that can be found in the specified output directory.
- --output PATH¶
Directory where the format feature snippets will be written.
Nota
The generated documentation files are meant to be included in documentation sources such as Formatos de ficheiro de localização. See also weblate/formats/management/commands/list_format_features.py for customization and merging logic.
loadpo¶
- weblate loadpo <project|project/component>¶
Recarrega traduções de disco (por exemplo, caso tenha feito algumas atualizações no repositório VCS).
- --force¶
Force update, even if the files should be up-to-date.
- --lang LANGUAGE¶
Limit processing to a single language.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Nota
Raramente precisa invocar isso, o Weblate carregará automaticamente os ficheiros alterados para cada atualização do VCS. Isso é necessário no caso de alterar manualmente um repositório Weblate VCS subjacente ou em alguns casos especiais após uma atualização.
lock_translation¶
- weblate lock_translation <project|project/component>¶
Impede outras traduções de um componente.
Dica
Útil caso queira fazer alguma manutenção no repositório subjacente.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Veja também
migrate¶
- weblate migrate¶
Migra a base de dados para o esquema atual do Weblate. As opções de linha de comando são descritas em Django migrate.
Dica
Caso queira executar uma instalação não interativamente, pode usar weblate migrate --noinput e, em seguida, criar um utilizador administrativo usando createadmin comando.
Veja também
move_language¶
- weblate move_language source target¶
Permite mesclar o conteúdo do idioma. Isto é útil ao atualizar para uma nova versão que contém apelidos para idiomas anteriormente desconhecidos que foram criados com o sufixo (generated). Ele move todo o conteúdo do idioma fonte source para o de destino target.
Exemplo:
weblate move_language cze cs
Depois de mover o conteúdo, deve verificar se sobrou algo (isto está sujeito a condições de corrida quando alguém atualiza o repositório enquanto isto) e remover o idioma (generated).
pushgit¶
- weblate pushgit <project|project/component>¶
Faz um push das alterações com commit feito para o repositório VCS upstream.
- --force-commit¶
Force commits any pending changes, prior to pushing.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Nota
O Weblate faz o push das mudanças automaticamente se Enviar ao submeter na Configuração de componente está ativada, que é a predefinição.
unlock_translation¶
- weblate unlock_translation <project|project/component>¶
Desbloqueia um determinado componente, disponibilizando-o para tradução.
Dica
Útil caso queira fazer alguma manutenção no repositório subjacente.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Veja também
setupgroups¶
- weblate setupgroups¶
Configura grupos predefinidos e, opcionalmente, atribui todos os utilizadores a esse grupo predefinido.
- --no-privs-update¶
Turns off automatic updating of existing groups (only adds new ones).
- --no-projects-update¶
Prevents automatic updates of groups for existing projects. This allows adding newly added groups to existing projects, see Controlo de acesso ao projeto.
Veja também
setuplang¶
- weblate setuplang¶
Atualiza a lista de idiomas definidos no Weblate.
- --no-update¶
Turns off automatic updates of existing languages (only adds new ones).
updatechecks¶
- weblate updatechecks <project|project/component>¶
Atualiza todas as verificações para todas as cadeias.
Dica
Útil para atualizações que fazem grandes mudanças nas verificações.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Nota
As verificações são recalculadas regularmente pelo Weblate em segundo plano; a frequência pode ser configurada por meio da BACKGROUND_TASKS.
updategit¶
- weblate updategit <project|project/component>¶
Busca repositórios VCS remotos e atualiza o cache interno.
Pode definir qual projeto ou componente atualizar (por exemplo, weblate/application) ou usar --all para atualizar todos os componentes existentes.
Nota
Normalmente, é melhor configurar hooks no repositório para acionar o Hooks de notificação, em vez de acionar regularmente as atualizações pelo updategit.