カワハラの、雑多な記録。

Onenoteアウトライン機能をKeyhacで10倍使いやすくする方法(Windows編)

      2019/06/27

Onenote_icon

Onenoteのアウトライン機能は超便利なわけですが、ひとつ欠点があります。
それはOnenoteのアウトライン機能はショートカットキーが使いにくいと言うこと。
しかも、Onenoteはショートカットキーの変更ができない。

Alt + Shift + 1(テンキーじゃない方の1)
Alt + Shift + -(テンキーじゃない方のマイナス)
こういったショートカットをよく使うわけですが、”1″はキーボードの左の方、”-“は右の方にあります。
つまり”Alt + Shift”を押すのも右手だったり左手だったりでパニックになります。

ショートカットキーの変更さえ出来ればある程度解決できるのに…
と考えたところで出来ないものは出来ないので、他の方法を考える必要があります。
ということで今回は、実際に私がやっている解決方法を紹介したいと思います。

ちなみにWindowsデスクトップ版のOnenote向け、しかもかなりマニアックで面倒くさい内容ですのでご了承ください。

Keyswapで変換キーとCapsLockキーを入れ替え

細かい説明は後でするとして、まずはやり方の説明から。

下準備として、キーボード上の変換キーとCapsLockキーを入れ替えます。
つまり、キーボードのCapsLockキーを押した時Windowsに「変換キーが押された」と思ってもらうための設定です。

レジストリを直接いじっても出来るみたいですが、Keyswapと言うフリーソフトを使えば簡単です。

Keyswap

このように設定してWindowsを再起動させれば、CapsLockキーを押したときは変換キーを、変換キーを押したときはCapsLockキーを押したとWindowsが認識します。

Keyswapのダウンロードはこちら

Keyhacで希望の動作にカスタマイズ

Keyhacをインストールし、設定ファイルである”config.py”に下記を書き加えます。


    # キーの単純な置き換え
    #変換キー(28)を仮想キーコード235に割り当て
    keymap.replaceKey( "(28)", 235 )

    # ユーザモディファイアキーの定義
    # 仮想キーコード235をユーザーモディファイア0番に割り当て
    keymap.defineModifier( 235, "User0" )

    #変換キーワンショットモディファイアで半角/全角(IMEのon/off)
    keymap_global[ "O-235" ] = "243"

    #シフト+変換キーでCapslock
    keymap_global[ "Shift-235" ] = "CapsLock"

    # USER0-Shift-←→ : Alt+Shift+-(マイナス)、Alt+Shift+0(Onenoteでアウトラインの折りたたみ、展開の動作) 
    keymap_global[ "U0-Left"  ] = "A-S-Minus"
    keymap_global[ "U0-Right"  ] = "A-S-0"
    keymap_global[ "U0-Down"  ] = "A-S-Down"
    keymap_global[ "U0-Up"  ] = "A-S-Up"
    # Onenoteでレベル指定度折りたたみ/展開用
    keymap_global[ "U0-1"  ] = "A-S-1"
    keymap_global[ "U0-2"  ] = "A-S-2"
    keymap_global[ "U0-3"  ] = "A-S-3"
    keymap_global[ "U0-4"  ] = "A-S-4"
    keymap_global[ "U0-5"  ] = "A-S-5"
    keymap_global[ "U0-6"  ] = "A-S-6"
    keymap_global[ "U0-7"  ] = "A-S-7"
    keymap_global[ "U0-8"  ] = "A-S-8"
    keymap_global[ "U0-9"  ] = "A-S-9"
    keymap_global[ "U0-0"  ] = "A-S-0"
    keymap_global[ "U0-Minus"  ] = "A-S-Minus"

各場所は、ファイルの末尾で良いかと思います。
各行の先頭にスペースが4個ありますが、このスペースは重要ですので、そのまま貼り付けてください。
このファイルはPythonと言う言語で書かれているんですが、Pythonでは行頭のスペースやタブでブロックを表します。

ファイルを編集して保存したら、タスクバーのKeyhacのアイコンを右クリックし”設定のリロード”をクリックします。

Keyhacのダウンロードはこちら

