Could Emacs be rewritten in Python?

Ian Bicking ianb at colorstudy.com
Sun Apr 6 23:58:06 EDT 2003


On Sun, 2003-04-06 at 21:26, Alexander Schmolck wrote:
> He certainly knows about Emacs (have a look at the index of his book), but I
> guess obtaining patents and attracting attention as some sort of visionary is
> unnecessarily complicated by pointing out the prior art yourself. 

I'm not sure if that's better or worse than ignorance...

> And although
> the most crucial (and brilliant) idea, incremental search, is nicked (and
> uncredited on his webpage), the quasi-modal character (i.e. that you have to
> keep the search key pressed) of LEAP (tm, patented and what have you) seems
> like an actual difference -- you don't have to press return/C-g/movement
> commands to get out of it, which I would guess (I haven't tried it -- no mac)
> makes it more natural for moving in text (it also places the cursor at the
> beginning of the match, I think, which seems similarly useful for moving
> around).

I did try THE out, though only a little.  I seriously doubt that the use
of shift would become natural, even after more heavy use -- it binds
your hand in a certain position, which makes natural typing difficult. 
You can't even switch shift keys.  But it might be reasonable if you
were holding down a key with your thumb... I think he mentions that,
though most keyboards don't have an available thumb-accessible key, so
he settles for shift.

By his technique for analyzing simplicity of keyboard shortcuts, the
shift technique isn't really better than C-S.  They both involve three
key hits (Shift-Space-period vs. Control-S ... Enter).  And the C-S form
doesn't involve hitting many keys simultaneously.  The quasi-modal stuff
is an idea, but not a successful one.  Maybe it's meant to handle the
multi-key sequences that Emacs has.  Doing LEAP AGAIN is also
particularly painful.  Common commands have to be easy to type.

Given a novel form of input device, perhaps there's something to what
he's trying to do.  I'm skeptical, though.

> > Now, I'm not saying Emacs couldn't be improved.  But it's a far, far
> > better starting point that "modern" text editors.  I'm thoroughly
> > convinced that modality is the superior interface for most situations,
> > and I think GUIs are leaning more in that direction as time goes on.  I
> > think this is why vi remains popular -- even though I personally don't
> > like it -- because it's modal.  At least anything that's keyboard
> > friendly should be modal, and a text editor that isn't keyboard friendly
> > is clearly stupid.
> 
> Huh?

Which part?  Obviously text editors need to be keyboard friendly.  I
believe to be friendly you have to be modal, because manipulating focus
with a keyboard is awkward and error-prone.  There might be better ways
to display your context, but displaying context isn't the same as a
non-modal interface.

> Squeak also happens to sport an UI element whose usefulness seems incredibly
> obvious to me but which I haven't seen anywhere else (exchanging contents of
> current and prior selection).

That does sound like a good idea.  On the topic of funny little UI
features, Oberon had neat scrollbars, kind of like Xaw scrollbars, only
when you did a left click, the line parallel was placed at the top of
the screen.  Right click and it was placed at the bottom.  It was great
for reading text, because you'd know exactly where to pick up on the
next page (since you were actually indicating exactly how the next page
should display).  While you can't do it in the scrollbars, I guess
that's easy enough to do as a keyboard shortcut in Emacs... I'll have to
add that shortcut and try to start using it...

Anyway, I'm sure there's a bunch of interesting UI ideas out there, most
in now-dead projects.  There must be a graveyard of user interfaces out
there somewhere... 

  Ian







More information about the Python-list mailing list