It seems the old synpl project is like a fungus, it never dies if left alone in dark corners with high humidity.
I'm going to try again. This time, no super PL/SQL editor, no C compiler... but a structured editor.
Why? I'm very impressed with the usability of org-mode in Emacs and I want that kind of functionality (moving around content as if it was a tree) in other editing tasks.
I guess this experiment will die an unspectacular death like the previous ones. Well, if that's what it takes to keep the project alive...
Enough rambling. Time to actually use this blog space for something practical (and maybe useful to others).
Since I am not completely crazy, I don't want to implement an editor from scratch. I also don't want to use emacs (somehow elisp seems hard to use for large projects). I will use... gedit.
Yes, the puny notepad like editor distributed with Gnome.
Actually, it turns out that it is a very nice editor. For my purposes, at least. Because it has all the features I want (stylable editor, an API - in Python and explorable with a REPL, no less).
So my learning tasks are now these:
- Learn the Gedit API.
- Write an editor wrapper lib for the functionality I need (so I can switch to IronPython and ScintillaNET if I want to port my little scripts to Windows).
- Write a Scheme/Lisp parser (or use an existing one) and test the usability of the structured approach.
- Keep going with a JavaScript parser and structured editor.
- Extend the JavaScript parser to support QooxDoo and project files (discovered automatically from exploring the file system neighborhood of the current file).
- ... hmmm, profit? (mentally, at least)
- Get the cursor position.
- Set the cursor position.
- Get the current selection.
- Set the current selection.
- Change text.
- Colorize text.
- Handle keyboard shortcuts.
No comments:
Post a Comment