Sketch # 2 show an entry field at the bottom. This entry field shall be used for most user entries. This idea is of course stolen from Emacs. The idea is that you can run a lot of commands from there, even if you don’t know the shortcut for the command.
Sketch 2 - See the entry field at the bottom
I probably will use the classic “Alt-x” or better “M-x” shortcut for the entry field. This is meant as a homage to Emacs.
This little field seams not very significant, but I think it helps a lot to
- give the user a lot of power and
- streamlining the editing experience
at the same time.
Last time I wrote about a new programming and text editing experience and how the interface of such an editor should behave.
The other night I could not sleep hence I used the time to wonder about the look of the editor’s interface.
I draw a simple sketch:
Programming Editor Sketch 1
At first look the interface doesn’t seem so special. The most eye-catching differences are:
The Rest is pretty straight forward.
- Tabs (that will probably work like Opera’s)
- Status bar with Last Action, columns lines, etc.
- Line numbers on the left
Just as a reminder. The goal of the interface is that is never in your way and that you never need the mouse. Nevertheless the interface should go conform with important common interface standards.
I am unsatisfied of the state of programming editors. At the moment there is no editor that suits all my needs. Don’t get me wrong there are several great text editors out there:
- Emacs – The most powerful text editing system ever created
- Scribes – A simply and nevertheless powerful.
- Peppy – A simpler Emacs in Python
but no one works perfect for me.
Emacs for example has different short cuts than most other software (Yeah, I know you can change that), Schribes only works on Linux, etc.
Designing A New Experience
After searching and experimenting for the perfect editor, I was thinking: “Why not writing a new one?”. After all there is a lot to learn. At first I was thinking about the widget toolkit and features. Then is struck me. Designing from scratch means thinking beyond technical details.
I want a new editing experience:
- I want to learn from web apps like Remember The Milk and GMail
- I want to streamline the experience, there should be nothing that gets in your way
- The interface should be gorgeous. I think that is not emphasized enough in most editors.
- The editor should speed you up. Think snippets, call tips, auto completion, etc.
- The editor shall be lean.
Then I started experimenting with code…
The Bootstrapping “The Four Steps to Epiphany” series is suspended for a while.
That is because I was working on a small business plan to get some support money. So it is not bootstrapping any more.
In the next week I will come back to Bootstrapping “The Four Steps to Epiphany”. With financial support or not.