help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs standards with regions


From: Xah Lee
Subject: Re: Emacs standards with regions
Date: Mon, 24 Nov 2008 10:15:28 -0800 (PST)
User-agent: G2/1.0

i looked up on when is transient-mark-mode added to emacs.

the earliest mention of transient-mark-mode in emacs's NEWS file is in
NEWS.19, and according to Wikipedia, emacs 19 is released in Sep 1997.

So, i suppose 1997 is the year emacs supports highlighting of region,
and the introduction of active region concept.

I also looked up cua...

The header file of cua mode has copyright dated back to 1997. The
first mention of cua mode is in NEWS.21 (released in 2001), quote:
«** The menu bar configuration has changed.  The new configuration is
more CUA-compliant.  The most significant change is that Options is
now a separate menu-bar item, with Mule and Customize as its
submenus.  »

In emacs 22 news (released in 2007), it says:
«** CUA mode is now part of the Emacs distribution.»

So the standard copy/cut/paste and text selection user interface came
to emacs in 2007!!!

THAT'S LAST YEAR!! I did not even realize that this is this late!

gosh... how like to say that in general and in the current decade,
Open Source software are some 1 decade in playing catch up to
commercial software in aspects of user interface.

I don't think the picture would look better if one investigate on when
is mouse support, multiple graphical window support (emacs's “frame”),
scroll bar support, syntax highlighting came to emacs.

I have little doubte, that when each of these features were considered
in emacs, lots of diehard tech geekers think they are utterly stupid.
(in the early 1990s, Microsoft isn't yet hated, it was IBM, and before
that, AT&T (of Unix fame then), Symbolics (of lisp and hacker split
and birth of fSF fame), ...)

there are really a lot problems with the way tech geeker thinks...

for example, consider the naming of things. For example, when a emacs
user tried to read the online doc of comment-dwim, quote: “If the
region is active and `transient-mark-mode' is on, ...”. For more than
99% of professional programers, they'll go: “What the heck is
transient mark??”

and if you ask them what is “CUA”, they'd go “HUH????”

... a good solution here, is that in the emacs docs, the concept of
region active and transient-mark-mode on be equated with the phrase
Text Selection. So, for example, the sentence of the doc of comment-
dwim can go like this:
“If there is a text selection, ...”

if cua mode is on by default in emacs 23, then probably remove it from
menu under Options... emacs veterans know what to do if they want to
turn it off.

-------------------------------------

Here's linnes in emacs's news related to transient mark mode.


Emacs 22 News:

*** Marking commands extend the region when invoked multiple times.

*** Some commands do something special in Transient Mark mode when the

*** Diff mode key bindings changed ...In addition, C-c C-u now
operates on the region in Transient Mark mode when the mark is active.

*** If a command sets `transient-mark-mode' to `only', that

--------------------------
Emacs 21 news

*** The command `ispell' now spell-checks a region if transient-mark-
mode is on, and the mark is active

** The functions `keep-lines', `flush-lines' and `how-many' now
operate on the active region in Transient Mark mode.

------------------------
Emacs 20 news:

M-w when Transient Mark mode is enabled disables the mark.

In Transient Mark mode, undoing when a region is active requests
selective undo.

** In Transient Mark mode, when the region is active, M-x query-
replace and the other replace commands now operate on the region
contents only.

** In Transient Mark mode, the region in any one buffer is highlighted
in just one window at a time.  At first, it is highlighted in the
window where you set the mark.  The buffer's highlighting remains in
that window unless you select to another window which shows the same
buffer--then the highlighting moves to that window.

------------------
emacs 19 news:

** Marking with the mouse.  When you mark a region with the mouse, the
region now remains highlighted until the next input event, regardless
of whether you are using M-x transient-mark-mode.

** Incremental search in Transient Mark mode, if the mark is already

** When dragging the mouse to select a region, Emacs now highlights
the region as you drag (if Transient Mark mode is enabled).

** If you enable Transient Mark mode and set `mark-even-if-inactive'
to non-nil, then the region is highlighted in a transient fashion just
as normally in Transient Mark mode, but the mark really remains active
all the time; commands that use the region can be used even if the
region highlighting turns off.

** The variable `highlight-nonselected-windows' now controls whether
the region is highlighted in windows other than the selected window
(in Transient Mark mode only, of course, and currently only when using
X).

** If you enable Transient Mark mode, then the mark becomes "inactive"
after every command that modifies the buffer.  While the mark is
active, the region is highlighted (under X, at least).  Most commands
that use the mark give an error if the mark is inactive, but you can
use C-x C-x to make it active again.  This feature is also sometimes
known as "Zmacs mode".

  Xah
∑ http://xahlee.org/

reply via email to

[Prev in Thread] Current Thread [Next in Thread]