Mister Download Manager
  1. Головна
  2. Зробити внесок

Зробити внесок у Mister Download Manager

Повідомлення про помилки, ідеї, виправлення перекладів та запити на злиття вітаються. Усе відбувається відкрито на GitHub.

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

Вам потрібні Windows 10 або 11 та Rust stable 1.95 або новішої версії (інструментарій MSVC).

cargo build
cargo run -p mdm-app

Щоб спробувати зміни, не зачіпаючи власні завантаження, надайте програмі окрему папку для даних:

set MDM_DATA_DIR=C:\some\empty\folder
cargo run -p mdm-app

cargo run -p mdm-labserver -- --faults "rate=2M"запускає локальний тестовий сервер, який надає згенеровані файли з будь-якими проблемами, які ви запитуєте (повільні з'єднання, розриви, зайняті відповіді, відсутність діапазонів; GET / перераховує їх), тому завантаження можна тестувати без інтернету.

Перед відкриттям запиту на злиття

Це перевірки, які виконує CI; кожна працює на чистому клоні:

cargo fmt --all --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
python tools/i18n/extract.py      # then: git diff --exit-code i18n/en.tsv
node tools/extension/test.mjs

Зберігайте зміни сфокусованими та відповідними навколишньому коду. Кілька правил діють скрізь:

Переклади

Інтерфейс доступний усіма мовами, які пропонує Windows 11. Каталоги в i18n/ були створені за допомогою машинного перекладу, і кожен рядок, позначений #, machine, чекає на носія мови:

  1. Відкрийте i18n/<code>.tsv (коди знаходяться в i18n/languages.tsv).
  2. Виправте переклад у третьому стовпці рядка та видаліть рядок #, machine.
  3. Залиште {placeholders} та & (літеру гарячої клавіші) як є.

cargo test -p mdm-app every_catalogперевіряє кожен каталог. Щоб побачити, чи підходять ваші тексти, встановіть MDM_FIT_AUDIT на файл і зробіть скріншоти вашою мовою (tools\lab\docs-shots.ps1 ... -Lang <code>): кожен текст, який виходить за межі вікна або накладається на інший, перерахований там. Дивіться Мови, щоб дізнатися, як список мов, інсталятор та макет справа наліво поєднуються.

Вебсайт також доступний 20 мовами, перекладеними автоматично. Його тексти знаходяться в i18n/site/<code>.json, один рядок на речення: виправте "text" рядка (залиште теги, такі як <g1>…</g1> та <x2/>, як є, це посилання та іконки). python tools/website/translate_site.py --status показує, чого ще не вистачає кожній мові, а той самий інструмент з --langs <code> перекладає лише це.

Повідомлення про проблеми

Використовуйте Довідка → Повідомити про проблему в програмі: це відкриває форму повідомлення про помилку з уже заповненими вашою версією, системою, способом встановлення MDM та його мовою. Форма запитує те саме, коли ви відкриваєте її самостійно. Проблеми безпеки: дивіться SECURITY.md.

Запити на злиття приймаються за ліцензією проєкту, GNU GPL, версія 3 або новіша.