Налаштовування Weblate

Розширюйте можливості та налаштовуйте систему за допомогою Django і Python. Надсилайте ваші зміни до основної гілки розробки, щоб ними могли скористатися усі. Це зменшує витрати на супровід системи; код у Weblate важливий при зміні внутрішніх інтерфейсів або переплануванні коду.

Попередження

Ні внутрішні інтерфейси, ні шаблони не вважаються стабільним програмним інтерфейсом. Будь ласка, переглядайте ваші налаштовування при кожному оновленні — інтерфейси або їхня семантика можуть змінитися без попередження.

Створення модуля Python

Якщо ви не є професіоналом у Python, вам варто ознайомитися із книгою Python For Beginners, де наведено пояснення щодо основ мови та посилання на інші підручники.

Для написання нетипового коду Python (який називається модулем), потрібне сховище для зберігання його даних — або у загальносистемному каталозі (зазвичай, щось подібне до /usr/lib/python3.7/site-packages/), або у каталозі Weblate, який також додається до шляху пошуку інтерпретатора мови.

Ще краще — перетворіть ваші налаштування на належний пакунок Python:

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

  2. У теці створіть файл setup.py для опису пакунка:

    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"],
    )
    
  3. Створіть теку для модуля Python (також називається weblate_customization) для коду налаштовування.

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

  5. Тепер цей пакунок можна встановити за допомогою команди pip install -e. Докладніший опис можна знайти у розділі “Editable” Installs.

  6. Після встановлення модулем можна скористатися у налаштуваннях Weblate (наприклад weblate_customization.checks.FooCheck).

Ваша структура модуля має виглядати десь так:

weblate_customization
├── setup.py
└── weblate_customization
    ├── __init__.py
    ├── addons.py
    └── checks.py

Приклад налаштовування Weblate можна знайти тут: <https://github.com/WeblateOrg/customize-example>. У цьому прикладі реалізовано усі речі, які описано нижче.

Нетипові перевірки якості, додатки та автоматичні виправлення

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

  1. Розташуйте належним чином файли у вашому модулі Python, які містять налаштування Weblate (див. Створення модуля Python).

  2. Додайте його шлях повністю до класу Python у відповідних параметрах (WEBLATE_ADDONS, CHECK_LIST або AUTOFIX_LIST):

# Checks
CHECK_LIST += ("weblate_customization.checks.FooCheck",)

# Autofixes
AUTOFIX_LIST += ("weblate_customization.autofix.FooFixer",)

# Addons
WEBLATE_ADDONS += ("weblate_customization.addons.ExamplePreAddon",)