peppy

`Proximated Emacs Powered by Python.

-- an XEmacs-like editor in Python. Eventually.

Latest version: 0.7.1.1 "The Winchester". Download here

This is the code name for my editor project, started as the project for my graduate school thesis and built as an educational experiment to attempt to demonstrate the modern software development process using the ReadySET project management templates.

A quick summary of features currently provided:

Multiple top-level windows

Multiple views of the same file (edit in one view and it shows up in the others)

Extensible file loading module (current support to load from http as well as file protocols)

Minibuffer ala XEmacs, including tab completion

Multiple language support: currently baseline implementations of Python, Makefile, C/C++ major modes

Other interesting major modes: Hyperspectral image view mode Music Player Daemon mode for controlling an MPD server



Development features:

Pure python source based on the wxPython widget toolkit

Most features coded as plugins - can enable or disable individual features at will

Scintilla styling code borrowed from Editra and I will continue to track Editra as more language lexers are supported

So, you're probably thinking that the world doesn't need another editor, and you might even be right. In fact, a really good editor does already exist, but as I describe in my vision document, I'm looking for a way to move beyond XEmacs.

So, anyway, it's my itch to scratch, and besides: I'm learning as I'm writing this thing. I do think it will be useful at some point, and to avoid NIH syndrome, I intend to borrow from existing projects as much as I can. The more you can use code that someone else developed, debugged, and tested means less code that you have to support yourself.

Currently, I'm still mostly working on the framework, despite a recent diversion into a music playing major mode. You can check out the status page for more info and downloads. The architecture is solidifying, so I suspect that I'll be focusing on adding more features to the Python editing mode in this next iteration.