Skip to content

docs: add Japanese README - #43

Merged
HelloThisWorld merged 2 commits into
mainfrom
docs/japanese-readme
Aug 6, 2026
Merged

docs: add Japanese README#43
HelloThisWorld merged 2 commits into
mainfrom
docs/japanese-readme

Conversation

@HelloThisWorld

@HelloThisWorld HelloThisWorld commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

Adds README.ja.md, a maintained Japanese counterpart to the English README, and a language selector at the top of both files. Documentation only.

README.ja.md

A complete counterpart rather than a marketing summary. It mirrors the English README section for section:

  1. # winTerm with the same badges
  2. Japanese website link: https://winterm.dev/ja/
  3. ## winTermをダウンロード
  4. Stable and beta/prerelease distinction
  5. Unsigned-installer and signing-status disclosure
  6. Project identity and the Microsoft non-affiliation disclaimer
  7. ## 配布形式
  8. ## 主な機能
  9. ## ポータブルモード
  10. ## ビルドとテスト
  11. ## プライバシーとセキュリティ
  12. ## コード署名ポリシー
  13. ## ライセンスとアップストリーム
  14. ## サポートと関連ドキュメント

Language switch

  • README.md now starts with English | [日本語](README.ja.md)
  • README.ja.md starts with [English](README.md) | 日本語

README.md is not renamed; the change to it is a two-line addition.

Content parity approach

Facts are taken from the current README at implementation time, not restated from memory:

  • source version 1.3.0-beta3, latest stable 1.2.0
  • the beta prerelease tag v1.3.0-beta3 and its GitHub URL
  • asset patterns winTerm-<version>-setup-x64.exe and winTerm-<version>-portable-x64.zip
  • SHA256SUMS.txt
  • the pinned upstream baseline release-1.25@1cea42d433253d95c4487a3037db48197b5e72f4

Preserved verbatim: all commands, filenames, executable names, JSON setting names (shellIntegration.autoInject), version strings, hashes, keyboard shortcuts (Ctrl+Tab), paths (%LOCALAPPDATA%\winTerm, portable.marker), release URLs, and relative documentation links. The single PowerShell code block is byte-identical to the English one — verified programmatically. PowerShell, Command Prompt, WSL, Windows Terminal, GitHub, SignPath, and Microsoft are left untranslated.

Nothing was softened to make the translation more promotional. Every disclosure is carried over:

  • the unsigned installer and the SmartScreen / Unknown Publisher warning
  • the instruction to download only from the official release and verify SHA256SUMS.txt
  • the current status: the latest public release is not Authenticode-signed and no SignPath certificate has been issued
  • the exact SignPath attribution sentence, in English as required
  • roles, GitHub-hosted runners, immutable release tag, and manual approval for every signing request
  • the Microsoft non-affiliation disclaimer and the no-logos statement
  • the full privacy no-collection list, matching PRIVACY.md and the English README exactly

Links to English-only documentation are labelled (英語). A closing note states that repository documentation and the application UI are not fully available in Japanese, and that winTerm-specific new features still display some English text — which matches the actual ja-JP resource coverage (1303 of 1421 keys, with all 25 Command Timeline keys untranslated).

Changelog and Wiki

  • CHANGELOG.md gains an ## Unreleased section with a ### Documentation subsection recording README.ja.md, the language selector, the Japanese website link, and the validation changes. No release version was fabricated and no application version file was touched.
  • The Wiki Development-Changes.md ledger entry is published per docs/development/changelog-policy.md (wiki commits 0162c7d and f00552c), recording the date, branch commit SHAs, summary, validation, and build-cost result. It must be updated to the final merge or squash SHA once this PR lands, and the entry says so.

Validation

Check Result
scripts/winterm/verify-version.ps1 passed, including 17 new Japanese-README checks
scripts/winterm/test-ci-classification.ps1 passed
Relative links in README.ja.md 21 of 21 resolve
Both language links resolve yes, in both directions
Code blocks unchanged verified identical to README.md
Version and release references match README.md verified for every token listed above
Encoding UTF-8, no BOM, LF endings (matching the other root Markdown files)
Markdown structure balanced code fences, 31 well-formed links, no malformed headings

The seventeen checks added to verify-version.ps1 cover: both language links, the website link, the source version (derived from version.json, not hardcoded), the stable 1.2.0 reference, the installer and portable asset patterns, the checksum filename, the unsigned-installer disclosure, the current signing status, the exact SignPath attribution, the Microsoft non-affiliation disclaimer, portable.marker, and the pinned upstream baseline. Three further guards keep an English or mis-encoded copy from passing: no UTF-8 BOM, strict UTF-8 decoding, and more than 500 kana and kanji characters (currently 2713). No new testing dependency was added.

