1. はじめに
タイピングの世界は奥深いものです。
世の中には「ブラインドタッチを覚えよ」「ホームポジションを守れ」と説くタイピング指南がたくさんありますが、実際のところ ほとんどの人がEnterキーや矢印キーではホームポジションを崩している のをご存知でしょうか。
私自身も以前はそうしていました。
Enterキーに小指(または薬指)を伸ばしては、ホームポジションに戻るのに四苦八苦していました。
今回は、私が愛用している HHKBハイブリッドS と、AutoHotkeyによるキー配置の再設計を通じて、
「本当の意味でホームポジションを維持できるタイピング環境」を紹介します。
2. ホームポジションとは
キーボードを打つために適した手の位置のことです。
左手の人差し指をFキーに、右手の人差し指をJキーに添えて
そのまま自然に指を置くポジションのことです。

一般的なキーボードのホームポジションの図
黄色のキーに指を載せるイメージ
このようにすると、基準の位置が固まり、相対座標での指移動でブラインドタッチができるようになります。
3. 見落とされがちな「Enterキー問題」
多くの人は「ホームポジションを守ってタイピングしよう」と言いながら、Enterキーだけは例外にしています。
右端にあるEnterキーを押すたびに、
- 右手を大きく移動させる
- 小指を不自然に伸ばす
- ホームポジションに戻す時に、キーボードを見てしまう
この「小さなクセ」が積み重なり、
- タイピングのリズムが途切れる
- 小指や手首に負担がかかる
- 長時間作業で疲労が溜まる
といった問題につながります。

Enterキーの度にホームポジションを崩してしまったら、
そこで私は Enterを「;」キーに割り当てました。

これで、右手小指が「文字通りホームポジションのまま」押すことができます。
4. 矢印キーを「親指+HJKL」で操作する
Enterだけではありません。矢印キーもまた、ホームポジションの大敵です。
私が採用しているのは 無変換キー+HJKLで矢印操作する方法。
- 無変換+H: ←
- 無変換+J: ↓
- 無変換+K: ↑
- 無変換+L: →
右手親指で「無変換」を押しながら、人差し指・中指・薬指でHJKLを操作します。
これはVimユーザーに馴染み深い配置で、直感的かつホームポジションを崩さずにカーソル移動ができます。
私の場合は、スペースキーの右側のボタンを「無変換」に割り当てて、
ホームポジションを崩すことなく操作しています。

スペースキーが無駄に広い英字キーボードでは、物理的にできないので、スペースキーが狭いキーボードをお勧めする。
上記のキー配列は、HHKB Professional HYBRID Type-S 日本語配列
5. BS・Delも近くに呼び込む
もうひとつの課題は BackspaceとDelete。
文章を書いていると、修正のためにBSやDelを多用しますが、どちらも遠い位置にあります。
そこで私は、
- @キーをBackspace
- :キーをDelete
に割り当てています。
これで打ち間違いをしたときも、指を大きく動かさずに修正できます。

もちろん「@」自体は使用頻度が高い記号。
そのため 無変換+@で本来の@を入力できるように設定しました。
こうすれば実用性も犠牲にしません。

6. AutoHotkeyでの実装例
以下は、私が使っているAutoHotkeyの一部です。
「;」や「@」「:」キーにEnterやBS、Delキーを割り当てているので、
それらのキーを別のキーにアサインしています。
; 無変換キーを無効化する。無変換キーとの組み合わせを安定化
vk1C::Return ; 無変換キー を 無効化
vk1D::Return ; 変換キー を 無効化
; 不要キーを入れ替え
vkF0::vkF3 ; Caps を 半角
vkF2::Esc ; かなキー を ESC
RShift::AppsKey ; 右シフトをAppsきーに(右クリックの振る舞い)
; 「@:;」とBS、Del、Enterの入れ替え
@::BS ; @ を BS
vkBA:: Del ; : を DEL
vkBB:: Enter ; ; を Enter
; 「@;:」を無変換と同時押しで解決
vk1C & @::Send, @ ; 無変換+@ を @
vk1C & vkBA::vkBA ; 無変換+: を :
vk1C & vkBB::vkBB ; 無変換+; を ;
;矢印キーと、Home,End,PageUp,Downを設定
SendMode Input
SetWorkingDir %A_ScriptDir%
vk1C & H::Send,{Blind}{Left} ;無変換 + H = 左カーソルキー
vk1C & J::Send,{Blind}{Down} ;無変換 + J = 下カーソルキー
vk1C & K::Send,{Blind}{Up} ;無変換 + K = 上カーソルキー
vk1C & L::Send,{Blind}{Right} ;無変換 + L = 右カーソルキー
vk1C & Y::Home
vk1C & U::PgDn
vk1C & I::PgUp
vk1C & O::End
;無変換キーでファンクションキー
vk1C & 1::F1
vk1C & 2::F2
vk1C & 3::F3
vk1C & 4::F4
vk1C & 5::F5
vk1C & 6::F6
vk1C & 7::F7
vk1C & 8::F8
vk1C & 9::F9
vk1C & 0::F10
vk1C & -::F11
vk1C & ^::F12
; 無変換キーをCtrlキーのように
vk1C & A::^A
vk1C & B::^B
vk1C & C::^C
vk1C & D::^D
vk1C & F::^F
vk1C & G::^G
vk1C & N::^N
vk1C & S::^S
vk1C & T::^T
vk1C & V::^V
vk1C & W::^W
vk1C & X::^X
vk1C & Z::^Z
キーアサイン

オレンジが変更箇所。赤は「単体での操作を無効化」している箇所
無変換(右手親指キー)との同時押しでの操作

①上段のキー :ファンクションキーに置き換え。
②HJKLキー :矢印キー
③YUIOキー :Home,PageDn,PageUp,Endに置き換え(矢印キーと同一のルールで)
④;@:キー :元のキーが出力できるようにする。
⑤Aなどのキー :同時押しでCtrl+Aにする
自分好みにカスタマイズしたい場合は、AutoHotKeyのページをご覧ください
7. HHKB HYBRID Type-S 日本語配列のススメ
DELや矢印キーと同様に、Home、End、PageUp、PageDownなどのキーもアサインすると、
下の図の赤いキーの部分は不要になります。

そして、使わないキーがあるのであれば、コンパクトなキーボードのほうがデスクを広く使えて、
「キーボード」と「マウス」の行き来の距離も短縮できます。

さらに、親指によるコントロールのしやすさが、ホームポジションをキープする鍵となります。
親指の置き場が不自然にならないよう「小さめのスペースキー」です。
私は「HHKB HYBRID Type-S 日本語配列」にたどり着きました。
皆さんも、自分の指に合うキーボードを探してみてください。きっと見つかるはずです。
まとめ
HHKBのミニマルなレイアウトと、AutoHotkeyの柔軟なカスタマイズを組み合わせれば、
「Enter・矢印・BS・Delのために手を動かす」 という無駄をほぼゼロにできます。
ホームポジションを崩さないことは、単なる効率化にとどまりません。
- タイピングのリズムが途切れない
- 指や手首への負担が減る
- 集中力を保ちやすい
というメリットがあり、長時間作業する人にとってはまさに革命的です。
あなたもぜひ「そのままにしているキー」を見直してみてください。
一度カスタマイズを体験すると、もう元の配列には戻れなくなるはずです。