Moving to jEdit (from XEmacs)

I've been using XEmacs as my primary text editor forever. However, it has some annoying features that have bugged me over the years:

  1. Syntax coloring is somewhat limited - not enough unique "things" can be colorized.
  2. Certain modes (e.g. python-mode) have a "shift block left/right" feature, but it is not available in all modes.
  3. HTML mode is a pain. First, it asks for my email address every time I start a new page, so it can create an annoying template that I have to delete, and secondly the formatting really doesn't work very well.
  4. When I edit C/C++ code on my Windows XP machine, and edit the same code later under Linux, the formatting is not the same. For some reason the indentation gets screwed up. (Possibly a version-creep thing between the two machines, but still, it shouldn't get screwed up.)

I've tried many editors over the years as a replacement (vim, cream, NEdit, jed), but none have matched XEmacs, so I've lived with its misfeatures. I had tried jEdit a few times before, but stumbled on two things:

  1. I've found no way to assign a shortcut to run an external process like "make". This is an area where XEmacs really shines. After "make" runs, you get a clickable list of errors and can immediately jump to the problem spots. jEdit seems to have no equivalent functionality, though I'd love to hear that I'm wrong on this.
  2. Although jEdit is cross-platform, fonts under Linux (xorg-x11) are really limited and ugly for some reason.

So I trudged on with XEmacs ...

The final straw for XEmacs came last week as I was editing some HTML and PHP code for the site, and XEmacs kept splitting the screen to give me a really bizarre error message that I could neither track down nor figure out how to turn off. Editing any HTML/PHP page seemed to do the same thing. Given the other warts, and since I'm getting into an HTML/PHP phase right now, I decided to make the plunge and try to switch to jEdit.

So far I've been pretty happy with jEdit:

  • jEdit has functional equivalents for all the important XEmacs features I use (except launching an external "make" command ...), so I have all my usual keyboard shortcuts set up.
  • The macro recorder seems far easier to use than XEmacs, and I've written a couple of custom macros already (I'm neither a Java nor Lisp programmer, but Java scripting seems a lot easier to pick up than elisp ever was).
  • jEdit has a better syntax highlighting, with what seems about twice the categories of "things" that can be colorized.
  • Python mode works "like it should" without weird undocumented settings like XEmacs needs.
  • Block shift left/right is an inherent feature that works in all modes.
  • I really like that it reloads the files I was working on when I last exited. I hate when I have a set of files that I'm working on, but have to logoff at the end of the day, etc., and lose my place. [Now if only I can get Firefox to do a similar save/restore with multiple tabs, I would be set!]
  • I was initially annoyed by the "Open File" dialog, but discovered that you can use the arrow keys to navigate, so the mouse isn't needed.

Things I don't like:

  1. There doesn't seem to be a way to set keyboard shortcuts on a per-mode basis (i.e. so you could have different shortcuts when editing HTML vs. Python). XEmacs supports this (although you have to do some elisp editing to make it work).
  2. I can't figure out how to run an external compiler, as mentioned already. (Since 95% of my programming these days is in Python, I don't really miss the lack of C/C++ support via running an external "make", but I'd still like to solve this one of these days.)
  3. The Linux/xorg-x11 fonts are still uglier than on the Windows side. I can't figure out how to make it use the other TTF fonts on my system.
  4. I map a lot of shortcuts as ALT+something, yet jEdit keeps trying to grab the ALT and activate an item on the menubar. Its a weird focus thing, but annoying. It seems like if I'm typing in a window then everything is OK, but if I click outside, then come back, it doesn't refocus correctly until I start typing again. Annoying, but not a fatal flaw.

All in all, I'm very happy with the jEdit experiment. Hopefully I will find answers to a few of the things that are still bugging me about jEdit and will post an update when/if I do.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

My problems with jEdit

I happen to be switching text editors myself.
I used to use NoteTab Pro (a proprietary Windows editor without syntax highlighting), but decided to switch for a number of reasons, and bumped into jEdit not so long ago.