The checks are written with ASCII literals only. The first version embedded Japanese string literals, which made verify-version.ps1 the only non-ASCII PowerShell file in the repository; Test-PowerShellSyntax parses scripts with Parser::ParseFile, which decodes a BOM-less file using the host's active code page, so the literals were corrupted on the CI runner and quick validation failed even though the file parsed cleanly on a UTF-8 host. Commit 776edb633 restores ASCII-only literals and verifies the same facts structurally.

README.ja.md was also added to the conservative documentation allowlist in scripts/winterm/ci/ChangeClassification.psm1, so a future translation-only change classifies as docs-only rather than falling through to a heavier class.

No application change

No application code, resource, or version file changed. The diff is five files: README.ja.md (new), README.md, CHANGELOG.md, scripts/winterm/verify-version.ps1, and scripts/winterm/ci/ChangeClassification.psm1. No release was produced and no version was bumped.

Build label

The build label was not added. Running the classifier over this exact change set returns:

ChangeClass        : validation-only
RunReleaseDelivery : False
RunDebugValidation : False

CI confirms this on the pull request: Classify exact change set, Quick source and smoke validation, and ci-gate all pass, while x64 Debug build and compiled tests and x64 Release build, tests, and downloadable distributions both report skipping. The expensive native build workflow does not run.

Adds README.ja.md as a maintained Japanese counterpart to the English
README, and a language selector to the top of both files.

The translation mirrors the English original section for section: download
channels, distribution formats, core features, portable mode, build and
test commands, privacy and security, code signing policy, and license and
upstream notices. It links to the Japanese website at
https://winterm.dev/ja/.

Facts are taken from the current README rather than restated: the source
version 1.3.0-beta3, the latest stable release 1.2.0, the beta prerelease
tag, the asset filename patterns, SHA256SUMS.txt, and the pinned upstream
baseline. Commands, filenames, executable names, JSON setting names,
version strings, hashes, release URLs, and relative documentation links are
preserved verbatim, and the single code block is byte-identical to the
English one.

Every disclosure is carried over rather than softened: the unsigned
installer and SmartScreen warning, the checksum verification step, the
current "not Authenticode-signed" status, the exact SignPath attribution
sentence, and the Microsoft non-affiliation disclaimer. Links to
English-only documentation are labelled (英語), and the README states that
winTerm-specific new features still display some English text, which
matches the actual ja-JP resource coverage.

Validation:
- scripts/winterm/verify-version.ps1 gains eleven checks covering the two
  language links, the website link, both version references, the checksum
  filename, the signing disclosures, the SignPath attribution, the
  non-affiliation disclaimer, and the upstream baseline. The script passes.
- README.ja.md added to the documentation allowlist in
  ChangeClassification.psm1, so a translation-only change classifies as
  docs-only. scripts/winterm/test-ci-classification.ps1 passes.
- All 21 relative links in README.ja.md resolve, and the file is UTF-8
  with LF endings and no BOM.

No application code, resource, or version file changed, and no release was
produced. The changelog records this under Unreleased rather than
fabricating a version.
The Japanese README checks embedded Japanese string literals in
verify-version.ps1, making it the only non-ASCII PowerShell file in the
repository. Test-PowerShellSyntax parses scripts with
Parser::ParseFile, which decodes a BOM-less file using the host's active
code page; on the CI runner that corrupted the literals and reported
"Missing ')' in method call", failing quick validation. The file parsed
cleanly on a UTF-8 host, so the failure only appeared in CI.

The checks now use ASCII literals only, matching every other PowerShell
file here, and verify the same facts through the ASCII tokens the
Japanese prose contains: both language links, the website link, the
source and stable versions, the installer and portable asset patterns,
the checksum filename, SmartScreen, Authenticode, the SignPath
attribution, Microsoft, portable.marker, and the upstream baseline.

Three checks replace what the Japanese literals used to guarantee, so an
English copy or a mis-encoded file still cannot pass: the file must have
no UTF-8 BOM, must decode as strict UTF-8, and must contain more than 500
kana and kanji characters. It currently contains 2713.

Verified: Parser::ParseFile reports 0 errors, the file contains 0
non-ASCII bytes, verify-version.ps1 passes all 17 Japanese README checks,
and test.ps1 -Suite Smoke passes locally.
@HelloThisWorld
HelloThisWorld merged commit 4753fba into main Aug 6, 2026
5 checks passed
@HelloThisWorld
HelloThisWorld deleted the docs/japanese-readme branch August 6, 2026 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant