GolinksPRO Download Manager
  1. ホーム
  2. 貢献する

Contribute to GolinksPRO Download Manager

Bug reports, ideas, and translation fixes are all welcome.

セットアップ

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}と&(キーボードショートカットの文字)は変更しないでください。

#, machineの行を削除すると、その翻訳は以降、翻訳者が管理します。tools/i18n/translate.pyはその行を再び機械翻訳に送信しません。また CI(tools/i18n/reviewed_guard.py)では、その行を削除するか、再び#, machineの印を付けたプルリクエストは失敗します。

cargo test -p mdm-app every_catalogすべてのカタログをチェックします。テキストが収まるか確認するには、MDM_FIT_AUDITにファイルを指定し、使用する言語でスクリーンショットを撮ります(tools\lab\docs-shots.ps1 ... -Lang <code>)。ウィンドウからはみ出したり、別のウィンドウに重なったりするテキストがすべて一覧表示されます。言語リスト、インストーラー、右から左へのレイアウトの連携については、言語をご覧ください。

ウェブサイトも21言語に対応していますが、こちらも機械翻訳です。テキストはi18n/site/<code>.jsonに文ごとに1行で記載されています。各行の"text"を修正してください(<g1>…</g1>や<x2/>などのタグはリンクやアイコンを表すため、変更しないでください)。python tools/website/translate_site.py --statusでは各言語で不足している部分を確認でき、同じツールで--langs <code>を使うと、不足部分だけを翻訳できます。

問題の報告

Use Help → Report a problem in the app: it opens the bug report form with your version, system, how GDM was installed and its language filled in. The form asks for the same when you open it yourself. Security problems: see SECURITY.md.

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