I just came across this review and forum and thought I shoult put in a good word for jEdit, which has improved a lot over the years. I remember that, some years ago (maybe actually about the time when this text editor review was written), I tried jEdit, found it way to slow (as also stated in some old posts in this forum) and lost interest. Last year or so, I tried it again, and it has become by far my favourite OpenSource/freeware text editor for my programming edits in Perl, XSLT, XML etc., even though it primarily addresses the Java world (The PSPad descriptions here made me think though, I should check this one again, too, as a supplementary editor).
jEdit has become extremely powerful, and editing is not slow at all any more. Depending on the amount of plug-ins installed, it still takes some time to load though and then is not an option for a short edit on the quick; however, this is not really an issue for me, because I usually start it once and then let it run all day. Also I have a lot
of plug-ins installed (hum, many of which I had installed just for checking and have actually never used again...).
I can't give an in-depth review right now (time flies, you know...), but mentioning a few features that have fundamentally changed my way of editing, might be good to make you curious:
- Various quick search modes, search results shown per search task in a pane docked at the left and repeatable
In my installation, a search bar is permanently visible and accessible by different shortcuts, activating different modes, e.g.
Ctrl+Comma: find the text typed in the search bar and jump to the first/next occurence
Alt+Comma: dito, but taking over the currently highlighted text string
Ctrl+Period: Find all occurences of the currently highlighted string and list them in a separate pane (which I docked at the left, see below). This is called "Hypersearch" in jEdit.
The hitlist after Ctrl+Period shows all matchig text lines sorted by line in a collapsible node list; the actual match is highlighted within the hitlist line, and clicking on the line directly jumps to the word in the text. If you run another search, the former results stay available as a collapsed node so that you can check them again later and even redo them via the context menu of the node.
Since it is so handy (particularly with the side pane and the persistent result list), I use this feature all the time e.g. to quickly check where are declarations and references of a variable, how did I actually spell a word, how often does it appear, etc.
Full regular expression support and also searching several files at once are very helpful features, too (and an alternative plug-in, xsearch, provides some even more powerful functions, e.g. a "find all" that highlights all occurences in the text at once and allows you type the replacement life into the text - see also column editing below).
- Powerful column editing: copying and pasting entire blocks at any place, and typing text in several lines at once
I've never seen a column editing like here: I just keep Ctrl+Shift pushed and use the mouse to highlight a rectangular block independently of line starts and ends. Then I can paste this block somewhere as a new text block as usual. But I can also highlight another block and even a "column" of zero width (!) and paste the previously copied block into this newly selected area (you might have to try this out to really grasp it). I can also highlight such a zero-width column and type text (or spaces) which appears in every line of the highlighted block then. And I can even highlight several blocks/columns one after the other somewhere in the text and copy/paste/fill them alltogether (by using the "rectangular selection mode" and the "multiple selection mode" together).
This is extremely helpful, if I have to do formal edits or want to re-arrange table-like texts, where the first part of the lines should remain unchanged.
- File tabs can be displayed at the side (instead of top or bottom) and sorted alphabetically
I tend to work with a lot of files at once, usually. The usual file tabs being on top (or bottom) of the view frequently become awkward in this case: Either I have permantently to scroll in a single-line tab row, or I have several tab rows, which change their order all the time. Also, I personally have problems to find things, if they are arranged as a field; I find things easier if they are listed as a single row or column. I had the same problems in jEdit until I detected that I can also put the tabs at the right (or left) of the view, and that they even can appear sorted by file name and can get different colors depending on the file extension. This way, I have a pretty stable set of tabs which makes it much easier to jump between tabs (if I could even highlight certain tabs sometimes, that would make it even better, but there are always things to improve...). Actually, if I open too many files, it creates two or more columns, too, and I have the same problem as described before, but I can open far more files in this mode, before this happens.
- Highlight plug-in: Simultaneously highlighting different text strings all over the text in different colors (with regex support)
The "Highlight" plug-in is particularly helpful to analyze existing code or e.g. XML documents: Since I frequently need to understand how different text strings (e.g. XML tags) are used in relationship to each other, the search functions do not really help, because they cannot visualize relationships. The highlighter does not solve all these cases either, but frequently is a quick first helper in this case.
There is a lot more stuff, that I should describe here (e.g. keyboard shortcuts and/or macros assignable to virtually everything, language support capabilities incl. tag pairing in XML). And no question, there is also quite a few of things that could use improvement still. Also, since it is very extensible and adaptable, you will need a certain time to really take advantage of the possibilities (note that quite a few features are provided via plug-ins, e.g sorting text (including deletion of duplicates if wished) and also some of the column editing described above requires the TextTools plug-in). And: I suppose, this editor will not fit all your needs either, probably. For example, the hex editing plug-in is very rudimentary still (I'm sure though the jEdit community will welcome new contributors; unfortunately I do not have any Java skills at all). But even though I'm not part of the active jEdit community (not yet at least), I guess, you can sense my excitement caused by this editor, and I thought I should share this with you. If you like, give it a try.