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. 行の3列目の翻訳を修正し、その#, 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にあり、1行に1文です。行の"text"を修正してください(<g1>…</g1>や<x2/>のようなタグはリンクやアイコンなので、そのままにしてください)。python tools/website/translate_site.py --statusは各言語にまだ不足しているものを示し、--langs <code>と同じツールでそれだけを翻訳できます。

問題の報告

アプリでヘルプ → 問題の報告を使用してください。バージョン、システム、MDMのインストール方法、言語が入力されたバグレポートフォームが開きます。自分でフォームを開いた場合も同様の情報を求められます。セキュリティ上の問題については、SECURITY.mdを参照してください。

プルリクエストは、プロジェクトのライセンスであるGNU GPL、バージョン3以降の下で受け入れられます。