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 이상에 따라 허용됩니다.