読者です 読者をやめる 読者になる 読者になる

Emacs 24(RC)のnox11でxterm-mouse-modeを使う

Emacs

Emacs24のリリース候補版(Release Candidate)がでました。http://alpha.gnu.org/gnu/emacs/pretest/
自分はEmacsでもホイールスクロールが使えるようにxterm-mouse-modeを使っていますが、Emacs24ではちょっとだけ挙動が変わったようで追加設定をしないと変になったので詳細をここにまとめておきます。

以下の設定でEmacs23でも24でも動作します。もちろんnox11(configure時に--without-xをつける)でも動作します。

;; xterm-mouse-mode
(unless (fboundp 'track-mouse)
  (defun track-mouse (e)))
(xterm-mouse-mode t)
(require 'mouse)
(require 'mwheel)
(mouse-wheel-mode t)

ついでにxterm-mouse-modeの宣伝をしておきます。
xterm-mouse-modeを使うことで一般的なエディタと同様に、

  • クリックでカーソルの移動
  • ホイールスクロール
  • ドラッグで範囲選択
  • 右ダブルクリックでなぜかカット

が可能になります。
puttyなどでEmacsを使っている場合、以前のペーストなどのマウス操作はシフトを押しながらで可能になります。
ただし、「Shiftがアプリケーションのマウス使用を無効にする」を有効にしている必要があります(おそらく)。
コーディング時には無くても良い機能だとは思いますが、ソースを眺めたりするときには便利だと思います。