changeset 61513:a53097b105b0

(xterm-mouse-mode): Provide correct standard value for Custom. No longer show "Mouse" in mode line when enabled. Doc fix.
author Luc Teirlinck <teirllm@auburn.edu>
date Tue, 12 Apr 2005 23:05:22 +0000
parents 46263849dcce
children 7473921df065
files lisp/xt-mouse.el
diffstat 1 files changed, 27 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/xt-mouse.el	Tue Apr 12 22:58:19 2005 +0000
+++ b/lisp/xt-mouse.el	Tue Apr 12 23:05:22 2005 +0000
@@ -156,10 +156,33 @@
 With prefix arg, turn XTerm mouse mode on iff arg is positive.
 
 Turn it on to use Emacs mouse commands, and off to use xterm mouse commands.
-This works in terminal emulators compatible with xterm.  Only single clicks
-are supported.  When turned on, the normal xterm mouse functionality is still
-available by holding down the SHIFT key while pressing the mouse button."
-  nil " Mouse" nil :global t :group 'mouse
+This works in terminal emulators compatible with xterm.  It only
+works for simple uses of the mouse.  Basically, only non-modified
+single clicks are supported.  When turned on, the normal xterm
+mouse functionality for such clicks is still available by holding
+down the SHIFT key while pressing the mouse button."
+  :global t :group 'mouse
+  ;; Do not change the :init-value below, without corresponding
+  ;; changes in the related code in startup.el.
+  :init-value (unless (or noninteractive
+			  window-system
+			  (null term-file-prefix))
+		(let ((term (getenv "TERM"))
+		      hyphend)
+		  (while
+		      (and term
+			   (not (load (concat term-file-prefix term) t t)))
+		    ;; Strip off last hyphen and what follows, then
+		    ;; try again
+		    (setq term
+			  (if (setq hyphend
+				    (string-match "[-_][^-_]+$" term))
+			      (substring term 0 hyphend)
+			    nil)))
+		  (and term
+		       (string-match "^\\(xterm\\|rxvt\\|dtterm\\|eterm\\)"
+				     term)
+		       t)))
   (if xterm-mouse-mode
       ;; Turn it on
       (unless window-system