Could Emacs be rewritten in Python?

Patrick K. O'Brien pobrien at
Mon Apr 7 01:19:43 CEST 2003

Sean 'Shaleh' Perry <shalehperry at> writes:

> On Saturday 05 April 2003 22:51, Patrick K. O'Brien wrote:
> > Here is the background.  I'm working on a file editor (called
> > PyAlaMode) using wxPython and Scintilla.  It's an extension of the
> > PyCrust code base.  I've got a basic version working, and it supports
> > editing multiple files and all the usual, basic features.  But I want
> > it to be as customizable and extensible as Emacs.  In fact, I want to
> > model it after Emacs, so that elisp code could be rewritten in Python
> > and work with PyAlaMode.  To do that, I've got to support the same
> > primitives as Emacs; expose files, buffers, regions, and windows the
> > same way Emacs does; handle the Emacs keybindings and ability to remap
> > keys, the same way Emacs does, etc.
> >
> I was actually pondering this earlier in the week as I read more of
> the elisp and emacs docs.
> One thing about emacs is that even though it is based on elisp most
> people can blissfully ignore that and just use it.  Please, if you
> make a newer, better, GUI editor with a Python backend do not limit
> it or even aim it at the Python community.  Make it the great new
> thing for ALL text editing.  This is why I use emacs over vi -- I
> can teach the editor about whatever it is I am editing and decrease
> the amount of time I spend typing in text. 6 years of vi and now a
> year and a half with emacs i can't imagine going back.  To get me to
> leave emacs will require something with all of emacs' might and more
> modern features.

I am aiming it for the Python community, but don't intend to criple it
in any way.  The underlying Scintilla text control can provide
coloring, indenting, folding, brace matching and such for a wide
variety of programming languages.  So the plan is to support whatever
Scintilla supports.  But the early focus is on Python features.

> real pop up hints, suggestive programming, etc as seen in commercial
> IDEs would be nice.  As much as the IDEs have improved they are
> still one trick ponies that can only be used to edit source so a
> real editor like emacs still wins overall.  Support for refactoring
> regardless of the language.  World peace.  you name it.

PyAlaMode already supports pop up hints and autocompletion for Python
source files.  Perhaps the Bicycle Repair Man folks can suggest ways
to integrate BRM for the refactoring features.

Patrick K. O'Brien
"Your source for Python programming expertise."

More information about the Python-list mailing list