Windows上でHHKBをMac風に使う設定 (US配列編)

背景

新しいMacbook Proが発表されてから久しいですが、買い替えと共にキー配列もUS配列に移行してしまうか検討を進めていた中、ふと、Macbookよりもキーボードの方が気になってきてしまい、先日遂にHHKBを購入してしまいました。 Professional HYBRID Type-SのUS配列無刻印モデルです。
私は、普段は自作デスクトップPCのWindowsで作業をしており、ノートPCはiOSアプリ開発用にMacbook Proを使っています(というよりMacを選ばざるを得ないです)。この組み合わせでPCを使い分けている方、意外と多いのではないでしょうか。

HHKBはキー配列が良くも悪くも特殊で、一度癖がついたら抜け出せないキーボードとよく言われています。きっと慣れきってしまうと他のキー配列では著しくパフォーマンスが下がってしまうのでしょう。。
Macbook単体使用時のタイピングに支障が出すぎてしまうのも考えものです(いわゆる尊師スタイルで解決する手もありますが)。


そこで、これを機にHHKBのキー配列をMacのキー配列になるべく近づけ、デスクトップWindows使用時でも統一的な運指でタイピングできるよう、HHKBの設定を検討しました。
今回の記事ではそのWindows向けのHHKBの設定をまとめます。同じようなWin-Mac両使いの方の参考になりましたら幸いです。

ちなみにですが、実は結局Macbook Proはまだ購入していなくJIS配列のままです。なのでMacのUS配列に近づけるよう設定はしていますが、未検証ですのでその点ご容赦ください。いずれUS配列を買うので、その際に見直すための自分用のまとめ記事でもあります。

概要

今回の設定で使用するツールはHHKBのキーマップ変更ツールとAutoHotkeyのみです。
必要なツール・設定ファイルへのリンクを貼っておきます。
Happy Hacking Keyboard キーマップ変更ツール
AutoHotkey (日本語wikiはこちら)
AutoHotkey用設定ファイル(.ahkファイル)

設定のポイントは下記です。この設定だと、HHKBのハードウェア側でほとんどが実現でき、AutoHotkeyに依存しているのは2のIME切り替えのみです。そのため、AutoHotkeyが無い環境に繋いで使うことになっても使用感を維持できるはずです。

1. MacのCommandに相当するWindowsのCtrlをスペース左右に配置
2. 左右のCtrlの単押しで英数/日本語入力の切り替え (AutoHotkeyで実現)
3. Aの左にはFnを割り当て、Macのカーソル移動ショートカットControl + n,p,b,fなどを再現

言葉で説明するよりも見たほうが早いですね。上記以外の変更(Winキーなど)も確認できると思います。

細かい説明など

1. MacのCommandの位置にWindowsのCtrl

Macbook ProのUS配列を見てみるとわかりますが、スペースの横にCommandが配置されています。
Commandはコピー・アンド・ペーストなどの作業で非常によく使用するので、Windows使用時もこの配置慣れておいたほうが良いと思い、Ctrlを配置しました。
Macbook Pro 2020 13inch のUS配列。画像はApple公式サイトより引用。
HHKB Professional HYBRIDシリーズのデフォルトUS配列。画像は工場出荷時の状態をキーマップ変更ツールで再現してスクリーンショットを撮影。

2. 左右Ctrlの単押しで英数・ローマ字入力の切り替え(IMEの切り替え)

US配列Macで日本語を使用する場合、多くの方がCommandの単押しで英語/日本語を切り替えているようでした。この動作をWindowsでも再現するためにAutoHotkeyを使用しました。設定ファイルは下記ページにアップロードしてあります。

https://github.com/Miraium/ctrl-ime-ahk

この設定は、フォーク元であるmoremorefor様のctrl-ime-ahkをベースにほんの一部だけ追記したものです。
よく単語単位の削除でCtrl+Backspaceを使用するのですが、元の設定だと単語削除後にもCtrlの単押しとして認識されてしまいIMEが切り替わってしまったため、それを防ぐよう1行だけ追記しました。
また、日本語入力途中に誤ってLCtrlを押してしまうとIMEの挙動がおかしくなるため、日本語入力途中に押されても無視する設定を追加しました。

なお、AutoHotkeyが使えない状況でのIMEの切り替えはAlt + `で可能です。
(参考 – Happy Hacking Keyboard よくある質問) 英語配列キーボードで英語配列キーボードで、日本語を入力するには? (英語 ←→ 日本語入力の切り替えは?)

3. Macのカーソル移動ショートカットの再現

HHKBのUS配列モデルにはカーソルキーが存在しません。デフォルト設定では、右下のFnキーを押しながらEnter付近のキーを使ってカーソル移動するようになっていますが、なかなか慣れませんでした。

Macにはカーソル移動系のショートカットキーが用意されており、ホームポジションから大きく指を動かすことなくカーソル移動ができるのは魅力的です。これを機に慣れてしまおう、と再現することにしました。
なお、US配列のMac側は設定でCaps lockControlを入れ替えて使用する想定です。
キー組み合わせ発動キー(参考) Macキーショートカット
Fn+bLeft (左矢印)Control+b
Fn+fRight (右矢印)Control+f
Fn+pUp (上矢印)Control+p
Fn+nDown (下矢印)Control+n
Fn+dDeleteControl+d
Fn+hBackspaceControl+h
Fn+aHomeControl+a
Fn+eEndControl+e

まとめ・その他メモ

購入してから約3週間ですが、結構お気に入りの設定を実現することができました。
Winキーの位置やAltキーの位置にはまだ悩みが少しありますが、今のところ快適です。

最後に、HHKB導入に関しては検討段階から運用まで、色々と考えたところがあったので、その時のツイートを時系列順に並べてメモとして締めたいと思います。ありがとうございました。

以下は、Twitterのモーメントにもまとめてあります。
https://twitter.com/i/moments/1284802310636367872

Visual Studio CodeのPython開発環境でオートコンプリートを有効化する

概要

Visual Studio Code(VSCode)でPythonのプログラムを効率良く書きたい、という時のためのちょっとしたTipsです。
プログラムを書く上で、特に使用ライブラリの関数名やその引数は覚えきれず、いちいち調べるのは非常に手間です。オートコンプリート機能を有効化して上げると、こうした問題が解決してプログラムを書くのが非常に快適になります。
OpenCVやNumpy、Matplotlibなどの代表的な外部ライブラリでもオートコンプリート機能を使える方が望ましいですが、このあたりまで細かく書いている記事がWeb上でパッと見当たらなかったため、調査・試行錯誤して使えるようにしました。
“Visual Studio CodeのPython開発環境でオートコンプリートを有効化する” の続きを読む

Anaconda on MacにKivyをインストールして動作確認

概要

Kivyは、オープンソースのPythonのUIライブラリ。
クロスプラットフォームに対応。Android、iOSを含むマルチタッチも提供しているみたいです。
Kivy: https://kivy.org/#home

今回は、Anacondaを使って仮想環境を作り、その中にKivyをインストールして動作確認してみました。
今回の動作確認では、公式ページトップにあるサンプルコード(helloworld.py)を実行して、GUIウィンドウを表示させてみました。

# helloworld.py

from kivy.app import App
from kivy.uix.button import Button

class TestApp(App):
    def build(self):
        return Button(text='Hello World')

TestApp().run()

“Anaconda on MacにKivyをインストールして動作確認” の続きを読む