過去に、グレイブキーをEscキーにして使い分ける投稿をしたが、まだ浅かったようだ。
そのため、もう少し踏み込む。
MacOSに対しても浅かったため、さらに踏み込む。
過去の検証は、タップでEscキーになり、GUIキーと組みあわせたときにグレイブキーになるというものだった。
WindowsOS:Ctrl+Shift+Esc
⇒タスクマネージャが起動する。
しかし、今回の設定を有効にしている場合、Escキーとして機能せず、タスクマネージャは動かない。
そのため、制限を掛けることが可能だ。
4種類ある。
- GRAVE_ESC_ALT_OVERRIDE:Altキー押下に限らずEscキー有効
- GRAVE_ESC_CTRL_OVERRIDE:Ctrlキー押下に限らずEscキー有効
- GRAVE_ESC_GUI_OVERRIDE:Guiキー押下に限らずEscキー有効
- GRAVE_ESC_SHIFT_OVERRIDE:Shiftキー押下に限らずEscキー有効
制限というのは、他で押している(GuiやShift)などに関わらず、Escキーとして動くようにする。
記載場所はご存じだろう。
#define GRAVE_ESC_GUI_OVERRIDE
KC_GESC
は、いつも通りに、keymap.cファイルだ。
GRAVE_ESC_ALT_OVERRIDE
これを定義しなくても起動していたウィンドウが次々入れ替わる。
これを定義したことで、何が変わったのかよく分からない。MacOS用か!?
GRAVE_ESC_CTRL_OVERRIDE
これを定義しなくてもCtrl+KC_GESCにて、Windowsメニューが開く。
これを定義したことで、何が変わったのかよく分からない。MacOS用か!?
取りあえず、Ctrl+Shift+KC_GESC
にて、タスクマネージャが起動するようになった。
GRAVE_ESC_GUI_OVERRIDE
この定義で、Guiキー+KC_GESC
にて、Escキーのままとなった。
ところで、`記号は、どのようにして打てばよくなるのだろうか・・・。
GRAVE_ESC_SHIFT_OVERRIDE
この定義で、Shiftキー+KC_GESC
にて、Escキーのままとなった。
~記号は、どのようにして打てば良くなるのだろうか。
そして、今回の定義によって、Ctrl+Shift+KC_GESC
の組合せからタスクマネージャが起動するようになった。
レディットからのコメント
ソースコードを読みさえすれば、挙動を確認できるとのこと。
MacOSでのバックティック
commands + `
の組み合わせは、"次のウィンドウにフォーカスを移動"するショートカットが割り当てられているため、今回のキーコードは使えない。
重要な注意点
レイヤー移動と合わせて使おうとした(LTなど)。
その場合、動かない。その辺は注意されたし。
原因は、今回の機能とは別の話になるのだが、レイヤー移動に設定できるキーコードは、決められている。
Basic Keycodes
この説明のなかに存在しないキーコードは設定しても無効化される。
感想
今回の検証は、WindowsOSでのみ試した。
MacOSやLinuxなどの他のOSでの挙動は分からない。
以上だ。