unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Davis Herring" <herring@lanl.gov>
To: "Alan Mackenzie" <acm@muc.de>
Cc: Chong Yidong <cyd@stupidchicken.com>, emacs-devel@gnu.org
Subject: Re: Documentation of transient-mark-mode is sloppy, wrong, and confused.
Date: Thu, 28 May 2009 16:53:14 -0700 (PDT)	[thread overview]
Message-ID: <44395.130.55.118.19.1243554794.squirrel@webmail.lanl.gov> (raw)
In-Reply-To: <20090528230359.GA1474@muc.de>

>>   Some commands, which ordinarily operate on the region when the mark is
>>   active, instead act on the entire buffer.
>
> That is a definition of "active", surely, as I suggested above.  Surely,
> it is better to regard the mark and region as being inactive when t-m-m
> is disabled?

It seems to me that there are two kinds of activeness of the mark (and the
region; they have between them only one state).  The first kind (call it
active1) is associated with commands like `kill-region', which refuse to
do anything unless the region is active1.  Outside of transient mark mode,
the mark is always active1 if it exists at all; with tmm, the mark is
frequently activated1 and deactivated1.

The other kind (active2) is associated with commands like `undo',
`insert-parentheses', and `how-many', which restrict, extend, or change
(respectively) their area of effect to be the region iff it is active2. 
Outside of transient mark mode, the mark is never active2 at all; with
tmm, the mark is active2 iff it is active1.

So we see that while there are two predicates, they can be resolved as (or
(not transient-mark-mode) (mark-active)) and (and transient-mark-mode
(mark-active)).  Since my imaginary function `mark-active' is only ever
called when tmm is on, we may take it to return nil otherwise and replace
active2 with just (mark-active).  There is then only one variable
"active", but tmm has different effects on different interpretations of
its value.

Sidebar: I like the 22 feature of turning tmm on temporarily; I don't like
it in general (partly because I like the mark being active1), but
otherwise I cannot have an active2 mark at all.

Davis

-- 
This product is sold by volume, not by mass.  If it appears too dense or
too sparse, it is because mass-energy conversion has occurred during
shipping.




  reply	other threads:[~2009-05-28 23:53 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-28 12:29 Documentation of transient-mark-mode is sloppy, wrong, and confused Alan Mackenzie
2009-05-28 16:54 ` Chong Yidong
2009-05-28 20:15   ` Alan Mackenzie
2009-05-28 20:48     ` Chong Yidong
2009-05-28 23:03       ` Alan Mackenzie
2009-05-28 23:53         ` Davis Herring [this message]
2009-05-29 11:01           ` Alan Mackenzie
2009-05-29  0:21         ` Chong Yidong
2009-05-29  1:55         ` Stefan Monnier
2009-05-29  4:30           ` Kevin Rodgers
2009-05-29  5:47             ` Andreas Roehler
2009-05-29  8:25               ` Stephen J. Turnbull
2009-05-29  8:58                 ` Alan Mackenzie
2009-06-01  2:34                   ` Stephen J. Turnbull
2009-06-01  9:40                     ` Lennart Borgman
2009-06-02  6:23                     ` Andreas Roehler
2009-06-02 11:50                       ` Stephen J. Turnbull
2009-05-29  8:37           ` Eli Zaretskii
2009-05-29  9:27             ` Alan Mackenzie
2009-05-29 10:11               ` Eli Zaretskii
2009-05-29 13:13                 ` Alan Mackenzie
2009-05-29 14:19                 ` Stefan Monnier
2009-05-29 16:40                   ` Drew Adams
2009-05-29 22:20                     ` Alan Mackenzie
2009-05-30  0:11                       ` Drew Adams
2009-05-29  9:55             ` Stephen J. Turnbull
2009-05-29 10:14               ` Eli Zaretskii
2009-06-01  2:09                 ` Stephen J. Turnbull
2009-05-29 10:45               ` Andreas Roehler
2009-05-29  8:38         ` Eli Zaretskii
2009-05-29  9:35           ` Alan Mackenzie
2009-05-29  9:48             ` Eli Zaretskii
2009-05-29 13:17               ` Alan Mackenzie

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=44395.130.55.118.19.1243554794.squirrel@webmail.lanl.gov \
    --to=herring@lanl.gov \
    --cc=acm@muc.de \
    --cc=cyd@stupidchicken.com \
    --cc=emacs-devel@gnu.org \
    /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).