🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #99429

Re: philosophical bugs in emacs

#99429
From: Scott D Kalter
Date: Thu, 06 Sep 1990 17:13
48 lines
2815 bytes
In article <9009051757.AA20732@life.ai.mit.edu> gildea@ALEXANDER.BBN.COM (Stephen Gildea) writes:

   Path: twinsun!ucla-cs!usc!wuarchive!cs.utexas.edu!uunet!tut.cis.ohio-state.edu!ALEXANDER.BBN.COM!gildea
   From: gildea@ALEXANDER.BBN.COM (Stephen Gildea)
   Newsgroups: gnu.emacs.bug
   Date: 5 Sep 90 17:57:10 GMT
   Sender: daemon@tut.cis.ohio-state.edu
   Distribution: gnu
   Organization: GNUs Not Usenet
   Lines: 70

   You didn't quite say it, but I gather you don't like the fact that M-b
   and M-f don't position point the same way.  M-b leaves point after the
   space between the words, and M-f leaves it before.  This bugs me, too.

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

I think you will find many parts of emacs much more intuitive if you
simply read the second paragraph of section 1.1 "Point" of the Emacs
manual.  I include it here:

"While the cursor appears to point *at* a character, point should be
thought of as *between* two characters; it points *before* the
character that the cursor appears on top of.  Sometimes people speak
of "the cursor" when they mean "point", or speak of commands that move
point as "cursor motion" commands."

I find that many people get very confused about the effects of various
operations before they realize this.  In your case, moving forward and
backward a word makes perfect sense when the cursor is viewed as a
thin vertical bar on the left side:

	|word	(after backward word)
	 word|  (after forward word)

Given this model, where else could you possibly think the "cursor"
should move to?  Think about the function transpose-characters, under
normal circumstances (i.e. not at the end of a line) it swaps the
characters on either side of the point (vertical bar) like:

	f|z  before swap
	zf|  after swap (it happens that transpose characters is also
			 defined to move the point forward by one)

I hope this model helps in clarifying some operations for you that
really do make sense in the right context.

-Scott D. Kalter	<sdk@twinsun.com>
Technical Details
Message-ID: <SDK.90Sep6101349@shadow.twinsun.com>
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!aplcen!uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!usc!orion.oac.uci.edu!ucivax!ucla-cs!twinsun!twinsun!sdk
References: <9009051757.AA20732@life.ai.mit.edu>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,ad6f12f51d80670c
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1990-09-06 22:28:25 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!aplcen!uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!usc!orion.oac.uci.edu!ucivax!ucla-cs!twinsun!twinsun!sdk
From: sdk@shadow.twinsun.com (Scott D Kalter)
Newsgroups: gnu.emacs.bug
Subject: Re: philosophical bugs in emacs
Message-ID: <SDK.90Sep6101349@shadow.twinsun.com>
Date: 6 Sep 90 17:13:48 GMT
References: <9009051757.AA20732@life.ai.mit.edu>
Sender: news@twinsun.com
Distribution: gnu
Organization: Twin Sun, Inc.
Lines: 48
Posted: Thu Sep  6 18:13:48 1990
In-Reply-To: gildea@ALEXANDER.BBN.COM's message of 5 Sep 90 17:57:10 GMT
Nntp-Posting-Host: shadow