現在、最新のHappy Hacking Keyboard(HHKB) Professional HYBRID Type-Sと初代HHKBの2台使いの私ですが、気分で使い分けたり、古いパソコンやスマホ(iPhone/Android)でもHHKBを繋いで使ったりしていたら、キーボードのキーマップ(キー配列)を普段どうしておけば良いのか分からなくなり、全パターン調査しました。
このキーマップの悩みは「HHKBをiPhone/iPadの入力に使っている」または「HHKBの英語配列を持っている/購入しようか迷っている」という人に共通の問題で、調べていくとかなり深いです。
本記事では、HHKBの限られたキーをよく使うキーに割当てたいのに「設定方法が分からない」「うまく設定出来ない」というトラブルを解決する道標になるよう、具体的な設定事例を使って説明しています。
気になるトピックスをクリックしてお読みください。
キー配列のカスタマイズ
HHKBはキー配列設定に対する自由度の高いキーボードです。
例えば◇の付いたキーは使う人が使い方を決めて使う目的で存在しておりディップスイッチで設定変更可能です。
また公式ホームページにはキー配列変更用のツールが公開されています。
Happy Hacking Keyboard | HHKBキー配列切替ツール | PFU
そんな訳で、少ないキーでも何とかなる!というのが、このHHKBです。
キーマップをカスタマイズする時は以下の3つについて理解する必要があります。
- HHKB本体に設定を書き込む方法
- Windowsのレジストリ/ドライバをいじる方法
- 常駐型ソフトウェアに挙動を監視させる方法
1番は公式ホームページで公開されている「HHKBキーマップ切替ツール」です。
これについては「ツール編」で後述します。
2番と3番については、出来る事に限界があるので、それぞれの特徴を以下に説明します。
キーボード種別の設定
日本語配列のHHKBを使っている人であれば、ここで迷うことは無いのですが、英語配列のHHKBを購入した人はまず「Windowsのキーボード種別」設定でハマります。
「キーの刻印どおりに文字が入力できない!」というトラブルが起きることがあります。
Windows10の「キーボード種別」の変更の箇所は分かりにくいですね。
英語配列のHHKBを購入した人は、以下の手順で変更しましょう。
↓
↓
「時刻と言語」
↓
「言語」
↓
「日本語」のところを一度クリックしてから「オプション」をクリックします。
↓
「レイアウトの変更」
↓
「英語キーボード(101/102キー)」を選んで再起動
以上で英語配列の刻印どおりに打てるようになります。
この先で日本語のキー入力を設定する時に「日本語配列に戻したくなる」シーンがあるのですが、大丈夫です。刻印どおり打てる設定にしておくことがベストです!
これを行うことで英語配列キーボードのドライバが自動選択されます。
レジストリ変更の限界
HHKB Professional HYBRID Type-Sにはツールがあるのでキー配列はそれなりに自由に変更できます。
ところが初代HHKBにはそんな便利なツールはありませんので、購入当初から私はバリバリWindowsのレジストリをいじりまくっていました。
レジストリ変更は自信のある人なら自分でも出来ますが、keyswapなどのフリーソフトでも簡単に出来ます。
HHKBの昔からの愛用者なら、これらのレジストリを変更するツールは必ず使っています。
ところが先ほど「英語キーボード(101/102キー)」に設定したことによって、この101/102キーボードに存在しないキーは、レジストリを変更しても打てません。
無変換 | 変換 |
英数 | かな |
こんな感じで日本語入力に関係するキーがほとんど打てません!
回避策として公式ホームページではレジストリに101ではないキーマップを登録する裏技を公開しています。
左右◇キーを、無変換 / 変換に設定するにはどうすればよいですか。 | Happy Hacking Keyboard よくあるご質問
レジストリに「kbdlk41A.dll」という特殊なキーマップを登録しています。
「`」が打てなくなるという制限付きなので、私は最終的に使うのを止めましたが、初代HHKB時代はお世話になった裏技です。
では「どうするの?」という疑問に対しては、後の「キー別対処法」で解説します。
常駐型の限界
Windowsのレジストリをいじるのは素人にはちょっと恐いので、AltImeやAutoHotKeyなどの常駐型のフリーソフトを導入して、キーマップを変更する方法が人気です。
この方法は「簡単そうに見えて実は凄く難しい」という事を知っておく必要があります。
- CapsLockのような状態のON/OFFがあるキーは入れ替えられない
(レジストリの変更を併用すれば出来る) - 「押している事を感知する」キーと「押した瞬間を感知する」キーがあり、設定がマニアック
AltImeの場合、この欠点をカバーするために、カスタマイズできるキーを限定していましたが、2021年現在アップデートをしておらず、使えない状態です。
AutoHotKeyは現役のツールなので、後で詳しく解説します。
ここで覚えておいて欲しい事は、常駐型のソフトを入れても全てのキーをカバーできないという点です。
キーコード調査ツール
キーマップをカスタマイズする前に、是非揃えておきたいのが「今叩いたキーのコードを教えてくれるツール」です。
HHKBの場合、◇キーを押した時に送信されるキーコードが、HHKBの世代・HHKBのディップスイッチ位置・HHKBの設定によって、様々に変わります。
そのため、自分で押して、確認して、AutoHotKeyなどに反映する必要があります。
好みもあると思うので2種類ご紹介します。
Orakuin
Orakuinはマウスの位置を黄色くマーキングする為に多くの人が使っています。
マウスカーソルはよく背景に埋もれて見えなくなってしまいますが、Orakuinのマーカーは透明で目立つので、一度使うと手放せません。
そんなOrakuinに「キー入力可視化機能」というものがオマケで付いています。
常駐しているOrakuinのプロセスのアイコンを探し、
↓
右クリックすると以下のメニューが出てきます。
↓
こちらで「キー入力可視化」をチェックすれば、叩いたキーの機能またはキーコードを画面上に表示するようになります。
Orakuinの公式ホームページは以下にあります。
OrakuinはWindows11でも正常に動作しています
Keymill
Orakuinと違って、キーコードを調べる目的のみに作られたツールで、玄人向けです。
パソコンには「キーコード」の他に「スキャンコード」というものがあって、Keymillを使えば、その両方を表示してくれます。
AutoHotKey/ChangeKeyなどのツールを使う時に「スキャンコード」も分かった方が便利なので、このツールも私は併用しています。
注意点は「デフォルトが10進数表示になっている」ことです。
設定で「16進数表示に変更」してから使わないと、他のツールとの相性が悪いです。
他のツールは全て「16進数表示」だからです。
Keymillは以下の公式ホームページからダウンロードできます。
設定ツール
次はいよいよ設定ツールの説明です。
「ハードウェアに書き込むツール」→「レジストリをいじるツール」→「常駐型アプリ」の順に解説します。
HHKBキーマップ変更ツール
HHKB Classic以降の新しいHHKBで使える公式ツールです。
このツールの凄いところは、本体のファームウェアに設定を書き込んでしまう所です。
HHKB向けの設定を他のキーボードから入力する時に迷惑をかけないので、ノートパコソンにHHKBを繋いで使っている場合、HHKBを外しても混乱することなく使えます。
あとは「スマホへの入力時も設定が有効」である点は見逃せません。
私は、iPhoneへの文字入力にもHHKBを使っているので、このツールは大変重宝しています。
ツールを立ち上げて「キーマップ変更」→「アルファベット順」の順に画面遷移すると、このツールで設定可能な全てのキー種が表示されます。
- 「英数」「かな」キーも設定可能
- 「無変換」「変換」キーは設定出来ない
上記の特徴がありますので、要注意です。
HHKBキーマップ変更ツールは以下の公式ホームページからダウンロード可能です。
Happy Hacking Keyboard | ダウンロード | PFU
KeySwap
レジストリ変更ツールの王道がこの「Keyswap」です。
GUIで感覚的に設定出来るので、素人でも利用可能です。
私のパソコンのほとんどにKeySwapが入っていて「CapsLock」キーを「Cntrlキー」に変換してしまっています。
(HHKBを繋いでいない時も、小指の隣をControlキーにしておきたいからです)
レジストリによるキーマップ変更は「CapsLock」や「NumLock」のような状態を持つタイプのキーでも「完全にキーの役割を入れ替え」ることが可能な点が強みです。
初代HHKBのキーレイアウトをデザインする上では欠かせないツールです。
Windows10になった今でも、私はKeySwapのヘビーユーザです。
KeySwapは以下のVector公式ページからダウンロード可能です。
KeySwap for XPの詳細情報 : Vector ソフトを探す!
Windows10でも管理者モードで使えばKeySwapは問題なく使えますよ!
ChangeKey
KeySwapを使っても設定出来なかった時に補助的に使いたいのが、こちらのChangeKeyです。
ChangeKeyは、KeySwapでは扱っていなかった「スキャンコード」を読み込んで、対象のキーを他のキーに入れ替えることが可能です。
スキャンコードは16進数で4桁あり、キーコード(16進数で2桁)よりも機能拡張されています。
そのため、特殊なキーでも捉えて変更することが出来るそうです。
ただし、直接スキャンコードを設定ファイルに書くことは出来ないので、このツールの恩恵に預かる人は少ないかも知れません。
ChangeKeyは以下のVectorページからダウンロードできます。
Change Key キーボードのキーを変更の詳細情報 : Vector ソフトを探す!
AutoHotKey
AutoHotKeyは、Windows10でも使える常駐型のキーマップ変換ツールです。
「HHKBキーマップ変更ツール」でもレジストリ書替ツールでも解決出来ないキーマップの悩みを解決できる最後の砦となっています。
vkEB::Send,{vk1D}
vkE9 up::Send,{vk1D}
vkFF up::Send,{vk1C}
↑こんな感じのスクリプトを書いて、実行しておく必要があります。
スクリプトは呪文のようですが、基本的には誰かが作ったものを真似するのが良いと思います。
本記事の最後の方で使えそうなスクリプトを公開します。
スクリプト内で「up」と付いていたり付いていなかったりしますが、「キーを監視」するか「キーが押されたことを監視」するかの違いです。
最初は「up」無しで動くか試してみて、ダメだったら「up」付きにしてみるという試行錯誤をしながら使います。
vkXXが仮想キーコード、scXXXXがスキャンコードですが、私の今回のカスタマイズでは仮想キーコードだけで解決できました。
スキャンコードの方が難易度高めなので、使わずに済めばその方が良いです。
AutoHotKeyは以下の公式ホームページからダウンロード出来ます。
頻繁に更新されますので、最新版を使う事をお勧めします。
私の記事では「Version 1.1.33.08」を使っています。
AutoHotKeyはWindows11でも正常に動作しています!
キー別対処法
ここから具体的なキー設定をしていきます。
主に、HHKBの英語配列キーボードを購入した人向けのカスタマイズです。
Windowsキー
HHKBにはWindowsキーの刻印はありませんが、ディップスイッチで「Windowsモード」にし、それ以外をデフォルトのままにしておけば、「◇キー」が全てWindowsキーになります。
でも折角押しやすい場所にある「◇キー」を滅多に使わないWindowsキーにしておくのは勿体ないです。
そこで、左右◇キーは日本語入力用にカスタマイズし、「右Altキー」を「Windowsキー」にすることをお勧めします。
この変更は以下の方法で可能です。
HHKB最新機種の場合 → 「HHKBキーマップ変更ツール」で変更する
初代HHKBの場合 → 「KeySwap」でレジストリを書き換える
どちらもつまづく事は無い簡単な操作です。
GUIで出来ます。
「英数」「かな」キー
「英数」キーと「かな」キーは、もともと日本語配列キーボードでも単体ではそのキーは存在せず、他のキーとの組み合わせでしか出せません。
(これはWindowsの事情です)
ところがMacOSやiOSでは「英数」キー、「かな」キーがそれぞれ単独で存在することになっています。
そんな背景から、Windowsのキーコード一覧を見ても、「英数」キー単体と「かな」キー単体のキーコードは存在せず不定となっています。
HHKBは、Windowsの為だけにあるキーボードでは無いので、「英数」キーと「かな」キーは使えるようになっています(素晴らしい!)。
を使って、左◇キーを「英数」キー、右◇キーを「かな」キーにしましょう。
こうしておくと、HHKBをiPhone/iPad/Macに繋いだ時に、日本語の入力がめちゃくちゃ楽になります。
「無変換」「変換」キー
日本語配列キーボードには、「無変換」「変換」「全角/半角」という3つの独特のキーがあって、私のような「英語配列キーボード利用者」を困らせています。
しかし、日本語IMEの機能をもってすれば、日本語変換に使うキーは、2つもあれば十分です。
かくいう私は「無変換」キーをIMEのオン/オフに使っています。
Google日本語入力の
「プロパティ」→「一般」→「キー設定」→「キー設定の選択」
のところで、まず「ATOK」を選んでから、詳細なカスタマイズを行っていきます。
すると「無変換」キーに日本語入力の重要な動作のほとんどを任せる事が可能になります。
ここでは「無変換」と「変換」の2つのキーを打てるようにしましょう。
どちらも101/102キーボードには存在しないキーですが、仮想キーマップでは、
「無変換」キー | vk1D |
「変換」キー | vk1C |
このように定義されていますので、AutoHotKeyを使って、特定のキーを押した時に、この仮想キーが送信されるようにします。
左右の◇キーを「無変換」「変換」として使うAutoHotKeyのスクリプトは以下の通りです。
#InstallKeybdHook
#UseHook
vk1A::Send,{vk1D}
vk16::Send,{vk1C}
vkEB::Send,{vk1D}
vkFF::Send,{vk1C}
#UseHook off
;vk1A : Type-Sの英数キー
;vk16 : Type-Sのかなキー
;vkEB : 初代HHKBの左◇キー
;vkFF : 初代HHKBの右◇キー
;vk1D : 無変換キー
;vk1C : 変換キー
初代HHKBを繋いでも、最新のType-Sを繋いでも同じように「無変換」「変換」キーが打てるようになります。
この設定例ではType-Sの◇キーを既に「HHKBキーマップ変更ツール」で「英数」「かな」に変更済という前提です
オススメの設定
最後に使い方別のオススメ設定をご紹介します。
とくに前置きが無い場合は、Windows10のパソコンをメインで使っていて、HHKB Professional HYBRID Type-S(英語配列)を購入した人が、組み合わせとして他の端末や他の環境と共有して使いたい・・というシーンを想定しています。
Type-SではなくてもHHKB Classic以降の新しいHHKBをお持ちの方であれば、同じ設定で動きますよ!
iPhone/iPadの場合
iPhone/iPadでbluetooth接続でHHKBを使う場合のオススメの設定は、以下の通りです。
使うツール | 設定内容 |
HHKBキーマップ変更ツール | 左◇キー ⇒ 「英数」キー 右◇キー ⇒ 「かな」キー 右Altキー ⇒ 「右◇」キー |
この設定を行うことでiPhone/iPadで日本語が入力しやすくなります。
Windowsキーが無くなるとWindowsに戻った時に困るので、普段使わない右AltキーをWindowsキーにしています。
Window10に戻った時に、左右の◇キーを別の役割に使いたい場合は、AutoHotKeyを併用すると便利です。
詳しくは『「無変換」「変換」キー』の項をご覧ください。
Androidの場合
Androidをbluetoothで接続してHHKBで使う場合は、HHKB側に特別な設定は不要です。
使い方にコツがあるので以下のことを覚えておきましょう。
- 日本語と英語の切替には「Alt+`」のショートカットキーを使う
- F6~F9が日本語入力における便利キーになっているので日本語を入力しながら押してみよう
あとはAndroidのヘビーユーザであれば、購入する時に「日本語配列」を選んだ方が良いかも知れません。
(Androidに接続すると英語配列でも日本語配列と認識されてしまうため、刻印通りに打てません)
古いHHKBの場合
初代HHKBやHHKB Lite2などの古いHHKBをお持ちの方は「HHKBキーマップ変更ツール」を使えませんので、以下の設定組み合わせが便利です。
使うツール | 設定内容 |
KeySwap | 右Altキー ⇒ 右Winキー |
AutoHotKey |
|
この設定を入れておけば、左右の◇キーを「無変換」「変換」キーとして使え、代わりに右AltキーをWindowsキーとして使えるようになります。
Windows7の場合
Windows7の場合、何故か、AutoHotKeyの動作が、Windows10とは異なっていましたので、ひと通りのオススメ設定を公開します。
使うツール | 設定内容 |
HHKBキーマップ変更ツール | 左◇キー ⇒ 「英数」キー 右◇キー ⇒ 「かな」キー 右Altキー ⇒ 「右◇」キー |
KeySwap | 右Altキー ⇒ 右Winキー |
AutoHotKey |
|
上記の設定で「iPhone向け設定」と「初代HHKB向け設定」もカバーします。
使い方は同じで、左右◇キーが「無変換」「変換」キーになり、右Altキーを代替としてWindowsキーにしています。
国産ノートPCの場合
普段ノートPCにHHKBを繋いで使っている場合、そのノートPCを外で使う場合に、HHKBも一緒に持ち歩かないと、凄く使い辛いです。
そこで、最低限、ノートPC本体のキーボードでも「HHKB風」に使えるように、私はカスタマイズしています。
このカスタマイズのコツは「キーを相互に入替えない」「一方通行にキーを変更する」ということです。
例えば、HHKBのControlキーがCapsLockキーに入れ替わったら困るからです。
使うツール | 設定内容 |
HHKBキーマップ変更ツール | 左◇キー ⇒ 「英数」キー 右◇キー ⇒ 「かな」キー 右Altキー ⇒ 「◇」キー |
KeySwap | CapsLockキー ⇒ 左Ctrlキー |
AutoHotKey |
|
デスクトップの場合とほとんど変わりません。
ポイントは以下の2点です。
- CapsLockをControlキーに一方通行で変えている
- HHKB用にパソコンのキーボード種別設定を「101/102英語キーボード」に変更していることが原因で「無変換」「変換」キーが効かなくなっています。
それをAutoHotKeyの設定で回避しています(赤字部分)。
これでノートPC本体のキーボードを使っても記号以外は快適に打てます。
しばらくHHKBを繋がない場合は、キーボード種別の設定を「106/109日本語キーボード」に変更して使った方が使いやすいです。
海外ノートPCの場合
中国など海外メーカーが生産しているノートPCで「英語配列」を選ぶと「無変換」「変換」キーがありません。
そして代わりに押しやすそうな場所にあるのが「左Win」キーです。
そこで「左Win」キーを日本語IMEのオン/オフに使うキーにします。
ところがWindowsキーは特殊なキーなので日本語IMEでキー設定をWinキーに変えようとしても効きません。
代わりにダミーとして使うキーが必要になります。
ファンクションキーでも良いのですが、アプリによってはキー入力を奪われてしまいます。(Google Chromeはファンクションキーを奪いやすいです)
ダミーキーとして私がオススメするのは「Insert」キーです。
もはや刻印にも無いのに、英語配列キーマップに存在しています。
やや複雑になりますが設定は以下の通りです。
使うツール | 設定内容 |
HHKBキーマップ変更ツール | 左◇キー ⇒ 「英数」キー 右◇キー ⇒ 「かな」キー 右Altキー ⇒ 「右◇」キー |
KeySwap | CapsLockキー ⇒ 左Ctrlキー 左Winキー ⇒ Insertキー 右Altキー ⇒ 右Winキー |
AutoHotKey |
|
日本語IMEのキー設定 | InsertキーをIMEのオフ/オンに割り当てる |
注意点としては、HHKBを使う為の設定は上書きしてしまわないことです。
「右Win」キーの設定がぐるぐる回ってしまったり、「無変換」「変換」キーの動作設定を消してしまったりしないように気を付けましょう。
以上、HHKBの使い方別・キーマップ設定例をお届けしました。
HHKBは公式ツール以外にも必要なツールを重ね合わせて使いこなしましょう!
コメント
こんにちは、Ubuntu20.04 HHKlite2 を使っています。
HHKBでは刻印どうりに打てないことがありました。しかし
Ubuntuインストールのとき、キーボードレイアウトの設定
で「US」を選択しなかったためとわかり解決しました。
(何回もインストールしなおしましたが):::
解決して良かったですね。
Ubuntuの場合はインストール後でも
sudo dpkg-reconfigure keyboard-configuration
を実行することでキーボードレイアウトは変更出来るようです。
参考まで!