Sunday, 18 March, 2001

Selecting a Text Editor

Nothing will start a religious war among programmers faster than asking for suggestions on a text editor.  The Linux vs. Microsoft discussion is a love fest compared to the hundreds of editor wars I've seen over the years.  Language wars rank right up there, but text editors take the crown.

I do most of my day to day work in the Delphi or Kylix IDE, and use a standalone text editor only when I need to open some other type of file (writing a quick Perl script, for example, or viewing a log file).  What I look for in an editor is:  starts quickly, responds to normal cursor movement commands, ability to view multiple files, a line and column counter, and ability to tell if the file's been modified externally (for example, when you're viewing a log file that's being updated).  Syntax highlighting is very nice to have, and some other features are quite useful.  I can't remember the last time I needed to write an editor macro, although I do from time to time like to record and playback keystrokes.  Basically, what I want is small, fast, and easy to learn and to use.  Notepad on Windows 2000 almost fills the bill.  For Windows, I think I've found what I'm looking for in TextPad.  Linux is another story.

I've found that I spend more time at the Linux command line than I thought I would.  So I really need two text editors:  one for text mode and one for X.  I have no love for the common text mode editors vi and emacs.  vi (and vim) is just a wrapper around an old line editor, and I find the constant switching between edit mode and command mode to be horribly distracting.  Software in general, and editors in particular should be modeless.  emacs suffers from the same mode problems, and adds a wonky command syntax to the mix.  Plus, emacs is horribly slow coming up on my system.  Today I tried every text mode editor on my SuSE distribution CDs.  They ranged from horrible to almost good, but I didn't feel like I could get comfortable with any of them.  I'm still looking.

For X, I ran across NEdit, which looks very promising.  There's also a version available for Windows, so I might actually get to use the same editor on both platforms.  Wouldn't that be something?