emacs-devel
[Top][All Lists]
Advanced

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

RE: Emacs learning curve


From: Drew Adams
Subject: RE: Emacs learning curve
Date: Mon, 12 Jul 2010 15:03:10 -0700

> >> Obviously, there is no reason to choose words perversely
> >> (e.g. use "red" when we mean green).
> >
> > Or use "scroll-up" where it means scroll down, or use 
> > "split-horizontally" where it splits vertically ;)
> 
> Good one.

Actually no, bad one.

I specifically chose red/green and _not_ up/down, because up from one vantage
point is down from another.  _Not_ so for red/green.  It is not perverse to call
something "up" which someone else might naturally think of as down - it depends
on the context.

The question of whether to consider scrolling from the point of view of the view
port / window or the point of view of the paper / data surface / buffer (which
is moving?) is as old as the hills.  And the answer sometimes depends on the
particular application in a logical way (think cockpit); otherwise it is
arbitrary.

Similar considerations apply to splitting horizontally/vertically.  We can all
agree on which is horizontal and which is vertical between _ and |, but what
happens when something is _split_ horizontally?

As soon as you say "split", the ambiguity/choice goes away.  A different verb
choice could have been made.  If the choice were to call it "duplicating" the
window, then it might make sense to call what we call horizontal splitting
"vertical duplicating": you duplicate a window above or below itself.

But with the point of view of splitting (the verb), the answer unambiguosly
agrees with Emacs terminology - you do in fact split the window horizontally.
Take an axe, hold it horizontally, and split the window.  Go ahead.  You get two
windows disposed vertically, one above the other.  It is simply incorrect to say
that "`split-horizontally' splits vertically".  Bad one, I'm afraid.

Looking at the _result_ rather than the action of splitting, you can indeed make
the point that the result is a vertical configuration.  That's what you see,
vertical placement, and that's what you care about, so you could well argue that
`vertical' should be part of the name somehow.

But you could also argue that the window dividing line, which is also a result,
is horizontal.  It's arguably a toss-up, but I would agree that the windows and
their placement are more important than the orientation of the divider.

But wrt the action, if it is viewed as a splitting action (and not, say,
duplicating), there is only one correct answer: the terminology that Emacs uses.
Should Emacs have chosen to think about the action as splitting?  Should Emacs
have emphasized the verb/action and not the resulting positions?  This is
arguable, but it's not terribly interesting either way.

What's the point? (1) The Emacs terminology for up/down vertical/horizontal
(split) is not silly.  (2) Some such things are arbitrary, or you can at least
come up with reasonable arguments for either choice.  (3) The same is not true
for other things, such as red/green.  And that's why I purposefully chose
red/green for my example.

So no, the petty put-down, trying to use `split-horizontally' to point out how
Emacs chooses words perversely, is simply not well thought through.  I'm sure
there are some examples of poor word choice in Emacs terminology, but your
argument based on the example of up/down is specious.

And what might seem "natural" to you wrt what scrolling "up" means is not
necessarily natural to everyone or, especially, to all contexts.

Some graphical design systems have both notions of scrolling (and other
view-port vs paper movements): they let you work either way, thinking either
that you are moving the window over the paper or moving the paper under the
window.

Different contexts can make one or the other point of view (and terminology)
seem more appropriate/natural.  And apps that provide alternative contexts also
employ both terminologies - they speak about both panning the view port left and
panning the paper left, meaning opposite directions.  Users can handle this
degree of complexity. ;-)

None of this is trivial or unimportant - words do matter.  And none of it has
been designed in Emacs without thought, I am sure.  That's not to say that there
is never room for improvement.  It is to say, "a little humility, please"; you
might not be the first person to think about this.  And things might not be as
silly or unnatural as you think.

(Disclaimer: I was not involved in the Emacs choices for scroll "up" or split
"horizontally".)




reply via email to

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