Could Emacs be rewritten in Python?

Patrick K. O'Brien pobrien at
Mon Apr 7 01:11:47 CEST 2003

"David LeBlanc" <whisper at> writes:

> > The main reason I started PyAlaMode is that I wanted the same
> > autocompletion and calltips that I've got in the PyCrust shell, but
> > while I'm editing a file.  Those features are working now, and are
> > pretty sweet, if I do say so myself, since they are based on dynamic
> > namespaces updated whenever you want, one per buffer, with no
> > conflicts no matter how many buffers you have open, with automatic
> > reloading of imported modules.
> Scite (based on Scintilla) has calltips and auto-completetion and is
> friendly towards Python. It's multi-platform too. I've often thought a
> python-scriptable Scite would be a great thing. I'd bet that wrapping (boost
> or swig) the main scite (C++) class would give you a lot of the same
> primatives as emacs. Graft on user keystroke assignment and you're well on
> the way...

PyCrust and PyAlaMode are both based on Scintilla as well.  In
wxPython the Scintilla wrapper is called wxStyledTextCtrl.  The
difference between PyAlaMode and Scite is that the autocompletion and
calltips in PyAlaMode are dynamically generated based on the namespace
of the module being edited whenever the user decides to update the

In short, I'm already doing what you're suggesting.  ;-)

But the primitives in Scintilla aren't quite the same as the
primitives in Emacs, so there is still work to be done in taking this
to the next level.

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

More information about the Python-list mailing list