Skip to content

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 26 Jul 02:53

WinRemap v0.4.0 — 設定ウィンドウで編集できるようになりました

これまで「今効いている設定」を眺めるだけだったウィンドウが、そのファイルのエディタになりました。

新機能

  • 設定ウィンドウでの編集
    [編集]を押すと、名前・対象アプリ・除外アプリ・規則が入力欄になります。キーマップはツリーから追加・削除・並べ替えでき、全体設定はスライダーとチェックボックスです。

    • キー記法は打ちながら解釈を表示します(A-x u なら「Alt+x に続けて u」)。読めないときは理由と、近いキー名があれば候補を出します
    • [保存]はコマンドラインと同じ検証器で設定全体を検証します。問題があれば何も書かず、行番号付きで一覧します
    • 検証を通れば原子的に書き込んで再読み込みするので、閲覧モードに戻った時点で新しい規則が効いています
    • 編集していない箇所は 1 バイトも変わりません — コメント・空行・規則の並び順・書いた綴り・改行コード。規則を削除したときに消えるのはその行と行末コメントだけで、上に書いたコメントは次の規則へ引き継がれます
    • 編集中に WinRemap の外でファイルが変わっていたら、黙って上書きせず確認します。未保存のまま閉じようとしたときも同様で、保存に失敗しても(読み取り専用・空き容量不足など)編集内容は失われません
    • [今の前面アプリから取得]を押して 3 秒以内に目的のアプリを前面にすると、その exe 名が対象アプリ(または除外アプリ)に入ります
    • ウィンドウを開いている間も、保存の瞬間も、リマップは止まりません
  • エクスプローラー風の画面と設定ファイルの切り替え
    上部のアドレスバーに設定フォルダーと、その中の .toml の一覧が出ます。別のファイルを選べばそちらへ切り替わり、トレイの「設定を再読み込み」も新しいファイルを見ます。ファイル名の横の ● は「読み込んだ後にディスク上で変わった」印です(自動では読み直しません)。左はアイコン付きのツリー、下はバージョン・起動時刻・直近の出来事を出すステータスバーになりました。

修正

  • Visual C++ 再頒布可能パッケージが要らなくなりました。 v0.3.0 の実行ファイルは vcruntime140.dll を必要とし、それが入っていない素の Windows では起動できませんでした(STATUS_DLL_NOT_FOUND)。C ランタイムを静的リンクしたので、Windows 標準の DLL だけで動きます

詳しい使い方はヘルプ(設定ガイド)を参照してください。同梱の examples/emacs.toml には、C-x C-s(保存)のような Emacs 風の 2 ストロークの書き方を追加しました。

インストール

  • インストーラー: winremap-setup.exe(管理者権限不要・ユーザー単位)
  • ポータブル: winremap.exe(1 ファイル。設定は %APPDATA%\winremap\config.toml

SmartScreen(「Windows によって PC が保護されました」)が出たら、署名なしのためです。詳細情報 → 実行で起動できます。下記の検証を推奨します。

ダウンロードの検証

(Get-FileHash .\winremap-setup.exe -Algorithm SHA256).Hash.ToLower()   # SHA256SUMS と照合
gh attestation verify .\winremap-setup.exe --repo DaikiSuganuma/winremap

GitHub Releases 以外で配布されているバイナリは非公式です。


WinRemap v0.4.0 — Edit your config in the settings window

The window that only ever showed you the config in effect is now an editor for the file it came from.

New

  • Config editing in the settings window.
    Press Edit and names, target apps, exclusions and rules become fields. Keymaps can be added, deleted and reordered from the tree; the general settings sit on sliders and checkboxes.

    • Key-notation fields say what they read as while you type (A-x u shows "Alt+x, then u"), and flag what they cannot parse — with a suggestion when your key name is close to a real one
    • Save validates the whole config with the same parser the command line uses. If anything is wrong, nothing is written and the problems are listed with their line numbers
    • A valid save is written atomically and reloaded, so the new rules are in effect before the window returns to viewing
    • Everything you did not edit stays byte for byte as it was — comments, blank lines, the order of your rules, your spelling, and the file's line endings. Deleting a rule takes its line and the comment on that line; comments written above it move to the rule that follows
    • If the file changed outside WinRemap while you were editing, Save asks instead of overwriting. Closing with unsaved changes asks too, and a save that fails (read-only file, no space) keeps your edits
    • Capture the foreground app: press it, bring the app you mean to the front within three seconds, and its exe name lands on the application (or exclusion) list
    • Remapping never pauses — not while the window is open, not while a save goes through
  • Explorer-style window, and switching config files.
    The address bar names the folder your config lives in and lists the .toml files beside it; pick another and WinRemap switches to it, tray reload included. A ● next to a file means it changed on disk since it was loaded (nothing is reloaded behind your back). The list on the left is an icon tree, and a status bar shows the version, when WinRemap started, and the last thing that happened.

Fixed

  • The Visual C++ redistributable is no longer required. The v0.3.0 executable imported vcruntime140.dll and would not start on a clean Windows without it (STATUS_DLL_NOT_FOUND). The C runtime is now linked statically, so the binary runs on the DLLs Windows ships with.

See the config guide for details. The bundled examples/emacs.toml also gained the Emacs C-x map (C-x C-s to save, and so on), showing how two-stroke sequences are written.

Install

  • Installer: winremap-setup.exe (per-user, no admin rights)
  • Portable: winremap.exe (single file; config at %APPDATA%\winremap\config.toml)

If SmartScreen warns you, it's because the binaries are unsigned — More info → Run anyway, and verify the download below.

Verify your download

(Get-FileHash .\winremap-setup.exe -Algorithm SHA256).Hash.ToLower()   # compare with SHA256SUMS
gh attestation verify .\winremap-setup.exe --repo DaikiSuganuma/winremap

Binaries from anywhere other than GitHub Releases are unofficial.

Full changelog: https://github.com/DaikiSuganuma/winremap/blob/v0.4.0/CHANGELOG.md