Fvwm のAlt-TABを無効にする

2017年8月20日

私が現在使っているWindow Managerは Fvwm です。シンプルで気に入っています。

Fvwmに限らず、X11上でEmacsを使っている時に問題となるのが、Alt-TABのKey bindingです。というのもEmacsでは (completion-at-point) に bindされているのです。(completion-at-point) コマンドは特にlispを書くときに補完してくれたりする便利なもののですが、大概のWindow ManagerはWindows OSに倣ってタスクリストにAlt-TABをbindしています。Fvwmも近頃はデフォルト(というかbuilt-in)でWindowsListにbindしています。これでは、Alt-TABはイベントをFvwmに取られてしまい、Emacsにはイベントが渡らないのです。従って、Alt-TABで(completion-at-point)コマンドが使えません。

そこで、Window Manager上ではAlt-TABを無効にして、Emacs本来のKey bindingを活かすことを考えます。それには.fvwm2rc中に

Key Tab A M -

と記述します。

ちなみに、Fvwmのbuilt-inのkey bindingとmouse button bindingは

Key Help R A Popup MenuFvwmRoot
Key F1 R A Popup MenuFvwmRoot
Key Tab A M WindowList Root c c NoDeskSort
Key Escape A MC EscapeFunc
Mouse 1 R A Menu MenuFvwmRoot
Mouse 1 T   A FuncFvwmRaiseLowerX Move
Mouse 1 FS  A FuncFvwmRaiseLowerX Resize
Mouse 2 FST A FuncFvwmRaiseLowerX Move
AddToFunc FuncFvwmRaiseLowerX
+ I Raise
+ M $0
+ D Lower

となっています( Fvwm マニュアルから引用)。

私は WindowListはCtl-Alt-TABに割り当てています:

Key Tab A CM WindowList Root c c NoDeskSort

Linux

Posted by Gordius