Ar an ceathrú lá is fiche de mí na Nollaig, scríobh mike.kupfer(a)xemacs.org:
(moved to xemacs-beta)
Hi Aidan, I've got a couple questions about the gnus patch.
First, I'm nervous about XEmacs-specific patches that I would have to
apply every time I resync with upstream.
Yeah; I need to ask the Gnus people to apply it too. But for the moment I’m
worried about XEmacs-specific compatibility.
Is there some difference between XEmacs char-tables and GNU Emacs
char-tables that keeps us from using aref/aset?
Yes. The XEmacs char tables are opaque objects, not vectors.
Okay, and now I check, I realise my “portable” code fails on GNU
Emacs. Here’s a version that works there, where char-tables are sequences
and really close to being vectors, though not quite:
(defun-when-void put-display-table (range value display-table)
"Set the value for char RANGE to VALUE in DISPLAY-TABLE. "
(if (sequencep display-table)
(aset display-table range value)
(put-char-table range value display-table)))
(defun-when-void get-display-table (character display-table)
"Find value for CHARACTER in DISPLAY-TABLE. "
(if (sequencep display-table)
(aref display-table character)
(get-char-table character display-table)))
The GNU Emacs Info page for display tables says
A display table is actually a char-table (*note Char-Tables::)
with `display-table' as its subtype.
and it uses aset in its example.
Failing that, have you discussed this change with the gnus team
(ding(a)gnus.org)? Or is there at least some canonical way to tag
XEmacs-specific changes, to make resyncs easier?
Second, you appear to be introducing multiple copies of
put-display-table and get-display-table, both in this patch set and in
the patches you committed to xemacs-base and misc-games. Shouldn't
there be just one copy in the packages tree, presumably in xemacs-base?
disp-table.el, which provides the display table code--make-display-table,
frob-display-table, describe-display-table, and in
http://mid.gmane.org/18288.1954.87217.762309@parhasard.net ,
put-display-table and get-display-table--is in core. Yeah, there’s a decent
argument that it might be better in packages, but it isn’t there for the
moment. There isn’t any other obvious place to put these two functions, IMO,
and moving them away from #'make-display-table and #'describe-display-table
will make for less clear code.
The defun-when-void means any existing definition won’t be overridden.
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghé, que tuvo que huir
precipitadamente de la aldea por culpa de la escasez de rinocerontes?
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta