|
From: | Thomas Lord |
Subject: | Re: Shift selection using interactive spec |
Date: | Fri, 14 Mar 2008 04:36:48 -0700 |
User-agent: | Thunderbird 1.5.0.5 (X11/20060808) |
David Kastrup wrote:
"Basically?" Yes, the semantics of the command set is the topic. I think you are trying to brush aside the real differences between two approaches by saying it's "*just* semantics" (emphasis added). But that's circular. The two approaches are *defined* in terms of their differing semantics. The command "C-x C-x" can be thought of as setting the mark at point, and moving point where a mark had been last. And that means that the user's model of emacs is that emacs remembers that that mark existed. The user's model of Emacs' state is pretty tricky: there's "selected frame" and "current window" and "current minor modes" and etc. But the state model that user's have to (one way or another) have a mental map of -- at least the state model is orderly. Tentative marks modify the base-line state-model of emacs only a tiny bit. User's get a new "pronoun" (the tentative mark) to assign bindings to or to refer to. It's a very "context specific" pronoun in that it tends to become unbound by default. Transient marks modify the base-line state-model of emacs by a large amount. Commands that used to unconditionally work on "the region" now have to work on the region only if the "activated" flag is set. The user is not just temporarily naming some point -- as with a tentative mark -- but is instead having to keep track of a new, buffer-local boolean variable. So, tentative marks are cleaner. It's just icing on the cake that, aside from being cleaner from an Emacs perspective, they *also* happen to be a more perfect emulation of what those "other GUIs" do. -t I've described why about 3 times already. Tentative marks always go away unless the user uses a key-sequence that preserves them or the command the user invokes is a rare variety that explicitly preserves it.So the "advantage" of your "tentative mark" would be that "C-x C-x" now beeps and does nothing. What does that buy the user?(I think if you look back at history you'll discover that transient-mark-mode was actually a mistake. It was in effect a crude attempt to hack around the lack of "tentative marks". People were confused but were happy that transient-mark-mode seemed to mostly highlight regions and mostly work like other GUIs, at least in simple cases). Tentative marks capture the familiar semantics much more precisely than transient ones.By making it impossible to recreate a mark where one had been last time? What's the advantage in providing strictly less functionality?Having looked at it more closely now, I would even suggest that transient-mark-mode be deprecated (as in dis-recommended for use and of low priority for compatibility, going forward).)I don't get your point. You basically want to remove functionality and sell this as an advantage under a different name. |
[Prev in Thread] | Current Thread | [Next in Thread] |