Mister Download Manager
  1. Home
  2. Bijdragen

Bijdragen aan Mister Download Manager

Bugrapporten, ideeën, vertaalcorrecties en pull-aanvragen zijn allemaal welkom. Alles gebeurt openbaar op GitHub.

Instellen

U hebt Windows 10 of 11 en Rust stable 1.95 of nieuwer nodig (de MSVC-toolchain).

cargo build
cargo run -p mdm-app

Om wijzigingen te proberen zonder uw eigen downloads aan te raken, geeft u de app een aparte gegevensmap:

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

cargo run -p mdm-labserver -- --faults "rate=2M"start een lokale testserver die gegenereerde bestanden levert met de problemen die u aanvraagt (trage verbindingen, onderbrekingen, drukke antwoorden, geen bereiken; GET / toont ze), zodat downloads zonder internet kunnen worden getest.

Voordat u een pull-aanvraag opent

Dit zijn de controles die CI uitvoert; elk werkt op een schone kloon:

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

Houd wijzigingen gericht en passend bij de omringende code. Enkele regels gelden overal:

Vertalingen

De interface is beschikbaar in elke taal die Windows 11 biedt. De catalogi in i18n/ zijn gemaakt met machinevertaling, en elke rij gemarkeerd met #, machine wacht op een moedertaalspreker:

  1. Open i18n/<code>.tsv (de codes staan in i18n/languages.tsv).
  2. Corrigeer de vertaling in de derde kolom van de rij en verwijder de #, machine-regel.
  3. Houd {placeholders} en de & (de sneltoetsletter) zoals ze zijn.

cargo test -p mdm-app every_catalogcontroleert elke catalogus. Om te zien of uw teksten passen, stelt u MDM_FIT_AUDIT in op een bestand en maakt u de schermafbeeldingen in uw taal (tools\lab\docs-shots.ps1 ... -Lang <code>): elke tekst die buiten het venster of over een andere tekst loopt, wordt daar vermeld. Zie Talen voor hoe de talenlijst, het installatieprogramma en de rechts-naar-links-indeling samenkomen.

De website is ook in 20 talen, eveneens machinaal vertaald. De teksten staan in i18n/site/<code>.json, één regel per zin: pas de "text" van een regel aan (houd tags zoals <g1>…</g1> en <x2/> zoals ze zijn, dit zijn de links en pictogrammen). python tools/website/translate_site.py --status toont wat elke taal nog mist, en dezelfde tool met --langs <code> vertaalt alleen dat.

Problemen melden

Gebruik Help → Een probleem melden in de app: dit opent het bugrapportformulier met uw versie, systeem, hoe MDM is geïnstalleerd en de taal ingevuld. Het formulier vraagt om hetzelfde wanneer u het zelf opent. Beveiligingsproblemen: zie SECURITY.md.

Pull-aanvragen worden geaccepteerd onder de projectlicentie, de GNU GPL, versie 3 of later.