EmacsにおけるC-w

C-wはデフォルトでkill-regionがバインドされてるけど領域を選択してないと何もしてくれないのはもったない。

カレントウィンドウを消す、delete-windowのデフォルトのキーバインドC-x 0が押しづらいし、firefoxで"タブを閉じる(C-w)"に似てるから、領域選択がなされてない時はこれを呼ぶことにしたらすこぶるゴキゲンだぜべいべ。

ただ、領域が選択されてるかどうかの判定に使ったmark-active変数がEmacs起動直後はちょっとおかしいみたいで起動直後は領域を選択してなくてもkill-regionが呼ばれちゃって悲しい。

一回ちゃんと領域選択してkill-regionしてやるとその後は大丈夫みたいだけど。。。

(defun kill-region-or-delete-window (beg end)
  (interactive "r")
  (if mark-active 
      (kill-region beg end)
    (delete-window)))
;;(global-set-key (kbd "C-w") 'kill-region-or-delete-window)