Personalizando o Weblate¶
Amplie e personalize usando Django e Python. Contribua suas alterações para o upstream acima para que todos possam se beneficiar. Isso reduz seus custos de manutenção; código no Weblate é cuidado ao alterar interfaces internas ou refatorar o código.
Aviso
Nem interfaces internas nem modelos são considerados uma API estável. Por favor, revise suas próprias personalizações para cada atualização, as interfaces ou sua semântica podem mudar sem aviso prévio.
Ver também
Criando um módulo Python¶
Se você não está familiarizado com Python, você pode querer olhar para Python For Beginners, explicando o básico e apontando para os tutoriais adicionais.
Para escrever algum código Python personalizado (chamado de módulo), é necessário um lugar para armazená-lo, seja no caminho do sistema (geralmente algo como /usr/lib/python3.7/site-packages/
) ou no diretório Weblate, que também é adicionado ao caminho de pesquisa do interpretador.
Melhor ainda, transforme sua personalização em um pacote Python adequado:
Crie uma pasta para o seu pacote (usaremos weblate_customization).
Dentro dele, crie um arquivo
setup.py
para descrever o pacote:from setuptools import setup setup( name="weblate_customization", version="0.0.1", author="Your name", author_email="yourname@example.com", description="Sample Custom check for Weblate.", license="GPLv3+", keywords="Weblate check example", packages=["weblate_customization"], )
Crie uma pasta para o módulo Python (também chamado de
weblate_customization
) para o código de personalização.Dentro dele, crie um arquivo
__init__.py
para garantir que o Python possa importar o módulo.Este pacote agora pode ser instalado usando pip install -e. Mais informações a serem encontradas em “Editable” Installs.
Uma vez instalado, o módulo pode ser usado na configuração Weblate (por exemplo,
weblate_customization.checks.FooCheck
).
Sua estrutura de módulo deve ser assim:
weblate_customization
├── setup.py
└── weblate_customization
├── __init__.py
├── addons.py
└── checks.py
Você pode encontrar um exemplo de personalização do Weblate em <https://github.com/WeblateOrg/customize-example>, ele abrange todos os tópicos descritos abaixo.
Alterando o logotipo¶
Crie um aplicativo Django simples contendo os arquivos estáticos que deseja substituir (veja Criando um módulo Python).
A marca aparece nos seguintes arquivos:
icons/weblate.svg
Logotipo mostrado na barra de navegação.
logo-*.png
Ícones web dependendo da resolução da tela e do navegador web.
favicon.ico
Ícone web usado por navegadores legados.
weblate-*.png
Avatares para bots ou usuários anônimos. Alguns navegadores web usam-nos como ícones de atalho.
email-logo.png
Usado em e-mails de notificações.
Adicione-o a
INSTALLED_APPS
:INSTALLED_APPS = ( # Add your customization as first "weblate_customization", # Weblate apps are here… )
Execute
weblate collectstatic --noinput
, para coletar arquivos estáticos servidos aos clientes.
Verificações de qualidade personalizadas, extensões e correções automáticas¶
To install your code for Correções automáticas personalizadas, Escrevendo as próprias verificações or Escrevendo extensões in Weblate:
Place the files into your Python module containing the Weblate customization (see Criando um módulo Python).
Adicione seu caminho totalmente qualificado à classe Python nas configurações dedicadas (
WEBLATE_ADDONS
,CHECK_LIST
ouAUTOFIX_LIST
):
# Checks
CHECK_LIST += ("weblate_customization.checks.FooCheck",)
# Autofixes
AUTOFIX_LIST += ("weblate_customization.autofix.FooFixer",)
# Addons
WEBLATE_ADDONS += ("weblate_customization.addons.ExamplePreAddon",)
Ver também
autocorreção-personalizada, verificações-próprias, extensão-própria, script-extensão