MacでRealforce US配列キーボードを快適に使うKarabinerの設定
静電容量無接点のRealforceキーボードが大好きです。シュコシュコ音と打鍵感が良いリズムを作ってくれるので非常に心地が良いです。 そして同じくらいMacも好きなので、RealforceをMacで使うのですが、Macの場合commandキーを多用するので、打っていて親指の腱の辺りが痛くなってきました。 以下、この腱の痛みを解消しつつ、MacでRealforceを快適に使うための模索です。
前置き
Realforce US配列のキーボード配列はMac純正のUSキーボードに比べ以下の点が異なります。
- スペースバーが長い
- スペースバーの両隣がAltキーとして、さらにその外側がCommandキーとして、認識される
問題
スペースバー両隣のキー(Alt)ですが、このキーはMac純正のレイアウトに近づけるために、Karabinerを使ってCommandキーに割り当てています。 ですが、以下のシーンでの利用により頻度高く親指で押していた結果、親指の腱が痛くなってきました。
-
日英言語切り替えのため
- Karabinerの便利設定で「Commandキーを単体で押したときに、英数・かなキーを送信する」があり、これを使うと、 日英言語切り替え時にこのキーを酷使します。
-
各種ショートカットのため
- テキスト編集での、コピー(Command+C)、ペースト(Command+V)、保存(Command+S)
- Chromeでの、新規タブ(Command+T)、タブ削除(Command+W)、検索(Command+F)
コピペする時は、下図のようにホームポジションから親指をグっと折りたたむので腱が伸びきって痛くなってきます。
やりたいこと
- Macのキー配列からなるべく変えたくない
- 親指でのAltキー押下頻度を下げたい
Karabinerのカスタム設定
以下のようにキーマップを変えました。
- Commandキーの代わりにSpaceキーを使う
- 英語への切替えのために、Caps Lockキーを使う
最近のKarabinerは親切なWeb上での編集機能を提供してくれています。
注意点として、日本語向けのかな・英数のKeyCodeがGUI上では選べませんでした。
ので、JSONを直接いじる必要があります。それぞれのKeyCodeは以下です。
- かなキー: “japanese_kana”
- 英数キー: “japanese_eisuu”
1. Spaceキーの設定
単体押下時はスペースキーとして、他のキーと合わせて押した場合はCommandキーとして、動くように設定しました。いわゆるSandSのCommandキー版です。
ミソは2点。
- “basic.simultaneousthresholdmilliseconds”を極限まで短くする
これが長いと誤動作する事が多かったです。 -
toifheld_downでもCommandキーを指定する
自分の打ち方の場合、Commandキーを押してから「合わせて押すのはどのキーだっけ?」と一瞬考える事があり、この一瞬で半角スペースが延々入力されることをこの設定で防ぎます。{ "title": "change spacebar", "rules": [ { "description": "change spacebar to right_gui when pressed with any buttons, post spacebar when pressed alone", "manipulators": [ { "type": "basic", "from": { "key_code": "spacebar", "modifiers": { "optional": [ "any" ] } }, "parameters": { "basic.simultaneous_threshold_milliseconds": 5 }, "to": [ { "key_code": "right_gui", "lazy": true } ], "to_if_held_down": [ { "key_code": "right_gui" } ], "to_if_alone": [ { "key_code": "spacebar", "repeat": false } ] } ] } ] }
2. Caps Lockキーの設定
Caps LockキーはControlキーに割り当てる事が多いですが、単体押下時は日英言語の英語への切替えに割り当てました。これで左Altキーの利用頻度を下げられます。
{
"title": "change caps_lock",
"rules": [
{
"description": "change caps_lock to left_control when pressed with any buttons, post Japanese-eisuu when pressed alone",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "caps_lock",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "left_control",
"lazy": true
}
],
"to_if_held_down": [
{
"key_code": "left_control"
}
],
"to_if_alone": [
{
"key_code": "japanese_eisuu"
}
]
}
]
}
]
}