Hi all, JEmacs [1] can run on KaffeVM with Sun's Swing implementation, swingall.jar, for using Swing-based GUI of JEmacs. I took cvs version of JEmacs, and did a small patch to get JEmacs run on Kaffe, which is attached in this mail. I took the screenshot:
http://jserv.sayya.org/kaffe/screenshots/jemacs.png http://jserv.sayya.org/kaffe/screenshots/jemacs2.png [1] http://jemacs.sourceforge.net/
diff -urN kawa/build.properties kawa-kaffe/build.properties --- kawa/build.properties 2003-05-10 03:01:37.000000000 +0800 +++ kawa-kaffe/build.properties 2004-04-02 15:02:05.000000000 +0800 @@ -26,14 +26,14 @@ # Ant's batch script doesn't choose it automagically when # JIKESPATH is set, contrary to what the comments say. # You can either fix your ant.bat script, or uncomment this: -# build.compiler=jikes + build.compiler=jikes # Whether to compile Kawa's AWT interface. # The default is to use AWT if java.awt.Component is in the classpath. # Uncomment the following line to not use AWT: # with-awt=false # Uncomment the following line to force use of AWT: -# with-awt=true + with-awt=true # Whether to use SAX2. #ignored if enable-xml is false. @@ -41,21 +41,21 @@ # Uncomment the following line to not use SAX2: # with-sax2=false # Uncomment the following line to force use of SAX2: -# with-sax2=true + with-sax2=true # Whether to compile Kawa's Swing interface. # The default is to use Swing if javax.swing.JComponent is in the classpath. # Uncomment the following line to not use Swing: # with-swing=false # Uncomment the following line to force use of Swing: -# with-swing=true + with-swing=true # Whether to compile JEmacs and ELisp support. # The default is to build JEmacs if with-swing is true. # Uncomment the following line to not compile JEmacs: # enable-jemacs=false # Uncomment the following line to force compilation of JEmacs: -# enable-jemacs=true + enable-jemacs=true # Whether to compile Kawa's XML/HTML support classes. # The default is true. diff -urN kawa/compile kawa-kaffe/compile --- kawa/compile 1970-01-01 08:00:00.000000000 +0800 +++ kawa-kaffe/compile 2004-04-02 14:59:54.000000000 +0800 @@ -0,0 +1,4 @@ +export CLASSPATH=/opt/jre/lib/rt.jar:/home/jserv/tarball/swingall.jar:classpath + +PATH=/usr/lib/kaffe/bin:$PATH ant $1 + diff -urN kawa/gnu/jemacs/buffer/EKeymap.java kawa-kaffe/gnu/jemacs/buffer/EKeymap.java --- kawa/gnu/jemacs/buffer/EKeymap.java 2002-11-15 23:51:04.000000000 +0800 +++ kawa-kaffe/gnu/jemacs/buffer/EKeymap.java 2004-04-02 15:21:34.000000000 +0800 @@ -374,8 +374,10 @@ } } int code = getKeyForName(name); - if (code == KeyEvent.VK_UNDEFINED) +/* FIXME + if (code == KeyEvent.VK_UNDEFINED) throw new Error("unknown key-name: "+name); + */ return code | ((m|PRESSED) << 16); } return 0; // FIXME toInt((KeyStroke) key); +