修飾キーもうちょっと欲しい

修飾キーに Ctrl と Meta(Alt) と Super, あと Shift を使ってるんだけど,
もうちょっと欲しくなって,
Hyper キーを導入してみたよ, という話.
たぶん, 何でそんなことをわざわざするんだって, ほとんどの人に理解されないと思う.
まあ, 自分用のメモも兼ねてるし.



自分は, Emacs 使い.
それで, けっこうグローバルマップに色々なキーを割り当ててる.
中には打ちづらいキー, 例えば, M-! に割り当てられている shell-command を C-c x にも割り当てたりしている.
そんなことしてると, けっこうキーが足りなくなってくる.
いや, 割り当てる分には, 十分に, Ctrl, Meta, Super で足りてるんだけど,
打ち易さを考慮すると, うーん・・・となってくる.
それに, 何らかのモードで割り当てられているキーと被る場合もあるし.


何かのモードと被る心配が無いという点で便利なのが, Super キーと Hyper キー.
あとは, 日本語キーボードにあるキー.
自分は, カタカナひらがなキーを Super キーにしている.
また, 無変換, 変換を,
それぞれ, elscreen-previous と elscreen-next という elscreen のスクリーン移動にしている.
こうしてると被る心配が無いので, 快適に使える. しかも打ち易いし.
前, Ctrl-. と Ctrl-, にしてたときは, rails の設定で被ったりしてた.



今のところ, これで十分なんだけど,
念のために, Hyper を増やしとこうと考えて, 増やしてみた.
その場合, 何処に, となるんだけど, 無変換を Hyper にすることにした.
elscreen のスクリーン切り替えは, Shift キーとの連携で動作を変えるようにした.
こんな感じ.

(global-set-key [henkan] 'elscreen-next)
(global-set-key [S-henkan] 'elscreen-previous)

これで, 無変換が無くても大丈夫.


実際に, 無変換に Hyper を割り当てる.
.Xmodmap をいじる.
こんなのを追記する.

! muhenkan = Hyper_L
keycode 131 = Hyper_L
add mod3 = Hyper_L

あとは, X を再起動なり, xmodmap コマンドを使って読み込ませるなりで OK.
まあ, C-M-Backspace で X を落として, 再起動させんのが簡単.



あとは, Emacs で Hyper キーを使って好きなコマンドを割り当ててやる.
Hyper は, 修飾キーだから, かなり柔軟に設定できる.
Hyper + Ctrol + なんとか〜とか, やろうと思えば, C-H-M-S-l (Control + Hyper + Meta + Shift + l)とかできる.
打ちづらいだけやから割り当てんけど.
手始めに complete-symbol を割り当てといた.
今, super とか, hyper に割り当ててるやつ一覧.

(global-set-key [(super \2)] 'insert-hat)
(global-set-key [(super w)] 'insert-back-apostrophe)
(global-set-key [(super \3)] 'insert-minus)
(global-set-key [(super \#)] 'insert-equal)
(global-set-key [(super r)] 'replace-regexp)
(global-set-key [(super b)] 'browse-url-firefox)
(global-set-key [(control super s)] 'info-lookup-symbol)
(global-set-key [(control hyper i)] 'complete-symbol)

最近, カタカナひらがなキーを親指を押すようになった.
今までは, 中指で押してた.
ちなみに, Alt は, 薬指. これは今も薬指のまま.
何故親指に変わったというと,
Ctrl キーといっしょに押すときなんかを考慮すると中指より, 親指の方が便利だって気付いたから.
この場合, Ctrl キーは, 右下のを使ってる.
まあ, 普段から右下の Control よく使うけど.
この右下 Control を使うってのが, あまり, というか, 悲しいことに全然, 理解されない.
自分は, 左のより, 右のの方をよく使ってるかもしれない.


普通のキー, 「^」とか「-」とか「=」とかの割り当ては, Emacs レベルじゃなくて,
X レベルで割り当てた方がいいかもという気がしてきた.
けっこう端末でゴニョゴニョやってるときに欲しく感じる.
.Xmodmap に割り当ててやろうかなあ.
できんのかな?できるだろうな. たぶん.



つか, Emacs 使ってると Enter なんて使わねえんだよなあ.
でも無いと, 他のアプリ, Firefox とかで困ったことになることが多いと思うから消せない.
まあ, いいかとも思ってるけど, もったいないなあ.
ついでに, 全く使ってない, 左下の Control も. 打ち易い場所にあるのに.

更新時刻

2007年, 7月21日, 5:25