Tag Archives: editor

Roadmap For Gonzales 0.02

For version 0.02 I have the following features in mind:

  1. A simple help system, that shows you the most important features in a consistent way
  2. A snippet system like the ones from Textmate and Scribes. Probably I will steal most of the code from Scribes. Mysteelef’s snippet system is just awesome.
  3. Auto – Indentation hast to be build, especially for Python programming. I think IDLE is working quite fine with Python 🙂 The other languages will become a simpler auto-indentation system.
  4. A way to load a file via command line in one instance of the editor.
  5. Right now the status messages in the status bar are only dummies. I will have to find a way of refresh the state of the status bar.
  6. I want some kind of recent files dialog. Simular to the recent files dialog of Emacs. I think wxPython doesn’t provide any facilities for that, so I have to write it by my self.
  7. Intelligent logging of events and properties. That point needs a lot of thought, what do I want to track, maybe the size of the window, etc.
  8. Auto braces. Here again I will borrow a lot from Scribes. The way the braces work in Scribes is just gorgeous.
  9. Better highlighting. Gonzales needs more highlighting files for languages different from Python
  10. Develop ideas for shortcuts – I have to think about the best use of shortcuts. This is a crucial part of the user experience. A lot of nice ideas can be found on http://xahlee.org/emacs/ergonomic_emacs_keybinding.html.

That’s it for version 0.02. It is a awful lot of work 🙂 But I think after version 0.02 is finished Gonzales could be usable for simple programming tasks.

Gonzales 0.01 Is Out

I played around with the idea of programming my own editor.

I finished my first iteration which I call version 0.01. It is of course more a kind of a prototype than a complete editor. But like every iteration/version it includes 10 new features. (Ergo version 0.1 will include 100 features.)

Features

Now lets introduce the features with screen shots and explanation:

1. Basic Design Ideas (Opera, web2.0 style [rtm, gmail])

Gonzales Main Window + File Switcher

Gonzales Main Window + File Switcher

Gonzales got an reduced window without menu and icons to save screen space and lead the user to the use of shortcuts. The file switcher works like the one from Opera. If you use <Ctrl>+<Tab>, Gonzales show you the last used file. Colors will probably change until version 0.1

2. Autosave (no save as…)

Gonzales saves your file every time it looses focus. There is no such thing like “save” or “save as …”. Every time you create a new file you will be asked for a name and you have to stick to it. If you want to change names you have to use a file manager or something similar.

3. Spaces Instead Of Tabs

All Tabs will be converted to spaces at the moment. Like most features it can easily changed in the configuration files.

4. Tab Width 4 Spaces

This one is closely related to feature 3. Tabwidth is set to 4 spaces.

5. Show Dot For Space

Gonzales shows a dot for every space. This is especially useful for programming python. It can be easily changed in the configuration file.

6. Loading Of File Via Command Line

You can load files via command line. I know this is nothing special, but it was an important feature for me. Right now there is no server to open a new file in a running instance of Gonzales. This will be implemented soon.

7. Set The Right Working Directory

A quite complex algorithm determines which is the current working directory of Gonzales. Usually it is the one of the active file.

8. Simple Open Dialog

Simple Open File Dialog

A Simple Open File Dialog

Gonzales has a rather simple open dialog, it will get pimped later, but I needed a solution for opening files for testing purposes. If you enter an absolute path this path will be used. If you enter a relative path it is relative to the current working dir.

9. Gonzales Closes If Last Tab Is Closed.

Some of you might know this feature from a Firefox plugin. If you close the last tab,
you close the whole app.

10. Basic Syntax-Highlighting

Python Syntax-Highlighting

Python Syntax-Highlighting

Gonzales has syntax highlighting for Python implemented. Highlighting for other languages can now be easily added trough configuration files.

Download

If you want to download Gonzales and play around with it:

http://rockiger.googlecode.com/files/gonzales-0.01.tar.gz

The code is GPL3. Tell me what you think.