summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>2005-03-06 20:16:01 +0000
committerRichard M. Stallman <rms@gnu.org>2005-03-06 20:16:01 +0000
commit0251bafb90e63cc7f428e1b91db436c32ad2677c (patch)
tree15bf9af7204a8c97ed8adb0faf5f29bc1f96eb52
parenteac88b3bfb2990efc5787564ddf249f8cabd8df7 (diff)
downloademacs-0251bafb90e63cc7f428e1b91db436c32ad2677c.tar.gz
(activate-mark-hook, deactivate-mark-hook): Add defvars.
(push-mark-command): Run activate-mark-hook.
-rw-r--r--lisp/ChangeLog26
-rw-r--r--lisp/simple.el9
2 files changed, 35 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 8e9345f5cfe..f41aa23695c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,29 @@
+2005-03-06 Chong Yidong <cyd@stupidchicken.com>
+
+ * simple.el (activate-mark-hook, deactivate-mark-hook): Add defvars.
+ (push-mark-command): Run activate-mark-hook.
+
+2005-03-06 Richard M. Stallman <rms@gnu.org>
+
+ * help-mode.el (help-mode-finish): Don't alter the element
+ in view-return-to-alist if there already is one.
+
+ * jit-lock.el (jit-lock-stealth-fontify): When calling sit-for,
+ make sure the current buffer is the expected one.
+
+ * novice.el (disabled-command-function): Output in *Disabled Command*.
+ Explicitly ignore non-keyboard events, and explicitly handle C-g.
+
+ * textmodes/flyspell.el (flyspell-large-region):
+ Pass args differently for aspell.
+
+ * files.el (mode-require-final-newline): Doc fix.
+
+2005-03-03 Stephan Stahl <stahl@eos.franken.de> (tiny change)
+
+ * progmodes/which-func.el (which-function):
+ Specify NOERROR when calling imenu--make-index-alist.
+
2005-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
* simple.el (normal-erase-is-backspace): Define default value.
diff --git a/lisp/simple.el b/lisp/simple.el
index 00005ae355b..38c9bff4130 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -2913,6 +2913,14 @@ START and END specify the portion of the current buffer to be copied."
(put 'mark-inactive 'error-conditions '(mark-inactive error))
(put 'mark-inactive 'error-message "The mark is not active now")
+(defvar activate-mark-hook nil
+ "Hook run when the mark becomes active.
+It is also run at the end of a command, if the mark is active and
+it is possible that the region may have changed")
+
+(defvar deactivate-mark-hook nil
+ "Hook run when the mark becomes inactive.")
+
(defun mark (&optional force)
"Return this buffer's mark value as integer; error if mark inactive.
If optional argument FORCE is non-nil, access the mark value
@@ -3004,6 +3012,7 @@ Display `Mark set' unless the optional second arg NOMSG is non-nil."
(if (or arg (null mark) (/= mark (point)))
(push-mark nil nomsg t)
(setq mark-active t)
+ (run-hooks 'activate-mark-hook)
(unless nomsg
(message "Mark activated")))))