Users:
- Installation Guide (coming soon)
- User's Manual (coming soon)
Developers:
Users:
Developers:
This editor is an attempt to displace my dependency on XEmacs. My goal is to produce a work-alike with the feel of emacs but based on Python using the widget toolkit wxPython.
This project started out as my graduate school thesis, built as an educational experiment to attempt to demonstrate the modern software development process using the ReadySET project management templates. However, the code that started out as a means-to-an-end has grown beyond its original purpose of demonstrating the software development process. It's now quite usable and useful.
I needed an problem to solve that would maintain my interest. I eventually turned to writing a framework that would wrap the wonderful Scintilla editing component in the style of XEmacs. I love XEmacs, but my basic problem is this: I don't want to keep space in my brain to remember Emacs Lisp. I tend not to write elisp code very much, so in the past when I wanted to enhance XEmacs, I had to try to relearn it. (This doesn't even begin to address the fundamental lack of reference guides for elisp libraries.) Delving into elisp gets less and less appealing as time goes on and my brain gets filled up with other stuff.
If the editor were written in Python, I'd have no problem blasting out the enhancement. Problem is, there are no Python editors that are enough like XEmacs to make me switch.
Everybody and their dog's brother's owner's pet's sister's husband's half cousin seems to have written an editor. Apparently all those folks don't mind being constrained to a single window, but that's the one thing that I can't stand. I have windows open all over the place and like that flexibility of the multi-window, multi-tab interface like XEmacs or Firefox.
There are some editors out there that are written in Python, including SPE and PyPE, but for one reason or another they haven't convinced me to switch. Other editors in current development, like Editra and UliPad don't have the flexibility to have arbitrary major modes -- they are hard-coded to edit text and nothing else.
I spend a lot of time evaluating other editors, and none were flexible enough to handle what I needed without a total rewrite of their base code. Why do that when you can start from scratch?
While peppy also aims to be a text editor, like emacs it has a broader scope by providing major modes that use the MVC paradigm to present multiple editing interfaces to the same data.
When I talk about XEmacs feel, I mean the usability of the editor itself; I'm not going for any sort of compatibility with elisp or any of the naming conventions of the inner workings of XEmacs. I don't aim to support or reimplement every elisp packages out there, especially those not related to editing text like reading email or news or showing phases of the moon or crazy quotes from Zippy.
Well, except Zippy. And maybe Psychoanalyze Zippy! And hex edit. Towers of Hanoi. Tetris. Hangman. And possibly even phases of the moon. But not all at once, and not right away. First, I'll be focusing on source code editing.
But, hopefully the framework will be easy enough to understand that contributors like you will want to add a major mode that you liked from XEmacs and that doesn't exist in peppy.