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

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

Re: How to replace string for a block?


From: Andreas Röhler
Subject: Re: How to replace string for a block?
Date: Wed, 27 May 2009 19:37:17 +0200
User-agent: Thunderbird 2.0.0.19 (X11/20081227)

Alan Mackenzie wrote:
> Hi, Barry!
>
> On Wed, May 27, 2009 at 08:51:12AM -0400, Barry Margolin wrote:
>   
>> In article <mailman.7904.1243427777.31690.help-gnu-emacs@gnu.org>,
>>  Alan Mackenzie <acm@muc.de> wrote:
>>     
>
>   
>>> transient-mark-mode is an ill thought out conflation of several
>>> logically unrelated features, some of which have names which can only
>>> have been thought up when their namers were smoking something
>>> soothing, complicated to use, and utterly at variance with Emacs's
>>> ethos of elegant simplicity and keeping out of the user's way.
>>>       
>
>   
>>> Some people seem to like it, though.  ;-)
>>>       
>
>   
>> I've been an Emacs user for almost 30 years.  For at least half that
>> time transient-mark-mode didn't even exist, and after it was added (for
>> the benefit of converts from PC word processors, I believe) I resisted
>> enabling it for a long time, it seemed like sacrilege.  But I finally
>> gave in a couple of years ago when I started using Emacs in GUI mode
>> heavily at work, and I'm happy I did.  I particularly like when
>> commands automatically operate on either the buffer or region depending
>> on whether it's enabled.  I installed shell-command.el, which makes
>> shell-command-on-region do this automagically.
>>     
>
> I could probably cope with transient-mark-mode if had been systematically
> thought out and its entities called unconfusing things.  The mark ISN'T
> transient - once created, it exists until the buffer is killed.  The mark
> and the region are never active - they aren't the sort of things that
> ever actively DO anything, they never become agents.  "Receptive" would
> have been a better word than "active", even if not very good.  This
> confusion has given rise to bewildering names like
> `mark-even-if-inactive', which is short for "mark is active even if it's
> inactive".
>
> The whole topic is such a cesspit of confusion and sloppy thinking, that
> I decline to sully myself by even touching it.  

Thank you speaking out it so clearly.
Nonetheless its at the very center of editing. Maybe some skillful
relaxed people
will strengthen emacs' editors heart again?

> t-m-m conflates three
> logically unrelated things: (i) highlighting the region; (ii) "narrowing"
> the effect of certain commands to the region; (iii) enabling/disabling
> certain commands which work on the region (like C-w).  I can see the
> benefit of (i) (though I dislike it strongly), and I suppose (ii) might
> be handy, though given that C-x n n is so simple, I'm not exacly sure
> what for.  As for (iii) - well, I don't need some fascist telling me when
> I can delete my region, thank you very much!  That's actually what
> `mark-even-if-inactive' means - it would be more accurately called
> `region-commands-never-disabled'.  As to why (i) and (ii) aren't
> available separately, I suppose lack of clear thinking in the hacker who
> created it is the most plausible explanation.
>
> The classical mark was so elegantly simple (it can be described in a
> single concise sentence), yet also subtle and economical, the newbie
> could grasp it in a few minutes of concentrated thinking.  Which of us
> didn't get a "Eureka moment" on seeing how all the various uses of the
> mark complemented eachother and jelled so well together?  All that is now
> lost.  The imposition of transient mark mode on the newbie burdens him
> with a random ragbag of complexity, and I have no good answer to the
> anticipated newbie question "what do I have to go through all this stuff
> for?".
>
> Still, you like it.  :-)  Would you fancy fixing the documentation for
> all this?  The Emacs manual page "The Mark and the Region" decends into
> the "if you don't know what I mean by 'widget' you must be an idiot"
> style of documentation.  It doesn't have a @dfn{active}.  (I can think of
> a good reason. ;-)  It's also unsettling that it says that the text in a
> region vanishes when you do something ("The region persists only until
> you use it.", where @dfn{region} is THE TEXT between point and mark).
> There are probably more confusing things in it.
>
>   
>> Barry Margolin, barmar@alum.mit.edu
>>     
>
>   





reply via email to

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