Keyhacでキーバインドをカスタマイズ
Keyhacは、Pythonを使用した、キーボード操作やキーバインドなどを変更、設定できるソフトです。
Pythonを使用すると高度なカスタマイズも出来るようです。自分は出来ませんが。
簡単なキーバインドならば、初期設定を見ながらなんとなく設定できると思います。
以前から、Windowsキーを殆ど使わないので勿体無いなーと思っていたので、他の用途に使えるように設定しました。
ソフトによっては、うまく動かなかったり、一部だけ動いたりするので注意です。
環境
- Windows7 64bit
- Keyhac 1.70
- Apple Wireless Keyboard (US)
基本的に、Windosキーは、親指で押しています。
CapsLockキーと右Windowsキーをそれぞれ変更
CapsLockキーのCtrl変更は、KeySwap for XPで、レジストリ変更して適用しています。レジストリ変更が無難です。
CapsLockをLCtrl
へ。RWinをRCtrl
に代えます。RCtrlに変更するのはKeyhacでもいいです。
RWinは使っていないので、RCtrlにすると使える用途があると思います。
また、RCtrlは下記設定の一部しか重複しないので、他で使える場面が出てくるかなと思います。
Windowsキー + L (コンピューターをロック)を無効にする
KeyhacでWin-L
を上書きし切れなく、設定されたものが実行された後に、コンピューターがロックされます。
非常に不便で、暴発すると困るので無効化します。
ブログのヒント: ワークステーションをロックする機能を有効/無効にすると(Windows + L)
regファイルも配布されていますので、保存しておくと便利だと思います。
設定補足
テキストエディタやフォントなどの設定は、自分の環境に合わせて下さい。
それなりにキーバインドを追加しているので、長いと思います。
クリップボード履歴機能の無効
初期状態で有効になっていますが、クリップボード管理は、Cliborを使用しているので無効に。
クリップボード履歴の最大数を0にすることで、一応無効になります。
右Altをアプリケーションキーに
使用していないので、アプリケーションキー(右クリックメニュー)に変更しています。付いていないので。
ファイラなどでキーボードのみで操作中に、ウイルススキャンやプロパティ表示などをしたい時があり、その都度、マウスに持ち替えるのが面倒なのと、時間も勿体無いなと思うので。
左Windowsキー離した時にスタートメニュー非表示
コマンドラインランチャーの、ZiiLauncherを使っているので、スタートメニューを殆ど使っていません。
また、LWinを使った設定を追加するので、暴発を防ぐ為にも無効化しています。
非表示にしたけど、スタートメニュー使いたい > Ctrl-Esc
左Windowsキー/右Ctrl を押した時にIME off/on、他のキーと押した時は元のキー
[keyhacで[半角/全角]キーの1回・2回押しでIME OFF・ONを切り替える - Koonies/こりゃいいな!](http://d.hatena.ne.jp/Koonies/20110818/keyhac_double_key_ime)
Windowsでemacsキーバインド+IME操作 » RainbowDevilsLand
参考に変更します。
Google 日本語入力を使用していて、デフォルトでバルーン表示(Aorあ)で動作が被るので、この部分を削除。
IMEがどちらの状態か、常に覚えている方は殆ど居ないと思うので、慣れると便利だと思います。覚えているときは、いつも通りの切り替え方法と使い分けしています。
ちなみに、Google 日本語入力で切り替えするときはCtrl-Space
使っていましたが、殆ど使わなくなりました。
前は、RWinを 1/2 回押して、IME off/on を使っていましが、こちらの方が楽です。
ただし、設定したLW~キーバインドなどを使おうとして辞めて、LW離した時のIME変換に注意。
LW- H/L/J/K : Left/Right/Down/Up
H/L/J/K でカーソル移動がしたかった。
ボタン2個押すよりも1個の方が楽…そう思っていた時代が僕にもありました。
状況しだいでは、2個の方が速いかなと。
LW- A/E : Home/End
片手で打てるのが利点。
LW- N/P : Next Tab / Previous Tab
次のタブに移動するCtrl-Tab
は比較的押しやすいんですが、前のタブに戻るCtrl-Shift-Tab
が押しづらいので。
片手では押せないですが。
LW- D/LS-D : Delete/Back
片手で削除出来るのは便利。
LW-: : Esc
よく使うので、押しやすい位置へ。
USキーボードなので;
に設定したいですが、:
にしないと;
で動かない。
LW- 10 : F1F10 / LW- -/= : F11/F12
F1F12は、指をえぃ!という感じで伸ばして押さないといけないので、少しは楽になるかなと。F12キーは、見ながら打たないと押し間違えている自分がいますが、数字キーなら慣れれば見なくても押せるっぽい?
後、F1
LW-LS-3 : 逆順に検索
ソフトにもよりますが、F3で順に検索出来る場合は、Shiftを付けると逆順に検索します。
押すボタンは増えますが押しやすいかなと。
LW- Space/LS-Space : PageDown/PageUp
Spaceでブラウザみたいに移動したかった為で、両手でキーボード使っているときは打ちやすいです。
LW- O/I : 戻る/進む
個人的に使う機会が殆どないですが、一応設定しています。
LW- S/LS-S : Switch to the next/previous window
ウィンドウが少ないなら、Alt-Tab
よりもAlt-Esc
の方が切り替え速いが押しづらい為。最小化は対象外。
使わなくなったウィンドウはAlt-Space,C
で閉じている事が多いので、便利です。
LW- B/W 関連 : 一単語ごとに 移動/選択/削除
- LW- B/W : 一単語ごとにカーソル移動
- LW-LS- B/W : 一単語ごとに文字列選択
- LW-LC- B/W : 一単語ごとに Back/Delete
割と便利ですが、日本語だと上手くいかない事が多いので気を付けて下さい。
LW- LC/LS - H/L/J/K/A/E の組み合わせ
- LW-LS- H/L/J/K : カーソル位置から移動したところまでの文字列選択
- LW-LC- H/L/J/K : カーソル位置からカーソル6回分移動
- LW-LC-LS- H/L/J/K : カーソル位置からカーソル6回分の文字列選択
- LW-LS- A/E : カーソル位置から 行頭/行末 まで文字列選択
- LW-LC- A/E : 文章の 最初/最後 へ移動
- LW-LC-S- A/E : カーソル位置から文章の 最初/最後 まで文字列選択
H/L/J/K などでカーソル移動出来るようにしたので、文字列選択なども出来るようにしています。押しづらいのもありますが、カーソル6回分のは便利だと思います。
最後のは片手だけだと押しづらいので、RShiftでも出来るようにしています。
初期状態のを少し変えたもの
- LW- Left/Right/Down/Up : 40pixel単位のウインドウ移動
- LW-LA- Left/Right/Down/Up : 400pixel単位のウインドウ移動
- LW-LS- Left/Right/Down/Up : 画面端までウィンドウ移動
- LW-LC- Left/Right/Down/Up : キーボードで擬似マウス 40pixel単位のカーソル移動
- LW-LA-LC- Left/Right/Down/Up : キーボードで擬似マウス 400pixel単位のカーソル移動
- LW-LA-Space : キーボードで擬似マウス 左クリック
最後以外は、矢印キーを使っています。キーバインドが厳しいので。
ウィンドウ移動は便利だと思います。疑似マウスの方は使用頻度はかなり低めなので、削除でも問題ないかと。
設定ファイル
config.py
1 | import sys |
追記
15-02-08
LW- F/LS-F
削除。EvernoteのWindows-Shift-F
が使えない為LW- S/W
追記。Alt-Esc
押しづらい為
15-02-28
LW-LA- H/L
: 戻る/進む >LW- O/I
へ変更
15-04-15
LW-B
: Back >LW-LS-D
へ変更LW-W
: Switch to the previous window >LW-LS-S
へ変更LW-LC- H/L
: 一単語ごとにカーソル移動 >LW- B/W
へ変更LW-LC-LS- H/L
: 一単語ごとに文字列選択 >LW-LS- B/W
へ変更LW-LC- B/D
: 一単語ごとに Back/Delete >LW-LC- B/W
へ変更LW-LC- H/L/J/K
: カーソル位置からカーソル6回分移動を追加LW-LC-LS- H/L/J/K
: カーソル位置からカーソル6回分の文字列選択を追加
15-04-27
LW-LC-LS- Left/Right/Down/Up
: キーボードで擬似マウス 400pixel単位のカーソル移動 >LW-LA-LC- Left/Right/Down/Up
へ変更LW-LC- A/E
: 文章の 最初/最後 へ移動を追加
15-09-25
- RW 1/2 回押してIME off/onを削除
LW-LC-LS- A/E
: カーソル位置から文章の 最初/最後 まで文字列選択 >LW-LC-S- A/E
へ変更- KeySwap for XPで、RWinを
RCtrl
へ追加 O- LWin/RCtrl
: IME off/onを追加
15-11-25
- 誤字修正。キーバインドに影響はありません
15-12-11
LW-[
: Esc >LW-:
へ変更
16-01-16
- keyhac 1.64 > Keyhac 1.70 へ変更。
- 一文字目が大文字に変わったので、記事タイトル変更。
- 一部の関数名が変更の為に書き換え。前のバージョンでは動きません。
LW-LS-3
: 逆順に検索を追加。
17-12-28
- 追記に新記事、 Keyhacでキーバインドをカスタマイズ 02へリンク追加