REALFORCE RC1(70%)をAutoHotkeyで魔改造してみた

効率化
スポンサーリンク

REALFORCE RC1の70%モデル(C1HJ11)を買いました。打鍵感は最高なんですが、せっかくならもっと快適にしたくて、Claude Codeに「こういうことしたいんだけど」って相談しながらAutoHotkeyのスクリプトを作ってもらった話です。

買ったキーボード

REALFORCE RC1 C1HJ11。70%レイアウト、日本語配列、キー荷重45g、Bluetooth/有線両対応のモデルです。

45gはREALFORCEの標準的な荷重で、軽すぎず重すぎずちょうどいい。長時間タイピングしても疲れません。70%なのでデスクも広く使えるし、見た目もスッキリ。

ただ、テンキーがないのはやっぱり数字入力で不便だし、IMEの切り替えもなんとかしたいなと。自分でAutoHotkeyのスクリプトをゴリゴリ書く……のではなく、Claude Codeに「こういうことやりたい」と伝えて、スクリプトを書いてもらいました。やりたいことを言葉で説明すればコードにしてくれるので、AHKの文法を知らなくても大丈夫でした。

今回は3つのカスタマイズを紹介します(うち1つはオチあり)。

その1: 右手ホームポジションをテンキー化する

70%キーボード最大の弱点がテンキーがないこと。数字キーは上段にありますが、エクセルで数字を連続入力するとか、電話番号を打つとか、そういう場面だと上段の数字キーはやっぱりつらい。

そこで、CapsLockをトグルキーにして、右手のホームポジションをテンキー化しました。

レイアウト

CapsLockを押すとテンキーモードON、もう一度押すとOFF。ON中は右手がこうなります。

キー 出力 キー 出力
7 7 u 4
8 8 i 5
9 9 o 6
j 1 m 0
k 2 , ,
l 3 . .
; *
/ / = +

テンキーの配列そのままなので、慣れるのも早いです。

ハマりポイント: CapsLockが非標準VKコードを送る

ここでRC1固有の問題にぶつかりました。CapsLockの仮想キーコードが通常のVK 14ではなく、F0という非標準のコードを送ってくるんです。AutoHotkey v1で普通にCapsLock::と書いても認識されません。

Claude Codeに「CapsLockが反応しない」と伝えたら、スキャンコード(SC03A)で指定する方法を提案してくれました。

SC03A::
    numLayerOn := !numLayerOn
    if (numLayerOn)
        ToolTip, [NUM]
    else
        ToolTip
return

スキャンコードは物理的なキー位置で判定するので、VKコードが何であろうと確実に動きます。同じようにREALFORCEのCapsLockが認識されない人はスキャンコード指定を試してみてください。

もうひとつのハマり: Upイベントが来ない

最初は「CapsLock押しっぱなしでレイヤーON、離したらOFF」にしたかったんですが、RC1のCapsLockはキーを離してもUpイベントが送信されません。なのでトグル方式(押すたびにON/OFF切り替え)にしました。

状態が分かりにくいので、ON中は画面に[NUM]のツールチップを表示しています。

おまけ: 左手ユーティリティキー

テンキーモードON中、左手側にもちょっとした機能を入れています。

  • t: 現在時刻(HH:mm形式)を入力
  • d: 今日の日付(yyyy-MM-dd形式)を入力

メモを取るときやファイル名に日時を入れたいとき、地味に便利です。

その2: Shift+Enterでソフト改行する

これはRC1固有の話ではなく、ターミナルやチャットツールで便利な設定です。

普段ターミナル(Windows Terminal)で長いコマンドを打つとき、\(バックスラッシュ)+ Enterで行を継続できますが、いちいち\を打つのが面倒。そこでShift+Enterで自動的に\ + Enterを送るようにしました。

+Enter::
    WinGet, exe, ProcessName, A
    if (exe = "wsl.exe" || exe = "WindowsTerminal.exe") {
        Send, {U+005C}{Enter}
    } else {
        Send, +{Enter}
    }
return

ターミナル以外のアプリでは通常のShift+Enterとして動作するので、他に影響はありません。

どこで役立つかというと、Claude CodeでShift+Enterでプロンプト内の改行ができるんです。複数行の指示を書きたいとき、普通にEnterを押すと送信されてしまいますが、Shift+Enterなら改行だけ。長めの指示を整理しながら書けるので、Claude Codeを使う人にはおすすめです。

その3: 変換/無変換でIME切り替え……と思ったら標準機能だった

スペースキーの左右にある「変換」「無変換」キーを「無変換 = IME OFF」「変換 = IME ON」に割り当てると、半角/全角キーのトグル式と違って「今どっちだっけ?」がなくなります。Macの「英数」「かな」キーと同じ発想ですね。

これもAutoHotkeyで実装して、ずっと使っていたんですが……この記事を書くときにClaude Codeに指摘されました

Windows 10(version 2004、2020年)以降、MS-IMEの標準機能でできます。

設定時刻と言語言語と地域日本語Microsoft IMEキーとタッチのカスタマイズ で、無変換キーに「IME-オフ」、変換キーに「IME-オン」を割り当てるだけ。AutoHotkeyもIME.ahkも要りません。

何年もAHKでやってたのに、標準機能で十分だった……。まだ設定してない人はぜひ。

とはいえ、複数のPCを使い分けている人はAHKスクリプトで持ち歩く方が楽かもしれません。MS-IMEの設定はPCごとに手動でやり直す必要があるので。自分はそのままAHKに残すことにしました。

スクリプトの使い方

AutoHotkey v1で動作します。起動時に自動実行させたい場合は、スタートアップフォルダ(Win+Rshell:startup)にショートカットを入れておくと楽です。

まとめ

REALFORCE RC1(70%)をAutoHotkeyで快適にしたカスタマイズを紹介しました。

  1. CapsLockトグルでテンキーレイヤー — 右手ホームポジションで数字入力
  2. Shift+Enterでソフト改行 — ターミナルの行継続&Claude Codeでの改行
  3. 変換/無変換でIME切り替え — AHKでやってたけど標準機能で十分だった

70%キーボードはコンパクトで最高なんですが、足りないキーはソフトウェアで補えばいい。そしてAutoHotkeyのスクリプトは、Claude Codeに「こうしたい」と伝えれば書いてくれます。CapsLockの非標準VKコード問題みたいなハマりポイントも、状況を伝えれば解決策を出してくれるので、自分でドキュメントを読み漁る必要がありませんでした。

RC1の打鍵感 × AIが作ったキーマップ、なかなか快適です。

コメント

タイトルとURLをコピーしました