vimとかskkとかでプログラミングとか文章とか書いている人のためのキーマップ変更方法(主にlinux)
vimやらskkとか使っていると、正直手(特に小指)が痛くなってきませんか?そんな人はデフォルトのキーマップを捨てて、改造しちゃいましょう。
Xmodmap
Linuxでキーマップを変更するにはxmodmapというコマンドを使います。自分でキーマップを定義したファイルをxmodmapコマンドで適用させることによって、キーマップを変更します。私はvimとskkを使って文章やらプログラミングしているので、下記のように変更しています。
- Escキーと半角/全角キーの交換
- 数字キーを押した時に、記号がでるようにする(shift+数字キーで、数字がでる)
- 無変換キー、変換キーをshiftキーに変換する
- Caps_LockキーをCtrlキーに変換する
あ、キーボードはthinkpadのキーボードを使っていて、写真で見るとこのような感じになっています。
こんな感じでキーマップを変更すると、指に負担がかからなくなったり、キーの押しが間違いが少くなって快適なりました。Escキーを押したと思ったらヘルプがでてくるというファックな事態に落ちいることもありません!!
Xmodmapでの変更方法は下記の記事の方が詳しく、分かりやすいのでそちらを参照してください。
Manpage of XMODMAP
UNIXの部屋 コマンド検索:xmodmap (*BSD/Linux)
.Xmodmap - キー割り当ての変更 - 会津大学UNIXウィキ
ここでは、私のXmodmapの内容を載せておきます。なお、keycodeはキーボードごとに異っているため、xevコマンドなどを利用して各自でkeycodeを調べて設定してください。
!! This Xmodmap is thinkpad r40e keyboard !! ! numeric key <=> kigou keycode 10 = exclam 1 keycode 11 = quotedbl 2 keycode 12 = numbersign 3 keycode 13 = dollar 4 keycode 14 = percent 5 keycode 15 = ampersand 6 keycode 16 = apostrophe 7 keycode 17 = parenleft 8 keycode 18 = parenright 9 ! CapseLoc -> Ctrl remove Lock = Caps_Lock keysym Caps_Lock = Control_L add Control = Control_L keycode 66 = Control_L ! change zenakaku <=> Esc keycode 9 = Zenkaku_Hankaku keycode 49 = Escape ! shift change keysym Muhenkan = Shift_L keysym Henkan_Mode = Shift_L add Shift = Shift_L keycode 101 = Alt_L
これらの設定がダルいという方には・・・
「Xmodmapなんていじるのダリー」とか「Linuxじゃねえようわーん」という方には、「窓使いの憂鬱」というキーマップを変更するソフトがあるそうです。
窓使いの憂鬱
私家版 窓使いの憂鬱 Linux & Mac (Darwin) 対応版