この設定でどうなる?

アウトラインを設定したOnenoteの見出し行にカーソルを持っていき、
“CapsLock + ←(カーソルキーの左)”を入力すると、
“Alt + Shift + -“が入力されたことになります。
Onenotedeで”Alt + Shift + -“はアウトラインの折りたたみのショートカットなので、アウトラインが折りたたまれます。

Onenote_Outline_anim

ちなみにこの記事で「CapsLockキーを押す」と書いた場合は、キーボードの「Caps Lock」と印刷されたキーを押すことを意味することにします。
KeyswapでCapsLockと変換キーを入れ替えたので、CapsLockキーを押した時にWindowsでは変換キーが押されたと認識されています。

まとめると
キー入力|Onenoteの動作
-|-
“CapsLock + 1” | 1レベルまで表示
“CapsLock + 2” | 2レベルまで表示
“CapsLock + 3” | 3レベルまで表示
“CapsLock + 4” | 4レベルまで表示
“CapsLock + 5” | 5レベルまで表示
“CapsLock + 6” | 6レベルまで表示
“CapsLock + 7” | 7レベルまで表示
“CapsLock + 8” | 8レベルまで表示
“CapsLock + 9” | 9レベルまで表示
“CapsLock + 0” | 全レベル表示
“CapsLock + -” | 折りたたみ
“CapsLock + ←” | 折りたたみ
“CapsLock + →” | 全レベル表示
“CapsLock + ↑” | 現在の行を上へ移動
“CapsLock + ↓” | 現在の行を下へ移動

解説

上記の設定が何を意味するのか、簡単に解説したいと思います。

なぜ変換キーとCapsLockキーを入れ替えた?

最初にKeyswapで変換キーとCapsLockキーを入れ替えました。
なぜこんなことをしているかというと、Keyhacの設定によりCapsLockキーをモディファイアキー(修飾キー)として使いたかったんですが、本来のCapsLockキーに直接指定してもなぜか動作しませんでした。
その為、わざわざKeyswapをしようして変換キーとCapsLockキーを入れ替えた上で、変換キーをモディファイアキーとして使用したわけです。

Keyswapはレジストリを変更することでキーの入れ替えをするため、一度設定すればKeyswapを立ち上げておく必要はありません。

ではなぜCapsLockキーにこだわったかというと、キーボード上でCapsLockキーってすごく良い位置にあるからです。
左手の小指を一つ左にずらすだけの、すごく押しやすいところに所在しています。
頻繁に使うショートカットキーのために利用するのに最適だと思い、ぜひCapsLockキーを利用したい!と思ったからです。

個人的に変換キーは全く使っていないので、変換キーに犠牲になってもらいました。
今回の設定をすると変換キー本来の動作は出来なくなります。

べつにCapsLockキーじゃなくていい場合は、Keyswapでキーを入れ替えたりしなくて済む可能性が高いです。

Keyhacによるショートカットキーの設定

Keyhacと言うソフトはそもそも何をするものかというと、あるキーを押した時に違う動作を設定したり出来るものです。
極端な設定ですが、”A”を押したら”B”と入力させる事も出来ます。

今回の設定ではCapsLockをモディファイアキー(修飾キー)として設定しました。
モディファイアキーとは、そのキーを押しながら他のキーを押すことで特定の動作をすると言うもの。
Windows標準でCtrl + Aで全選択となりますが、この場合のCtrl(コントロール)キーが修飾キーです。

今回はCapsLockをモディファイアキーにしたので、CapsLockを押しながら”1″や”←”を押すことで様々な動作をさせられます。

先程もちらっと書きましたが、
“CapsLock + 1″の入力が”Alt + Shift + 1″に変換されます。
“Alt + Shift +1″はOnenote標準のショートカットキーで「レベル1まで表示」となります。

まとめ

この設定で、Onenoteが(個人的に)10倍使いやすくなりました。
Onenoteのショートカットキーが自由に設定できるようになればベストですが、現状ではこれが精一杯です。

Keyhacと言う素晴らしいソフトを作ってくれた作者さんに感謝します。

 - PC, ガジェット