Налаштовування Weblate¶
Розширюйте можливості та налаштовуйте систему за допомогою Django і Python. Надсилайте ваші зміни до основної гілки розробки, щоб ними могли скористатися усі. Це зменшує витрати на супровід системи; код у Weblate важливий при зміні внутрішніх інтерфейсів або переплануванні коду.
Підказка
Ви можете налаштувати вигляд Weblate за допомогою розділу Налаштовування вигляду.
Попередження
Ні внутрішні інтерфейси, ні шаблони не вважаються стабільним програмним інтерфейсом. Будь ласка, переглядайте ваші налаштовування при кожному оновленні — інтерфейси або їхня семантика можуть змінитися без попередження.
Дивись також
Створення модуля Python¶
Якщо ви не є професіоналом у Python, вам варто ознайомитися із книгою Python For Beginners, де наведено пояснення щодо основ мови та посилання на інші підручники.
Щоб написати файл з користувацьким кодом на Python (так званий модуль), потрібне місце для його зберігання, або в системному шляху (зазвичай щось на кшталт /usr/lib/python3.12/site-packages/), або в каталозі Weblate, який також додається до шляху пошуку інтерпретатора.
Підказка
Коли using Docker, ви можете розміщувати модулі Python у /app/data/python/ (бачити Томи контейнера Docker), щоб їх можна було завантажити за допомогою Weblate, наприклад, з settings override file.
Ще краще — перетворіть ваші налаштування на належний пакунок Python:
Створіть теку для вашого пакунка (ми використовуватимемо weblate_customization).
Усередині нього створіть файл
pyproject.tomlдля опису пакета:[build-system] requires = ["uv_build>=0.8.18,<0.9.0"] build-backend = "uv_build" [project] name = "weblate-customization" version = "0.1.0" description = "Add your description here" requires-python = ">=3.13" dependencies = []
Створіть папку для модуля Python:
src/weblate_customizationУ ній створіть файл
__init__.py, щоб переконатися, що Python може імпортувати модуль.Цей пакет тепер можна встановити за допомогою uv pip install -e. Більше інформації можна знайти в Документації щодо редагуваних пакетів.
Після встановлення модулем можна скористатися у налаштуваннях Weblate (наприклад
weblate_customization.checks.FooCheck).
Ваша структура пакунка має виглядати десь так:
weblate_customization
├── pyproject.toml
└── src
└── weblate_customization
├── __init__.py
├── addons.py
└── checks.py
Приклад налаштовування Weblate можна знайти тут: <https://github.com/WeblateOrg/customize-example>. У цьому прикладі реалізовано усі речі, які описано нижче.
Зміна логотипа¶
Створіть просту програму Django, яка міститиме статичні файли, які ви хочете перезаписати (див. Створення модуля Python).
Логотип буде використано у таких файлах:
icons/weblate.svgЛоготип, який буде показано на смужці навігації.
logo-*.pngВебпіктограми залежатимуть від роздільності екрана та браузера.
favicon.icoВебпіктограма для використання у застарілих браузерах.
weblate-*.pngАватари для ботів або анонімних користувачів. У деяких браузерах ці піктограми буде використано як мініатюри.
email-logo.pngВикористовується у повідомленнях електронної пошти зі сповіщеннями.
Додайте її до
INSTALLED_APPS:INSTALLED_APPS = ( # Add your customization as first "weblate_customization", # Weblate apps are here… )
Віддайте команду
weblate collectstatic --noinput, щоб зібрати статичні файли, які надаються клієнтам.
Спеціальні перевірки якості, доповнення, автоматичні пропозиції та автоматичні виправлення¶
Щоб встановити ваш код для Нетипові автоматичні виправлення, Написання власних перевірок, Нетиповий комп’ютерний переклад або Написання додатка у Weblate:
Помістіть файли у ваш модуль Python, що містить налаштування Weblate (див. Створення модуля Python або Налаштування коду).
Додайте повний шлях до класу Python у відповідних налаштуваннях:
# Checks
CHECK_LIST += ("weblate_customization.checks.FooCheck",)
# Autofixes
AUTOFIX_LIST += ("weblate_customization.autofix.FooFixer",)
# Add-ons
WEBLATE_ADDONS += ("weblate_customization.addons.ExamplePreAddon",)
# Automatic suggestions
WEBLATE_MACHINERY += ("weblate_customization.machinery.SampleTranslation",)