
ReControl
概要
Windows と UNIX 由来ツールにおけるコントロールキーの振る舞いを統合する
ReControl は、Command によるキーボードショートカットと UNIX 由来ツールにおける Control のキーバインドが調和して共存する macOS のように、統合的かつ効率的なキーボード体験を Windows 上で実現するためのユーティリティです。
本アプリは、CapsLock を RCtrl (Right Ctrl) へリマップすることで、Windows 全体でグローバルな Emacs 風キーバインドを有効にします。
これにより役割の明確な分離が実現します。macOS の Control に対応する RCtrl は ReControl のグローバルな Emacs 風キーバインドを担当します。macOS の Command に対応する標準の Ctrl (Left Ctrl) はシステムやアプリのショートカットを担当します。結果として、衝突のない滑らかな操作感が得られます。
機能
- グローバルな Emacs 風キーバインド
Windows の多くのテキストフィールドで Emacs 風の移動・編集が可能 - スマートなキーリマップ
CapsLock を RCtrl に割り当て ReControl の修飾キーとして使用 - 自動アプリ除外
競合を防ぐためターミナルやエディターでは自動的に無効化
インストール
- Releases ページから最新のインストーラー ReControl-x.x.x-x64.msi をダウンロード
- ダウンロードした .msi を実行してインストール
- キーのリマップを反映するため Windows を再起動
インストーラーは次の処理を行います。
- 実行ファイルを C:\Program Files\ReControl に配置
- Windows 起動時に自動実行されるようレジストリキーを追加
- CapsLock を RCtrl にリマップするため Windows のレジストリに Scancode Map キーを作成
ℹ️重要
インストーラーは既存の Scancode Map キーを上書きしません。Ctrl2Cap など他のキーボードリマップツールを使用している場合は、インストール前にそれらを削除または適切に設定してください。
レジストリエディターで HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout から Scancode Map キーを手動で削除できます。
もしくは、管理者として PowerShell を実行し、次のコマンドで削除します。
Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout" -Name "Scancode Map"
変更を反映するには、システムの再起動が必要です。
アンインストール
Windows の「設定>アプリ>インストールされているアプリ」からいつでも ReControl をアンインストールできます。アンインストーラーは、インストール時に作成したレジストリキーも削除します。
使用方法
インストール後、ReControl はバックグラウンドで静かに動作し、通知領域に常駐します。Emacs 風キーバインドはシステム全体で直ちに有効になります。
グローバルキーバインド
利用可能なショートカットは下記のとおりです。RCtrl として振る舞う、リマップされた CapsLock で発動します。
ショートカット | 動作 | 同等のキー |
---|---|---|
RCtrl+A | 行頭へ移動 | Home |
RCtrl+B | 1文字左へ移動 | Left |
RCtrl+D | 右側の文字を削除 | Delete |
RCtrl+E | 行末へ移動 | End |
RCtrl+F | 1文字右へ移動 | Right |
RCtrl+H | 左側の文字を削除 | Backspace |
RCtrl+K | 行末まで切り取り | Shift+End → Shift+Delete |
RCtrl+N | 次行へ移動 | Down |
RCtrl+P | 前行へ移動 | Up |
RCtrl+T | 前後2文字を入れ替え | Shift+Left → Shift+Delete → Right → Shift+Insert |
RCtrl+Y | 貼り付け | Shift+Insert |
⚠警告
RCtrl+K および RCtrl+T は、現在のクリップボードを上書きします。
除外アプリケーション
競合を防ぐため、次のアプリにおいて ReControl は自動的に無効化されます。
- Windows Terminal (WindowsTerminal.exe)
- GNU Emacs (emacs.exe)
- gVim (gvim.exe)
ライセンス
このプロジェクトは MIT License の下でライセンスされています。