It is useful to have different versions of the JVM installed, for a number of reasons:
- Different optimisation features from different JVM implementations
- Different language features from different JVM versions
- Java classes compiled with “Tiger” won’t run in “Mantis”…
It is also useful to be able to quickly switch between installed JREs/JDKs depending on the task at hand.
If I’m hacking in Linux, the JPackage project provides a much nicer solution to this problem, and the Linux distro’ I’m using (SUSE 10.0) uses JPackage. It’d be nice if there was an
update-alternatives for Cygwin, but since there isn’t I’ve come up with this hack.
I finally got fed up enough with Courier New to start searching for a legible, monospace font to use in jEdit. In Emacs, I’m particularly fond of the standard X font “misc-fixed” (though it’s a little tough to tell appart O and 0 still). But for jEdit, the Java monospace font seems to map to Courier New in Windows, and to some God-awful font on Linux.
I’ve been playing with customising jEdit a little bit, and decided to have a go at writing some simple date insertion macros. These perform the same work as some old elisp functions I wrote years ago in Emacs, to insert date/time stamps in various formats. In my
.emacs file, I bind these functions to short-cut keys, and then use them for updating Changelogs in code and in offline journal entries.
While I’m on the subject of Cygwin hacking, I discovered this man-page about the Cygwin X server: type
man XWinrc and read about how you can hack your systray icon to include a little launcher menu for you favorite X clients 8)
I don’t know why I haven’t ever got around to this, but here—finally—is a hack to have Cygwin only ever start one instance of emacs (especially important in cygwin, because Win32 does not appear to share program texts between processes… )