web-dev-qa-db-ja.com

MacのemacsおよびiTerm2でマウス選択を機能させるにはどうすればよいですか?

xterm-mouse-modeをオンにした後、画面でをクリックすると、「mouse-1 is undefined」が返されます。 「mouse-1」は何として定義する必要がありますか?私のマウスクリックがこのイベントを返し、他の人がその疑いを持たない理由はありますか?

43
Chris

私はこれを私の.emacsに入れます:

(require 'mouse)
(xterm-mouse-mode t)
(defun track-mouse (e)) 
(setq mouse-sel-mode t)

これでうまくいくようで、スプリットでマウスをクリックするとフォーカスがスプリットに変わります。

注:私はiterm2を使用しており、ここで情報を見つけました: http://groups.google.com/group/iterm2-discuss/browse_thread/thread/8e1f2ee7db26c07d/17ac15e69c554998?show_docid=17ac15e69c554998&pli=1

33
DrStrngeluv

ITerm 2のEmacsの場合、次のビットが~/.emacsファイルは非常にうまく機能し、任意の場所に文字を挿入し、領域をマークし、スクロールホイールを使用する機能を提供します。

;; Enable mouse support
(unless window-system
  (require 'mouse)
  (xterm-mouse-mode t)
  (global-set-key [mouse-4] (lambda ()
                              (interactive)
                              (scroll-down 1)))
  (global-set-key [mouse-5] (lambda ()
                              (interactive)
                              (scroll-up 1)))
  (defun track-mouse (e))
  (setq mouse-sel-mode t)
)
50
bfroehle

Mac OS XのTerminal.appは、マウスレポートをサポートしていません。ただし、MouseTermは、この機能を備えたSIMBLプラグインです。 http://bitheap.org/mouseterm/

MouseTermをインストールし、Emacs構成ファイルに以下を追加します。

; enable mouse reporting for terminal emulators
(unless window-system
  (xterm-mouse-mode 1)
  (global-set-key [mouse-4] (lambda ()
                              (interactive)
                              (scroll-down 1)))
  (global-set-key [mouse-5] (lambda ()
                              (interactive)
                              (scroll-up 1))))
7
hekevintran

Emacs-goodies-elをインストールすると、適切なバインディングが提供されると思います。

1
George