ການປັບແຕ່ງ Weblate

ຂະຫຍາຍ ແລະ ປັບແຕ່ງໂດຍໃຊ້ Django ແລະ Python. ປະກອບສ່ວນການປ່ຽນແປງຂອງເຈົ້າໄປຍັງຕົ້ນທາງເພື່ອໃຫ້ທຸກຄົນໄດ້ຮັບປະໂຫຍດ. ສິ່ງນີ້ຈະຊ່ວຍຫຼຸດຕົ້ນທຶນການບຳລຸງຮັກສາຂອງເຈົ້າ; ໂຄດໃນ Weblate ຈະຖືກດູແລເມື່ອມີການປ່ຽນແປງອິນເຕີເຟສພາຍໃນ ຫຼື ການຣີແຟັກເຕີ (refactoring) ໂຄດ.

Hint

ເຈົ້າຍັງສາມາດປັບແຕ່ງຮູບລັກສະນະຂອງ Weblate ໃນ ການປັບແຕ່ງຮູບລັກສະນະ.

Warning

ທັງອິນເຕີເຟສພາຍໃນ ແລະ ເທມເພລດບໍ່ຖືວ່າເປັນ API ທີ່ໝັ້ນຄົງ. ກະລຸນາທົບທວນການປັບແຕ່ງຂອງເຈົ້າສຳລັບທຸກການອັບເກຣດ, ອິນເຕີເຟສ ຫຼື ຄວາມໝາຍຂອງພວກມັນອາດປ່ຽນແປງໂດຍບໍ່ມີການແຈ້ງລ່ວງໜ້າ.

ການສ້າງໂມດູນ Python

ຖ້າເຈົ້າບໍ່ຄຸ້ນເຄີຍກັບ Python, ເຈົ້າອາດຕ້ອງການເບິ່ງ Python For Beginners, ເຊິ່ງອະທິບາຍພື້ນຖານ ແລະ ຊີ້ໄປຫາບົດຮຽນເພີ່ມເຕີມ.

ເພື່ອຂຽນໄຟລ໌ດ້ວຍໂຄດ Python ແບບກຳນົດເອງ (ເອີ້ນວ່າໂມດູນ), ຕ້ອງການບ່ອນເກັບມັນ, ບໍ່ວ່າຈະຢູ່ໃນເສັ້ນທາງລະບົບ (ປົກກະຕິຄື /usr/lib/python3.12/site-packages/) ຫຼື ໃນໄດເຣັກທໍຣີ Weblate, ເຊິ່ງຖືກເພີ່ມເຂົ້າໃນເສັ້ນທາງການຄົ້ນຫາຂອງອິນເຕີພຣີເຕີ (interpreter).

Hint

ເມື່ອ using Docker, ເຈົ້າສາມາດວາງໂມດູນ Python ໃນ /app/data/python/ (ເບິ່ງ Docker container volumes), ເພື່ອໃຫ້ 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. ຂໍ້ມູນເພີ່ມເຕີມສາມາດພົບໄດ້ໃນ Editable packages documentation.

  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>, ມັນກວມເອົາທຸກຫົວຂໍ້ທີ່ອະທິບາຍຂ້າງລຸ່ມນີ້.

ການກວດສອບຄຸນນະພາບແບບກຳນົດເອງ, add-ons, ຄຳແນະນຳອັດຕະໂນມັດ ແລະ ການແກ້ໄຂອັດຕະໂນມັດ

ເພື່ອຕິດຕັ້ງໂຄດຂອງເຈົ້າສຳລັບ ການແກ້ໄຂອັດຕະໂນມັດແບບກຳນົດເອງ, ການຂຽນການກວດສອບຂອງທ່ານເອງ, ການແປດ້ວຍເຄື່ອງແບບກຳນົດເອງ ຫຼື ການຂຽນສ່ວນເສີມ ໃນ 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",)