この記事は、Karabiner-Elements アドベントカレンダー 2023 の7日目の記事です。
昨日は「MacのJIS配列が真価を発揮する! Karabiner-Elementsを使った最強で無敵の設定《 キーマップ概説 》」という記事でした。
今日の記事はその続きです。昨日ご紹介した設定を「さらに使いこなすコツ」をお伝えします。
はじめに
この記事は、Mac の Karabiner-Elements での、Advanced Keymap for JIS Keyboard: Project “UTILITY”(以下、Advanced Keymap “UTILITY” と書きます)という設定を用いた JIS 配列キーボードのカスタマイズについて、2部構成で解説する記事の第2部です。
前回の第1部では、Advanced Keymap “UTILITY” で使えるキーマップを概説しました。
第2部の今回は、前回割愛した、修飾キーとの組み合わせやその運指などの、細かな使いこなし方について解説していきます。
1. 単押し/長押し
まずは、単押し/長押し の機能を使いこなすためのコツです。
⌘の単押しにのみ Enter を割り当てる設定などは、見たまんま(強いて言えば、「セミコロン」の長押しに Control を割り当てる設定は、Emacs 風キーバインドと組み合わせることで効果が倍増します)なので、ここでは Space/Shift を解説します。Space/Shift は、Space バーを、単押しでは Space、長押しでは Shift として使えるようにする機能です。
ここで1つ問題があります。Space の長押しを Shift に割り当ててしまったがために、Space の繰り返しを入力できないという問題です。
これが困るのは、例えば日本語を変換する際に、長押しで変換候補を下に移動していくことができないということ。また、Miro や Adobe などのソフトウェアなどで、Space の長押しに機能が割り当てられている(例えば手のひらツール)場合、それも使用できなくなってしまうという点です。
Karabiner-Elements のデフォルトから入っている「Change spacebar to left_shift. (Post spacebar if pressed alone)」という設定だと、それに対する解決策は提示されていませんが、この「Advanced Keymap for JIS Keyboard: Project “UTILITY”」における Space/Shift の設定では、解決策として Quick Tap という機能が搭載されています。
Quick Tap とは、「一度キーを押下して離した後に、間髪入れずにすぐさまもう一度キーを押下し、そのまま保持する」ことを指します。したがってこの設定では、「一度 Space バーを押下して離した後に、間髪入れずにすぐさまもう一度 Space バーを押下し、そのまま保持する」ことで、Space の繰り返しを入力できるようになります。
ただ、一方この Quick Tap にも欠点があり、Space バーを単押しした後に、素早く Space の長押しで Shift の機能を使おうとすると、Space の繰り返しを入力してほしくないのに、逆に Space が連続で入力されてしまいます。
なので、Space バーの長押しの機能を使わない場合は、むしろ Quick Tap の機能が搭載されていない、デフォルトから入っている「Change spacebar to left_shift. (Post spacebar if pressed alone)」という設定の方を推奨します。
このように、Space/Shift(一般には Space and Shift、SandS と呼ばれます)の設定は、少しクセが強いですが、ホームポジション親指で Shift を使えることのメリットが非常に大きいため、個人的にはオススメです。
また、「Space の長押しで Space を繰り返し入力する」ための解決策は、他にもありますので、その方法は後日のアドベントカレンダーでご紹介します。
2. カーソル移動
次にカーソル移動の機能を使いこなすためのコツです。
この設定だけでも、ホームポジションでカーソル移動が可能になるため重宝しますが、修飾キーと組み合わせて使うことで、より自由自在にカーソルを動かせるようになります。
Mac のショートカットキーを使いこなしている方からすると、「なぜデフォルトの Emacs 風キーバインドを使用しないのか」と思われるかもしれません。
これは、「私が Vimmer だから」というわけではありません。
Mac デフォルトの Emacs 風キーバインドには2つの弱点があります。1つは、文字入力領域以外で使えないこと。これでは Finder などで項目を選択するときに困ります。
2つ目は、Emacs 風キーバインドでは Control(⌃)キーが占有されてしまうため、⌃カーソル というショートカットキーが使えないということです。
例えば、Mac では ⌘→ で End のショートカットキーになりますが、これを Emacs 風キーバインドを使って打とうとすると、⌘⌃F となってしまいます。そしてこれは、「全画面表示」のショートカットキーとバッティングしている(しかも、これはあくまで一例に過ぎない)のです。
つまり、Emacs 風キーバインド をカーソルキーとして設定してしまうと、他のデフォルトのショートカットキーを上書きしてしまう恐れがあり、それを避けるために、親指ホームポジションの「英数」キーをレイヤーキーとして、英数+HJKL でカーソル移動となるように設定しています。
単語移動と選択
まず単語移動。デフォルトの単語移動は、左右それぞれ ⌥← と ⌥→ です。
ここに、英数+HL(← →)を用いることで、⌥ 英数+HL となり、よりホームポジション付近で単語移動が可能となります。
想定運指は、左親指で「英数」キー、左小指で⌥キー。H と L は標準運指のままです。
また、さらに Space/Shift を組み合わせることにより、単語選択も可能となります。
想定運指は、単語移動の指に加えて、右親指で Space バーを押下します。
行頭・行末への移動と選択
次に「行頭・行末への移動」です。デフォルトでは、左右それぞれ ⌘← と ⌘→ に割り当てられています。
ここに、英数+HL(← →)を用いることで、⌘ 英数+HL となり、よりホームポジション付近で行頭・行末への移動が可能となります。ちなみに、Emacs 風キーバインドの ⌃A と ⌃E は、段落頭と段落末への移動なので、微妙に挙動は異なります。
想定運指は、左親指で「英数」キー、左小指で⌘キー。H と L は標準運指のままです。
また、さらに Space/Shift を組み合わせることにより、「行頭・行末までの選択」も可能となります。
想定運指は、行頭・行末への移動の指に加えて、右親指で Space バーを押下します。
PageDown と PageUp
さらに、Advanced Keymap “UTILITY” では、ホームポジション付近での PageDown と PageUp も設定されています。デフォルトでは、それぞれ Fn↓ と Fn↑ に割り当てられています。
これに対しては、「かな」を押しながら、英数+KJ(↓ ↑)を用いる、つまり かな+英数+KJ によって、それぞれ PageDown PageUp となり、よりホームポジション付近での PageUp と PageDown が可能となります。
想定運指は、左親指で「英数」キー、右親指で「かな」キー。J と K は標準運指のままです。
また、これに 左Shift を組み合わせることにより、ページの選択も可能となります。
想定運指は、ページ移動の指に加えて、左小指で 左Shift を押下します。他にも運指は考えられますが、恐らくこれが最もとっつきやすいと思います。
ちなみに、⌘↓ と ⌘↑ を使うと、ウェブページやドキュメント全体の末尾まで移動できます(もちろん⇧を組み合わせれば選択になる)。これも類似の運指で可能なので、ますます重宝するでしょう。
以上が、Advanced Keymap “UTILITY” のカーソル移動を使いこなすコツでした。
カーソル移動、単語移動、行頭・行末までの移動、ページ移動。そしてそれぞれの選択。これらがホームポジション付近で可能になるだけでも、例えばテキスト編集の操作性は格段に向上します。
ぜひ、使いこなしてみてください。
3. 特殊キー
次に特殊キーの機能を使いこなすためのコツです。
Enter(英数+N)、Escape(英数+E)、Tab(英数+T)、⇧Tab(英数+R)などは、見たまんま(強いて言えば、キーボードナビゲーションを覚えることで効果が倍増します)です。
なので、ここでは Delete(英数+D)、Forward Delete(英数+F)を解説します。それぞれ頭文字がショートカットキーになっていて、⌫ と ⌦ の機能を持ちます。
単語削除
まず単語削除。デフォルトの単語削除は、左右それぞれ ⌥⌫ と Fn⌥⌫(または ⌥⌦) です。
ここに、英数+DF(⌫ ⌦)を用いることで、⌥ 英数+DF となり、よりホームポジション付近で単語削除が可能となります。
想定運指は、左親指で「英数」キー、左小指で⌥キー。D と F は標準運指のままです。
行頭・行末までの削除
次に「行頭・行末までの削除」です。デフォルトではそれぞれ、⌘⌫ と ⌃K に割り当てられています。
ここに、英数+DF(⌫ ⌦)を用いることで、⌘ 英数+DF となり、よりホームポジション付近で行頭・行末までの削除が可能となります(と言いつつ、個人的には ⌃K の方が押しやすい気がします)。
想定運指は、左親指で「英数」キー、左小指で⌘キー。D と F は標準運指のままです。または、左⌘を使うのもいいかもしれません。
以上が、Advanced Keymap “UTILITY” の特殊キーを使いこなすコツでした。
カーソル移動と比べると出番は少ないですが、単語削除がホームポジション付近で可能になるだけでも、やはりテキスト編集の操作性は格段に向上します。
ぜひ、使いこなしてみてください。
4. 数字と記号
最後は数字と記号の機能を使いこなすためのコツです。つまり「かな」キーを押している間のキーマップです。
単純な数字や記号の入力以外では特に、⌘キーとの組み合わせが有用です。
それぞれの使いドコロをご説明します。
スクリーンショット
まずは、スクリーンショットです。デフォルトのスクリーンショットは、全画面、矩形(ウィンドウ)選択、スクリーンレコーディングの3種類があり、それぞれショートカットキーは ⌘⇧3、⌘⇧4、⌘⇧5 です。
ここに、かな+ERT(⇧3、 ⇧4、 ⇧5)を用いることで、⌘ かな+ERT となり、より使う指も少なく、ホームポジション付近で、スクリーンショットが可能となります(ただし片手ではできないので、そこはトレードオフ)。
想定運指は、右親指で「かな」キー、左親指で⌘キー。E と R と T は標準運指のままです。
タブ移動など
次に、タブ移動などです。
1つ前のスクリーンショットでは、「かな」キー + ホームポジションの1つ上の行 が、⇧数字 に設定されていることを利用しました。
しかし、⇧のいらない単純な数字をショートカットキーとして使いたいときもあります。そこで、「かな」キー + ホームポジション にて数字を入力できることを利用します。
ここでは、ブラウザのタブを1・2・3番目に切り替える、⌘1・⌘2・⌘3 というショートカットキーを例に挙げます。
想定運指は、右親指で「かな」キー、左親指で⌘キー。A と S と D は標準運指のままです。
拡大縮小
次に拡大縮小です。デフォルトでは、⌘+(または ⌘⇧ ; )で拡大、⌘– で縮小、⌘0 で倍率100%に割り当てられていることが多いです。
ここに、かな+PO ; を用いることで、⌘ かな+PO ; となり、ホームポジション付近で、拡大縮小が可能となります。
想定運指は、右親指で「かな」キー、左親指で⌘キー。P と O と ; は標準運指のままです。
以上が、Advanced Keymap “UTILITY” の拡大縮小の機能を使いこなすコツでした。
出番は少ないですが、それなりに有用だと思いますので、使ってみてください。
引用符
最後は引用符です。デフォルトでは、⇧2 で "
、⇧7 で '
です。
Advanced Keymap “UTILITY” では、これらの引用符は、入力方法が複数用意されています。その中でオススメなのは、それぞれ最も楽に片手で入力できる、英数+W で "
、かな+U で '
です。
もちろん、かな+W で "
や、英数+Q で '
を入力した方が手に馴染む場合は、そちらを使用するのもアリです。もしくは 英数+U で "
もよい( かな+U が '
なので、組み合わせて覚えると吉)でしょう。あなたにしっくりくる、覚えやすい運指を、探してみてください。
それにしても、JIS 配列でも US 配列でも、あまり「引用符を片手で押しやすく」といったことは考慮されていませんね。強いて言えば、JIS 配列は "
が比較的片手で押しやすく、US 配列は '
が片手で押しやすいでしょうか。
以上が、Advanced Keymap “UTILITY” を使いこなすコツでした。
どれも細かい話なので、まずは前回の記事で紹介した、修飾キーを使わない場合のショートカットキーを覚えて、それからさらに使いこなしたいときに、参考にしてみてください。
これらの設定を充分に使いこなせると、表計算ソフトなどにおける数多のカーソル移動ショートカットキー(この記事で紹介しなかったものも含め)であっても、この Advanced Keymap “UTILITY” のキーマップだけで快適に作業できるようになり、しかも、その操作性は向上します。
ぜひ、身につけてみてください。
おわりに
Karabiner-Elements アドベントカレンダー 2023 の7日目の記事はここまでとなります。
明日は、今週のまとめ記事です。また、来週からはとうとう、実際に JSON を書いて Karabiner-Elements を設定する方法について、順を追って少しずつ解説していきます。お楽しみに!
この記事に書かれた内容の実行および設定の使用は、すべてご自身の判断で行ってください。
万が一、不具合や損害が生じた場合であっても、執筆者は一切の責任を負いかねますことをご了承ください。