On the whole, I am very impressed with jEdit, but there are a couple of minuses that I find it extremely hard to live with:
  1. Its slowness: on my laptop with Windows XP SP2, Java 1.5.0_09 and very little free hard drive space left, it takes ages to start up. When switching to another application, it takes a few seconds for the other application to receive full focus. [I've just switched from Java 1.5.0_05 to Java 1.5.0_09, and it seems to be a bit faster now.]
  2. This one really kills me: I cannot switch from jEdit to another application with the ALT+TAB key combination and am forced to use the mouse to switch applications. It works the other way around, though, (quite logically) and the help viewer doesn't have this problem either.

By the way, I was considering XEmacs and Vim as well, but having read your post, I'm not so sure if it's worth the trouble, and if only I could get the ALT+TAB glitch fixed, I think I might stick with jEdit.
Written in WikklyText.

Problems with jEdit

I'm with you on the startup slowness on some machines. I tend to just leave it running all day once it starts (although to be fair, everything is slow on the particular machine I'm talking about).

As far as the ALT+TAB problem, I haven't noticed that myself. I'm running under XP most of the time nowadays and haven't seen this. I don't recall having to do any special tricks to make this work. I know that doesn't help you, but "works for me".

keyboard shortcuts on a per-mode basis

I've been using XEmacs regularly for more than a decade, but a few months ago I came across jEdit and I absolutely love it! It has almost all the features of XEmacs but with a more modern GUI. The macro language (BeanShell) is also a lot easier to learn if you have a Java background. Regarding your comment about lack of support for mode-specific keyboard shortcuts, check out the "Shortcut Saver" plug-in.

Shortcut saver

AH! Thanks for the pointer to shortcut saver, I had not seen that before!

For anyone who is interested: Don't bother googling, just go to: Plugins -> Plugin Manager ... from within jEdit and select the Install tab. You will find "ShortcutSaver" in the list.

the console plugin should

the console plugin should work for running external applications...

Me too using jedit... Even

Me too using jedit... Even though i've been using gnu emacs for quite some time i think that jedit has all the features i want from emacs with added ease of customization. Currently i am using the latex jedit mode with the sidebar and it really shines. The c-c++ browser of jedit is adequate too. The multitude of plugins is amazing and one more really important thing: On linux with the latest version of java (mustang) the font rendering in jedit is amazing. I could dare say it blows freetype away for sure. Smooth fonts and delicate hinting. Fun to edit code i must say !

You can store the state of

You can store the state of all your Firefox tabs with the SessionSaver extension. An essential extension to me. For your font issue, I'm thinking that you might try some of these:

http://corefonts.sourceforge.net/

http://linux.org.mt/article/ttfonts

http://www.users.bigpond.net.au/gavindi/

http://www.icewalkers.com/Linux/Howto/TT-Debian-7.html

I wonder if you'd be happier with GNU Emacs than XEmacs? Personally, I've been using vim lately, though wanting to check out GNU Emacs once again. I started out with GNU Emacs, then went to jed, and then to vim. And then of course there are the IDEs like Eclipse and such, or if you're doing mostly Python, you might like one of the Python IDEs like Komodo, IDLE, PythonWin, Eric3, etc...

GNU emacs vs XEmacs

I haven't used GNU emacs in years, so maybe they've gotten better X support since then, but that why I always used XEmacs. I've never been much of an IDE person, although I still use "F9" as my "compile" keyboard shortcut, which I think dates back to Borland's Turbo C++ IDE :-)

For anyone else running Gentoo, there is an excellent HOWTO on Xorg fonts here:

http://gentoo-wiki.com/HOWTO_Xorg_and_Fonts

Once I broke down and followed the steps, I've been much happier with the font situation.

I'll have to give SessionSaver a try -- though I'm having trouble figuring out where the latest version is? Can you post a link to a good version? (Using Firefox 1.5 here.)

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Post new comment

The content of this field is kept private and will not be shown publicly.