Thoughts about using J-Edit for Statistical Computing, HTML, and LaTeX

JEdit is a free, cross platform, text editor that has standard user interface, has really handy features like incremental search and dynamic word completion, and is being actively maintained. Most quantitatively intensive social scientists spend hours editing text; and the right text editor can trim frustrating minutes off of those hours. I've had a chance to look through a variety of options and discovered that the list of programs with these attributes is surprisingly short -- and came to the personal conclusion that JEdit was my favorite option. (I'm not alone: MIT likes it too.)

jEdit is clearly written by nerds for nerds. The user interface is not quite standard, but it's close. You might want to refer to the list of keyboard shortcuts.

If you take advantage of nothing else, try jedit's incremental search (ctrl+, by default) and word completion (ctrl+b by default). I have a strong view about word completion: 1) programmers should use long, descriptive variable names and 2) they should use word completion or an abbreviations system to automate the typing. (JEdit also has a very nice abbreviation system available in the form of the SuperAbbrevs plugin, which can automatically paste in predictable hunks of latex or SAS code and then help you fill out the unpredictable parts of them. It syntax highlights e.g. SAS, LaTeX, perl, and python code out of the box; and can highlight e.g. Stata Mathematica, and Matlab by downloading and installing files. Many of the syntax highlighting XML files have header comments that provide recommended catalog entries to complete their installation. Note that installing the Matlab and R syntax highlighting typically requires not only adding Matlab and R catalog entries, but removing the .m and .r file extensions from the Objective C and Rebol catalog entries.

Configuring JEdit to work well for database wrangling and LaTeX/HTML editing jEdit's `out of the box' configuration is flawed for wrangling with large databases and editing LaTeX and HTML:

More features: There are a bunch more features that I am yet to spend enough time working with, like editing rectangular blocks, multiple clipboards (so you can cut a bunch of things from one part of a program; then paste them back in several other parts of the program), and "folding" that may let you e.g. display just the error messages in a SAS .log file. (I learned to write SAS code using the all-but-dead KEdit program, which had commands that felt like interactive grep that would let you hide every line that did not contain a specified string like "error".) I have not explored the plug in options nearly as much as I could.

Beta Versions jEdit is perpetually in Beta, but they acknowledge this, have very stable betas, and encourage everyone to use a beta version. I've been happy with several beta vresions (at one point, I think I gave one beta problems when I tried to run a regular expression replace. Regular expressions are wickedly powerful and can save a lot of time, but they're admittedly esoteric.)

Sharing or moving configuration files: jedit creates a folder called:

\Documents and Settings\username\.jedit
which contains a plain text file called properties. When we make changes to jEdit's properties using the GUI's tools/global options it modifies this file. And JEdit's default configuration file along with its readme lives in the following folder on Windows:
\Program Files\jEdit\properties