Налаштовування 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:

  1. Створіть теку для вашого пакунка (ми використовуватимемо weblate_customization).

  2. Усередині нього створіть файл 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 = []
    
  3. Створіть папку для модуля Python: src/weblate_customization

  4. У ній створіть файл __init__.py, щоб переконатися, що Python може імпортувати модуль.

  5. Цей пакет тепер можна встановити за допомогою uv pip install -e. Більше інформації можна знайти в Документації щодо редагуваних пакетів.

  6. Після встановлення модулем можна скористатися у налаштуваннях 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>. У цьому прикладі реалізовано усі речі, які описано нижче.

Спеціальні перевірки якості, доповнення, автоматичні пропозиції та автоматичні виправлення

Щоб встановити ваш код для Нетипові автоматичні виправлення, Написання власних перевірок, Нетиповий комп’ютерний переклад або Написання додатка у Weblate:

  1. Помістіть файли у ваш модуль Python, що містить налаштування Weblate (див. Створення модуля Python або Налаштування коду).

  2. Додайте повний шлях до класу 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",)