I've been thinking about a response Mark [1] made to the entry yesterday [2] about editing HTML (HyperText Markup Language). He suggested two possible editors—the Mozilla Composer [3], which is scriptable with XPCOM (Cross Platform Component Object Model) [4], or EMACS (Editing MACroS) [5], the Microsoft Office of Unix editors (only programmable). It's a possible starting point for a decent HTML editor, but I know next to nothing about programming either one.
What I do know is that I'm not a fan of EMACS (Editing MACroS). The default key bindings (“Escape Meta Alt Control Shift”) are horrible (rumored to cause its author RMS Carpel Tunnel Syndrome), and at 710,000 lines of code (66% in Lisp, 33% in ANSI C, 1% miscellaneous as reported by SLOCCount [6]) it's quite the resource hog (“Eighty Megs And Constantly Swapping”) and my Lispfoo isn't all that strong (“What do you mean than 2 isn't necessarily equal to 2? What's up with that?”) so it would be tough going for me to use EMACS.
That leaves the Mozilla Composer and XPCOM (Cross Platform Component Object Model), which is C++, and my C++foo isn't all that strong either, and I haven't done any GUI (Graphical User Interface) work in years (and that was mostly under Windows 3.x, the Amiga and Xlib [7], which is about as low as you can get under X Windows [8]) so that route would be very tough for me as well.
Which begs the question as to how the stuff I mentioned yesturday should work. This is about the fourth revision to this entry I've done so far, and it's been constantly switching between the editor (joe [9], at 19,000 lines of C code—hmmm … wonder if it'd be easier starting with joe) and browser (Mozilla, which is easily over a million lines of code), doing various searches and loading of pages to gather all the information for this entry (which so far has taken over an hour to write).
And you can see that I lost my train of thought there as I was doing research and marking up this entry.
Sigh.
[3] http://www.mozilla.org/editor/
[4] http://www.mozilla.org/projects/xpcom/
[5] http://www.gnu.org/directory/GNU/emacs.html
[6] http://www.dwheeler.com/sloccount/
[7] http://tronche.com/gui/x/xlib-tutorial/