Finally I've had time to get to the backlog of patches aimed at the
next release of the 21.4 series.
Once I've finished with 21.4.4, I'll try to roll up a 21.5 beta. This
will likely exhaust my available time before my vacation (7/30--8/6
upstate NY, 8/6--8/12 Bay Area). I expect to be in email contact, but
not CVS-able.
I'd like to avoid the kind of fiasco that happened with 21.4.2, and
I've also had too many context switches since early May to really be
on top of things. So I'd appreciate it if people would scan the list
of changes below for any glaring errors of omission or commission.
I've still got some checking to do myself (especially Windows builds),
and a few outstanding patches for Japanese I haven't decided what to
do with, so I'm targeting next Monday (7/23) for the release. All
problems are my responsibility, of course, but your help would be very
welcome!
Ben, do you remember what the story is with set_file_times()? Adrian
thinks it's essential, but it seems from your discussion that his
patch shouldn't actually be any help. Is the mouse-track-insert stuff
safe/recommended for 21.4? (The set_file_times patches are IN, the
mouse-track-insert patches are NOT, yet.)
The release candidate is on a temporary CVS branch "candidate-21-4".
Get it with "cvs update -r candidate-21-4". Build reports (especially
from Master Builder Perry ;-) would be very welcome.
You can also look at the changes applied to the code base with "cvs
diff -r release-21-4 -r candidate-21-4 ..." (either globally or for a
directory, subset of files, or individual file).
The following list of changes is also available as 21.4.4-Changes in
the root directory of the candidate-21-4 branch.
============================== 21.4.4-Changes ==============================
The changes in this release candidate are grouped in the following sections.
Some patches overlap a couple of sections. I (somewhat arbitrarily) assigned
them to the section I thought was most important.
UI and API CHANGES
GENERAL BUG FIXES
MS WINDOWS - printing
MS WINDOWS - set_file_times
MS WINDOWS - C-g handling
MS WINDOWS - miscellaneous
GTK
MISCELLANEOUS
DOCUMENTATION
Please review especially the UI and GENERAL sections, and others as you
have interest/expertise. The MISCELLANEOUS and DOCUMENTATION sections are
entirely uncontroversial and may safely be ignored.
I'm not committed to anything here irrevocably; this is just my first pass
at the next release candidate. Nor are things I've not included here
necessarily ruled out. Let me know if anything in needs out, or anything
out needs in, in your opinion.
UI and API CHANGES
<y9lwv966j49.fsf(a)sams.informatik.uni-tuebingen.de>
./src/ChangeLog
2001-03-31 Mike Sperber <mike(a)xemacs.org>
* search.c (Freplace_match): Support FSF-style specification of
match subexpression when applied to a buffer.
<15160.50052.863645.73187(a)europe.nortel.com>
./lisp/ChangeLog
2001-06-26 Robert Pluim <rpluim(a)bigfoot.com>
* packages.el (locate-library): Use read-library-name for completion.
<15160.50790.460079.416332(a)europe.nortel.com>
./lisp/ChangeLog
2001-06-26 Robert Pluim <rpluim(a)bigfoot.com>
* package-ui.el (pui-install-selected-packages): reverse the lists
of packages so that they get handled in the same order as they
were selected.
<microsoft-free.x4pub3lxg4.fsf(a)slackware.mynet.pc>
./src/ChangeLog
2001-07-14 Sean MacLennan <seanm(a)storm.ca>
* package-admin.el (package-install-hook): New.
(package-delete-hook): New.
(package-admin-add-single-file-package): Use package-delete-hook.
* package-get.el (package-get): Use package-install-hook.
<sxsoftm4b29.fsf(a)florida.arsdigita.de>
./lisp/ChangeLog
2001-04-24 Hrvoje Niksic <hniksic(a)arsdigita.com>
* about.el (about-mailto-link): Use compose-mail for sending mail.
<muxy9sz343m.fsf(a)uzeb.lrde.epita.fr>
./lisp/ChangeLog
2001-04-17 Didier Verna <didier(a)xemacs.org>
* startup.el (load-user-init-file): define `custom-file' before
loading the user's init file.
<mux1yqqdqbq.fsf(a)uzeb.lrde.epita.fr>
./lisp/ChangeLog
2001-04-18 Didier Verna <didier(a)xemacs.org>
* cus-edit.el (Custom-reset-standard): reset to standard settings
not only when the buffer's :custom-state is 'modified, but also
when it is 'set or 'saved.
GENERAL BUG FIXES
<uofrqvxzn.fsf(a)ispras.ru>
./lisp/ChangeLog
2001-06-15 Nick Pakoulin <npak(a)ispras.ru>
* help.el (frob-help-extents): Require 'hyper-apropos for faces.
<mqqoftzthg6.fsf(a)eng.cam.ac.uk>
./ChangeLog
2001-04-14 Gordon Sadler <gbsadler1(a)lcisp.com>
* configure.in: Add GTK_CFLAGS to CPPFLAGS for glade.h check.
<15167.31192.971882.809294(a)tyranny.hsys.msk.ru>
./ChangeLog
2001-07-01 Alexey Mahotkin <alexm(a)hsys.msk.ru>
* configure.in (option processing): with_widgets=m is ambiguous;
don't allow it.
(AC_CHECKING for the Athena widgets): Don't check for Athena when
with_widgets=no.
<5020000.994949898@flashingchance>
./src/ChangeLog
2001-07-11 Matt Tucker <tuck(a)whistlingfish.net>
* syntax.c (find_start_of_comment):
Fix `unbalanced parentheses' bug when dealing with mixed comment
styles in c++/java/etc. mode
<15111.24585.586600.484683(a)gargle.gargle.HOWL>
./lisp/ChangeLog
2001-05-20 Martin Buchholz <martin(a)xemacs.org>
* bytecomp.el (byte-compile-arithcompare):
Only optimize (= x) ==> t if byte-compile-delete-errors is nil.
<15112.31246.180077.975624(a)gargle.gargle.HOWL>
./lisp/ChangeLog
2001-05-21 Martin Buchholz <martin(a)xemacs.org>
* byte-optimize.el (=): `=' is not a binary predicate!
Fix incorrect optimization: (= 0 0 (random 2)) ==> 0 or 1.
Use byte-optimize-predicate, not byte-optimize-binary-predicate,
<15123.9022.247285.42002(a)gargle.gargle.HOWL>
./ChangeLog
2001-05-29 Martin Buchholz <martin(a)xemacs.org>
* configure.in: Remove stray backslash.
<15127.8885.609982.512779(a)gargle.gargle.HOWL>
./tests/ChangeLog
2001-05-29 Martin Buchholz <martin(a)xemacs.org>
* automated/mule-tests.el:
Avoid test failure if (temp-directory) is a symlink.
<B72977D8.45533%abegel(a)eecs.berkeley.edu>
./src/ChangeLog
2001-05-17 Andrew Begel <abegel(a)eecs.berkeley.edu>
* lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast.
<B729780C.45534%abegel(a)eecs.berkeley.edu>
./ChangeLog
2001-05-17 Andrew Begel <abegel(a)eecs.berkeley.edu>
* aclocal.m4 (LTLD): Don't use "gcc", use the ld reported by gcc.
<87u22s1ffj.fsf(a)u.sanpo.t.u-tokyo.ac.jp>
./src/ChangeLog
2001-05-11 Yoshiki Hayashi <yoshiki(a)xemacs.org>
* lisp.h (EMACS_INT_MAX): This should be one bit less since
EMACS_INT is signed.
<200104180223.WAA13090(a)mclean.mail.mindspring.net>
2001-04-17 Isaac Hollander <ysh(a)mindspring.com>
* gnuserv.c (setup_table): fix 2 signed/unsigned mismatches
* gnuslib.c (connect_to_internet_server): fix signed/unsigned mismatch
<200106220151.VAA31665(a)gwyn.tux.org>
./src/ChangeLog
2001-06-21 Ben Wing <ben(a)xemacs.org>
* dired-msw.c (Fmswindows_insert_directory):
Fix problem noted by Michael Sperber with directories containing
[] and code that destructively modifies an existing string.
<200105121126.HAA26657(a)gwyn.tux.org>
./lisp/ChangeLog
2001-05-12 Ben Wing <ben(a)xemacs.org>
* find-paths.el (paths-find-recursive-path):
fix error with null EXCLUDE-REGEXP.
* font-lock.el (font-lock-mode):
fix problem reported by hrvoje with buffers starting with a space.
<200106220151.VAA31665(a)gwyn.tux.org>
./lisp/ChangeLog
2001-06-21 Ben Wing <ben(a)xemacs.org>
* help.el (frob-help-extents): Fix problem with undefined face.
* update-elc.el (update-elc-files-to-compile): Compile in proper order.
* keydefs.el (global-map): Add a defn for M-?, previously
undefined, to access help -- in case the terminal is not set up
right, or f1 gets redefined.
MS WINDOWS - printing
<200105060838.EAA10366(a)gwyn.tux.org>
./src/ChangeLog
2001-05-06 Ben Wing <ben(a)xemacs.org>
* console-msw.h:
* device-msw.c:
* device-msw.c (print_dialog_worker):
* device-msw.c (mswindows_handle_print_dialog_box):
* device-msw.c (syms_of_device_mswindows):
* dialog-msw.c (mswindows_make_dialog_box_internal):
* general-slots.h:
implement printing the selection when it's selected.
<200105060838.EAA10366(a)gwyn.tux.org>
./lisp/ChangeLog
2001-05-06 Ben Wing <ben(a)xemacs.org>
* dialog.el (make-dialog-box):
* menubar-items.el (default-menubar):
* printer.el (generic-print-buffer):
* printer.el (generic-print-region):
implement printing the selection when it's selected.
MS WINDOWS - set_file_times
<1yp8gt63.fsf(a)rapier.ecf.teradyne.com>
./src/ChangeLog
2001-05-29 Adrian Aichner <adrian(a)xemacs.org>
* fileio.c: Include nt.h. Remove lisp_string_set_file_times()
because set_file_times() now takes Lisp_Object path, instead of
char*.
* nt.c: Include buffer.h.
* nt.c (convert_from_time_t): New.
* nt.c (mswindows_utime): New. Use utime, since SetFileTime does
not set mtime correctly.
* nt.h: Declare mswindows_utime().
* sysdep.c (set_file_times): set_file_times() now takes Lisp_Object
path, instead of char*.
* systime.h: Include <sys/utime.h> on WIN32_NATIVE.
<200106020618.CAA12498(a)gwyn.tux.org>
./src/ChangeLog
2001-06-01 Ben Wing <ben(a)xemacs.org>
* nt.c (mswindows_utime):
* nt.c (close_file_data):
fix off-by-one-indirection error.
MS WINDOWS - C-g handling
<200105311247.IAA28237(a)gwyn.tux.org>
./src/ChangeLog addition:
2001-05-30 Ben Wing <ben(a)xemacs.org>
For 21.4:
(Stephen, just take all event-msw.c patches. This includes
the "iconify" fix below.)
* event-msw.c:
* event-msw.c (mswindows_dequeue_dispatch_event):
* event-msw.c (assert):
* event-msw.c (emacs_mswindows_quit_p):
* event-msw.c (debug_mswin_messages):
* event-msw.c (debug_output_mswin_message):
* event-msw.c (vars_of_event_mswindows):
Fix yet more problems with C-g handling.
Implement debug-mswindows-events.
MS WINDOWS - miscellaneous
<15119.11444.70000.574489(a)gargle.gargle.HOWL>
./src/ChangeLog
2001-05-25 Craig Lanning <CraigL(a)Knology.net>
* s\mingw32.h:
Properly find MinGW's <process.h> inside Cygwin's restructured
include directories. Don't try to include <cygwin/version.h>
since we are dropping support for MinGW in versions of Cygwin
earlier than b21.
* nt.c:
Drop support for MinGW in versions of Cygwin before b21.
* sysdep.c:
Properly find MinGW's <process.h> inside Cygwin's restructured
include directories.
* syswindows.h:
Drop support for MinGW in versions of Cygwin before b21.
* unexcw.c:
Even though a.out.h is no longer detected by configure, allow
MinGW to use it until we figure out how to do the job with Win32.
<FENWAYUfKRfcjcMzfoV00000f4e(a)fenway.corp.soundbite.com>
./nt/ChangeLog
2001-05-28 Paul Krause <pkrause(a)soundbite.com>
* xemacs.mak (DEPEND): defined(_) isn't a reliable method for
detecting if perl is from cygwin. Check $OSNAME as a backup.
<4.3.2.7.2.20010517121830.00b0a920(a)san-francisco.beasys.com>
./netinstall/ChangeLog
2001-05-17 Andy Piper <andy(a)xemacs.org>
* sysfile.h: don't assume that file attributes are boolean
2001-05-17 Andy Piper <andy(a)xemacs.org>
* win32.h:
* win32.h (NOCOMATTRIBUTE): sync with latest cygwin version.
<62532263.3200087799(a)[148.59.233.133]>
./src/ChangeLog
2001-05-29 Mike Alexander <mta(a)arbortext.com>
* console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap
FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT
<200105121126.HAA26657(a)gwyn.tux.org>
./src/ChangeLog
2001-05-12 Ben Wing <ben(a)xemacs.org>
* event-msw.c (mswindows_dde_callback):
* event-msw.c (mswindows_wnd_proc):
eliminate cygwin warnings.
<200105231035.GAA13007(a)gwyn.tux.org>
./src/ChangeLog
2001-05-23 Ben Wing <ben(a)xemacs.org>
* device-msw.c (msprinter_init_device):
signal an error rather than crash with an unavailable network
printer (from Mike Alexander).
* event-msw.c:
* event-msw.c (struct winsock_stream):
* event-msw.c (winsock_writer):
* event-msw.c (winsock_closer):
* event-msw.c (make_winsock_stream_1):
cleanup headers. fix (hopefully) an error with data corruption
when sending to a network connection.
* fileio.c (Fexpand_file_name): Fix evil code that attempts
to handle the ~user prefix by (a) always assuming we're referencing
ourselves and not even verifying the user -- hence any file with
a tilde as its first char is invalid! (b) if there wasn't a slash
following the filename, the pointer was set *past* the end of
file and we started reading from uninitialized memory. Now we
simply treat these as files, always.
* buffer.c (common_init_complex_vars_of_buffer): comment change.
<200105231147.HAA15653(a)gwyn.tux.org>
./src/ChangeLog
2001-05-23 Ben Wing <ben(a)xemacs.org>
* event-msw.c (winsock_writer):
* event-msw.c (winsock_closer):
prior kludgy code was clobbering the buffer, thinking it was
"unused" space to store an unneeded return value; instead, use
the variable we've already got staring us in the face.
<4.3.2.7.2.20010524160839.02dfa610@pop>
./src/ChangeLog
2001-05-24 Kirill 'Big K' Katsnelson <kkm(a)dtmx.com>
* event-msw.c (WM_DROPFILES): Use correct type for OLE characters.
GTK
<86snhme1pz.fsf(a)hel.bp.aventail.com>
./src/ChangeLog
2001-05-30 William M. Perry <wmperry(a)gnu.org>
* event-gtk.c: Check for buttons as modifier keys.
<8666eh375k.fsf(a)hel.bp.aventail.com>
./lisp/ChangeLog
2001-05-31 William M. Perry <wmperry(a)gnu.org>
* font-menu.el: Avoid arithmetic with 'nil' when using the font menu
in XEmacs/GTK.
<863d9hf0rd.fsf(a)hel.bp.aventail.com>
./lisp/ChangeLog
2001-06-03 William M. Perry <wmperry(a)gnu.org>
* dialog-gtk.el (popup-builtin-open-dialog): Don't forget to
return the filename selected by the user!
<987338379.7732.0.camel(a)loki.lausch.at>
./src/ChangeLog
2001-04-15 Michael Lausch <mla(a)1012surf.net>
* scrollbar-gtk.c (gtk_create_scrollbar_instance): Call
gtk_widget_request_size() to give scrollbar >0 width for
GTK >1.2.8.
<86ae3t378p.fsf(a)hel.bp.aventail.com>
./src/ChangeLog
2001-05-20 Drazen Kacar <dave(a)arsdigita.com>
* glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0
<15189.33914.633203.591427(a)turnbull.sk.tsukuba.ac.jp>
./lisp/ChangeLog
2001-07-18 Stephen J. Turnbull <stephen(a)xemacs.org>
* specifier.el: define-specifier-tag 'gtk.
MISCELLANEOUS
<200105230148.VAA13292(a)mclean.mail.mindspring.net>
./src/ChangeLog
2001-05-22 Isaac Hollander <ysh(a)mindspring.com>
* Makefile.in.in: Use TAR macro instead of hardcoding
tar. Allows use of GNU tar instead of system tar
DOCUMENTATION
A bunch of typo fixes from the late Beta Release Engineer with no
ChangeLogs; leave them that way in memorium.
<iluk82vvtx8.fsf(a)barbar.josefsson.org>
./man/ChangeLog
2001-06-02 Simon Josefsson <simon(a)josefsson.org>
* internals/internals.texi (Techniques for XEmacs Developers): Fix
typo in ./configure line.
<87bsof9zbk.fsf(a)n-pl.org>
./ChangeLog
2001-05-27 Kazuo Oishi <oishi(a)n-pl.org>
* etc/xemacs-ja.1: Replace with new translation.
<20010529193619.2664.qmail(a)hsys.msk.ru>
./man/ChangeLog
2001-05-29 Alexey Mahotkin <alexm(a)hsys.msk.ru>
* xemacs/custom.texi: Documented keyboard shortcut.
* xemacs/mule.texi: Updated to match reality; tiny fixes.
<20010529193619.2664.qmail(a)hsys.msk.ru>
./lisp/ChangeLog
2001-05-29 Alexey Mahotkin <alexm(a)hsys.msk.ru>
* coding.el: Tiny typo fixed.
<200106081225.IAA31075(a)gwyn.tux.org>
./man/ChangeLog
2001-06-08 Ben Wing <ben(a)xemacs.org>
* xemacs-faq.texi (Top):
* xemacs-faq.texi (MS Windows):
* xemacs-faq.texi (Q6.2.1):
* xemacs-faq.texi (Q6.2.2):
* xemacs-faq.texi (Q6.2.3):
* xemacs-faq.texi (Q6.2.4):
* xemacs-faq.texi (Q6.2.5):
* xemacs-faq.texi (Q6.3.1):
* xemacs-faq.texi (Q6.3.2):
* xemacs-faq.texi (Q6.3.3):
* xemacs-faq.texi (Q6.3.4):
* xemacs-faq.texi (Q6.4.1):
* xemacs-faq.texi (Q6.4.2):
* xemacs-faq.texi (Current Events):
* xemacs-faq.texi (Q7.0.1):
* xemacs-faq.texi (Q7.0.2):
* xemacs-faq.texi (Q7.0.3):
* xemacs-faq.texi (Q7.0.4):
* xemacs-faq.texi (Q7.0.5):
* xemacs-faq.texi (Q7.0.6):
Merge in the rest of Hrvoje's Windows FAQ. Redo section 7
to update current reality and add condensed versions of
new changes for 21.1 and 21.4. (Not quite done for 21.4.)
Lots more Windows updates.
<200106101053.GAA12271(a)gwyn.tux.org>
./man/ChangeLog
2001-06-10 Ben Wing <ben(a)xemacs.org>
* xemacs-faq.texi (Q1.0.10):
* xemacs-faq.texi (Q1.0.11):
* xemacs-faq.texi (Q1.0.12):
Update sections on Windows and MacOS availability.
<8zi7hxlo.fsf(a)ecf.teradyne.com>
./man/ChangeLog
2001-07-02 Adrian Aichner <adrian(a)xemacs.org>
* lispref\windows.texi (Window Configurations): Fix typos.
* lispref\x-windows.texi (Resources): Ditto.
* internals\internals.texi (XEmacs From the Inside): Ditto.
* emodules.texi (Initialization Mode): Ditto.
* xemacs-faq.texi (Q6.3.2): Ditto.
<1ynzhwt3.fsf(a)ecf.teradyne.com>
./man/ChangeLog
2001-07-02 Adrian Aichner <adrian(a)xemacs.org>
* xemacs-faq.texi (Q1.0.14): Update information following a
request by Tom Mostyn.
./man/ChangeLog
2001-06-24 Stephen J. Turnbull <stephen(a)xemacs.org>
* xemacs/programs.texi: Add node name (Top) to Ebrowse xref.
[Long since committed; added ChangeLog]
<scm66jlgfkm.fsf(a)hookah.kazbek.ispras.ru>
./lisp/ChangeLog
2001-01-12 Nick V. Pakoulin <npak(a)ispras.ru>
* cl-macs.el (cl-upcase-arg): New function.
(cl-function-arglist): New function.
(cl-transform-lambda): Automatically add CL-style lambda list to
documentation string using functions above.
<200105170631.CAA32586(a)gwyn.tux.org>
./man/ChangeLog
2001-05-16 Ben Wing <ben(a)xemacs.org>
* xemacs-faq.texi (Top):
* xemacs-faq.texi (Installation):
* xemacs-faq.texi (Q2.1.15):
* xemacs-faq.texi (Q2.1.18):
* xemacs-faq.texi (Q2.1.19):
document how to debug X errors
<200105200118.VAA32224(a)gwyn.tux.org>
./src/ChangeLog
2001-05-19 Ben Wing <ben(a)xemacs.org>
* eval.c: doc comment about gcpro'ing in record_unwind_protect.
* process-nt.c:
* process-nt.c (vars_of_process_nt):
remove unused mswindows-quote-process-args. rec for 21.4.
<200105231035.GAA13007(a)gwyn.tux.org>
./nt/ChangeLog
2001-05-23 Ben Wing <ben(a)xemacs.org>
* xemacs.mak (installation):
call `ver' to get the exact os version and put it in the
installation; suggestion from adrian.
<200105231035.GAA13007(a)gwyn.tux.org>
./ChangeLog addition
2001-05-23 Ben Wing <ben(a)xemacs.org>
* etc\sample.init.el:
* etc\sample.init.el (Init-safe-require): New.
* etc\sample.init.el ((fboundp 'pending-delete-mode)):
* etc\sample.init.el ((eq system-type 'windows-nt)):
* etc\sample.init.el (dired):
* etc\sample.init.el ((Init-safe-require 'efs-auto)):
* etc\sample.init.el (completer):
* etc\sample.init.el (crypt):
* etc\sample.init.el (filladapt):
* etc\sample.init.el ((fboundp 'turn-on-lazy-lock)):
* etc\sample.init.el ((fboundp 'resize-minibuffer-mode)):
* etc\sample.init.el ((Init-safe-require 'scroll-in-place)):
Rewrite to be much more careful about loading features -- now
it decays gracefully even in the complete absence of packages.
Also avoid doing obnoxious things when loading efs.
<200105311247.IAA28237(a)gwyn.tux.org>
./man/ChangeLog
2001-05-30 Ben Wing <ben(a)xemacs.org>
* xemacs-faq.texi (Top):
* xemacs-faq.texi (MS Windows):
* xemacs-faq.texi (Q6.0.1):
* xemacs-faq.texi (Q6.0.2):
* xemacs-faq.texi (Q6.0.3):
* xemacs-faq.texi (Q6.0.4):
* xemacs-faq.texi (Q6.1.1):
* xemacs-faq.texi (Q6.1.4):
* xemacs-faq.texi (Q6.1.5):
* xemacs-faq.texi (Q6.1.6):
* xemacs-faq.texi (Q6.2.1):
* xemacs-faq.texi (Q6.2.2):
* xemacs-faq.texi (Q6.3.1):
* xemacs-faq.texi (Q6.3.2):
* xemacs-faq.texi (Q6.3.3):
* xemacs-faq.texi (Q6.4.1):
* xemacs-faq.texi (Current Events):
Major rewrite.
Update all MS Windows info to current.
Redo section 6.1 almost completely.
Incorporate sections 1 and 2 of Hrvoje's FAQ.
<8zhqhahu.fsf(a)ecf.teradyne.com>
./lisp/ChangeLog
2001-07-15 Adrian Aichner <adrian(a)xemacs.org>
* about.el (about-personal-info): Fix word duplication typos.
* dialog.el (make-dialog-box): Ditto.
* lisp-mode.el (lisp-indent-function): Ditto.
* package-admin.el (package-admin-delete-binary-package): Ditto.
* package-get.el (package-get-staging-dir): Ditto.
--
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Institute of Policy and Planning Sciences Tel/fax: +81 (298) 53-5091
_________________ _________________ _________________ _________________
What are those straight lines for? "XEmacs rules."