From: rsharman@pobox.com
Cc: nickrob@snap.net.nz, emacs-devel@gnu.org, rsharman@pobox.com
Subject: Re: highlight-changes-mode
Date: Sat, 9 Dec 2006 14:40:33 -0500 [thread overview]
Message-ID: <17787.4401.435315.516412@cube.homenetwork> (raw)
In-Reply-To: <E1GsQOZ-00018t-Na@fencepost.gnu.org>
Richard Stallman writes:
> The current implementation allows the situation where a user no longer
> wants it turned on by default, but has an existing buffer that has
> some changes already highlighted. If disabling the global mode
> automatically disables highlight changes modes in that buffer, then
> the highlighting of the changes disappears; we have lost information.
>
> That is clearly true. The question is whether this is a useful feature
> that we want, or whether it is better to make this mode like the others.
Personally I think it is useful.
I certainly have no problems with global-highlight-changes always
turning on the mode in all buffers. It is only the unconditional
turning off that I have qualms with.
Can I suggest a compromise?
The default behaviour is changed to always affect existing buffers in
both enabling and disabling. All references to the variable
highlight-changes-global-changes-existing-buffers are removed.
A new variable highlight-changes-mode-turn-off-fn can be set to a
function to be called to [optionally] turn off the mode in a buffer.
If set to nil (the default) the mode is turned off unconditionally.
This is implemented by a different change to define-global-minor-mode
from what I'd suggested earlier. Instead of the :only-new keyword
there is a :turn-off keyword. If specified this function is called
instead of the mode being turned off directly. It is a
more symmetric change than the previous one.
(defvar highlight-changes-mode-turn-off-fn nil
"*If non-nil, a function to maybe turn off highlight changes mode.
It is called by global-highlight-changes when the mode is turned off.
The default setting of nil causes highlight changes mode to be
disabled in all buffers.")
(defun highlight-changes-mode-turn-off ()
(if highlight-changes-mode-turn-off-fn
(funcall highlight-changes-mode-turn-off-fn)
(highlight-changes-mode -1)))
So to summarize, the default behaviour is as you prefer, but we allow
a user to override it
next prev parent reply other threads:[~2006-12-09 19:40 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <17721.60660.980363.609046@kahikatea.snap.net.nz>
2006-10-23 5:11 ` highlight-changes-mode Richard Stallman
2006-10-23 18:39 ` highlight-changes-mode Richard Stallman
2006-10-24 0:16 ` highlight-changes-mode rsharman
2006-10-24 17:43 ` highlight-changes-mode Richard Stallman
2006-11-27 1:57 ` highlight-changes-mode rsharman
2006-11-27 6:43 ` highlight-changes-mode Nick Roberts
2006-11-28 2:15 ` highlight-changes-mode rsharman
2006-12-06 6:25 ` highlight-changes-mode rsharman
2006-12-06 6:37 ` highlight-changes-mode rsharman
2006-12-06 18:44 ` highlight-changes-mode Richard Stallman
2006-12-06 19:58 ` highlight-changes-mode Drew Adams
2006-12-07 21:02 ` highlight-changes-mode Richard Stallman
2006-12-07 21:13 ` highlight-changes-mode Drew Adams
2006-12-09 18:55 ` global minor modes that can be overridden locally? [was: highlight-changes-mode] Drew Adams
2006-12-11 1:06 ` Richard Stallman
2006-12-11 1:16 ` Lennart Borgman
2006-12-11 1:45 ` Drew Adams
2006-12-11 1:52 ` Lennart Borgman
2006-12-11 1:58 ` Drew Adams
2006-12-12 2:57 ` Richard Stallman
2006-12-12 3:27 ` Lennart Borgman
2006-12-12 21:45 ` Richard Stallman
2006-12-12 23:02 ` Lennart Borgman
2006-12-12 4:06 ` Drew Adams
2006-12-12 4:25 ` global minor modes that can be overridden locally? Miles Bader
2006-12-12 5:00 ` Drew Adams
2006-12-29 16:25 ` Drew Adams
2006-12-29 22:15 ` Stefan Monnier
2006-12-29 22:40 ` Drew Adams
2006-12-30 6:24 ` Richard Stallman
2006-12-30 8:25 ` Drew Adams
2006-12-31 1:46 ` Richard Stallman
2006-12-30 22:43 ` Kim F. Storm
2006-12-30 23:27 ` Lennart Borgman (gmail)
2006-12-30 6:23 ` Richard Stallman
2006-12-12 11:08 ` Juanma Barranquero
2006-12-12 11:15 ` Miles Bader
2006-12-12 11:25 ` Juanma Barranquero
2006-12-12 11:33 ` Miles Bader
2006-12-12 11:59 ` Juanma Barranquero
2006-12-11 1:40 ` global minor modes that can be overridden locally? [was:highlight-changes-mode] Drew Adams
2006-12-12 2:58 ` Richard Stallman
2006-12-12 4:08 ` global minor modes that can be overridden locally?[was:highlight-changes-mode] Drew Adams
2006-12-12 21:45 ` Richard Stallman
2006-12-06 23:39 ` highlight-changes-mode rsharman
2006-12-07 21:03 ` highlight-changes-mode Richard Stallman
2006-12-09 19:40 ` rsharman [this message]
2006-12-11 1:06 ` highlight-changes-mode Richard Stallman
2006-12-11 9:15 ` highlight-changes-mode Kim F. Storm
2006-12-12 2:58 ` highlight-changes-mode Richard Stallman
2006-12-12 3:16 ` highlight-changes-mode rsharman
2006-12-12 21:45 ` highlight-changes-mode Richard Stallman
2006-12-12 23:33 ` highlight-changes-mode rsharman
2006-12-14 5:29 ` highlight-changes-mode Richard Stallman
2006-11-27 15:38 ` highlight-changes-mode Richard Stallman
2006-11-28 2:04 ` highlight-changes-mode rsharman
2006-12-05 2:42 ` highlight-changes-mode rsharman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=17787.4401.435315.516412@cube.homenetwork \
--to=rsharman@pobox.com \
--cc=emacs-devel@gnu.org \
--cc=nickrob@snap.net.nz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).