cat の備忘録

不定期更新です

Arch Linux で Caps Lock と Ctrl を交換(変更)したり、Mac 風なキー配置にしてみたり。

どう考えても Mac のキー配置が常識だと思う。

なぜ全く必要のない Caps Lock が左小指のとなりなんていう特等席にいるのだろう。

そんな事を考えてググったら簡単にキー配置をいじれたのでメモ。

 

今回は xmodmap というコマンドを使う。

まあ、X11 と一緒に入ってるので心配はいらない。

$ xmodmap -pke | less

と打つと、

keycode  24 = q Q q Q
keycode  25 = w W w W
keycode  26 = e E e E
keycode  27 = r R r R
keycode  28 = t T t T
keycode  29 = y Y y Y
keycode  30 = u U u U
keycode  31 = i I i I
keycode  32 = o O o O
keycode  33 = p P p P

みたいなのが延々とでてくるので、これらの情報を使ってキー配置を変更していく。

 

例えば下段の一番右のバックスラッシュをアンダーバーにしたいときは、

$ xmodmap -pke | grep back

とすると

keycode 97 = backslash underscore backslash underscore

と出ると思う。

ここで ~/.Xmodmap とか適当にファイルを作って

! 下段一番右のキーを shift を押さなくてもアンダーバーが入力されるようにする
! ちなみにこの設定ファイルでは ! でコメントになる
keycode 97 = underscore underscore underscore underscore

と書き込んで

$ xmodmap ~/.Xmodmap

と打つ。するとバックスラッシュがアンダーバーになる。

 

次に Caps Lock を Control にする等には、先とは少し違った方法が必要になる。

remove Lock = Caps_Lock
keysym Caps_Lock = Control_L
add Control = Control_L

この remove とかはいまいち理解しきれてないのではっきりとしたことは言えないけど、たぶん remove Lock で変更可能にして keysym で対応させて、add Control で実際に追加しているんだと思う。

もう少し詳しいことは最後の参考資料のところに書いてあるので参考されたし。

 

それから何かのキーを無効化するには

$ xmodmap -pke | less

で keycode を調べて

keycode 77 = NoSymbol

とすればいい。ちなみに keycode 77 は NumLock になっている。

ただ私の環境での話なので実際に確認して実行して欲しい。

もしタイポってた場合はエラーが出るのですぐにわかる。

この調子でバリバリ自分好みに書き換えていけばいい。

 

ちなみに

$ xmodmap -e "keycode 27 = N s"

とすると設定ファイルをつくらずに r が N へ、R が s へと変化する。

ただこれだと何をどう変えたのかわからなくなるので、先に述べた方法で設定ファイルとして書き残すことをおすすめする。

 

最後に私の windows 端末を Mac 風キーマップにした設定ファイルを置いておく。

!
! Windows 端末を Mac 風キーマップにしてみた。
! 具体的には 
! Num Lock を無効化 ! Caps Lock を Ctrl に ! 左 Ctrl を無効化 ! 円記号をバックスラッシュに ! バックスラッシュを無効化してアンダーバーのみに ! と変更した。 ! remove Lock = Caps_Lock keysym Caps_Lock = Control_L add Control = Control_L keycode 37 = NoSymbol ! keycode 37 は元々の左 Control keycode 77 = NoSymbol ! keycode 77 は NumLock keycode 97 = underscore underscore keycode 132 = backslash bar

 

 

なおこの remove とかはログインごとにしなくてはならないので、~/.xinitrc や ~/.bashrc 等のログイン時に実行されるファイルに

xmodmap ~/.Xmodmap

とでも書いておくといい。

 

なお、例えばもし p を間違えて他の文字で置き換えたりしてタイピングがまともにできなくなっても落ち着いてコピペを使って復旧してください。

私はかなりパニックになりました。

 

 

参考: .Xmodmap - キー割り当ての変更 - 会津大学UNIXウィキ