Uwe, this is the patch of
http://mid.gmane.org/18288.3344.67997.394271@parhasard.net of December last
year, which you didn’t apply, slightly modified with a better
#'put-display-table implementation. I now have the access to apply it
myself, please reply if you disagree or if you would like to be no longer
listed as the maintainer of the XEmacs x-symbol package.
xemacs-packages/x-symbol/ChangeLog addition:
2008-07-13 Aidan Kehoe <kehoea(a)parhasard.net>
* lisp/x-symbol-nomule.el:
* lisp/x-symbol-nomule.el (put-display-table): New.
* lisp/x-symbol-nomule.el (get-display-table): New.
* lisp/x-symbol.el (put-display-table): New.
Provide with #'defun-when-void, so as not to override the 21.5
implementation.
* lisp/x-symbol-nomule.el (x-symbol-nomule-display-table):
* lisp/x-symbol.el (x-symbol-invisible-display-table):
Use #'put-display-table, #'get-display-table instead #'aset,
#'aref.
XEmacs Packages source patch:
Diff command: cvs -q diff -Nu
Files affected: xemacs-packages/x-symbol/lisp/x-symbol.el
===================================================================
RCS xemacs-packages/x-symbol/lisp/x-symbol-nomule.el
===================================================================
RCS
Index: xemacs-packages/x-symbol/lisp/x-symbol-nomule.el
===================================================================
RCS file:
/pack/xemacscvs/XEmacs/packages/xemacs-packages/x-symbol/lisp/x-symbol-nomule.el,v
retrieving revision 1.3
diff -u -u -r1.3 x-symbol-nomule.el
--- xemacs-packages/x-symbol/lisp/x-symbol-nomule.el 2003/04/02 03:18:32 1.3
+++ xemacs-packages/x-symbol/lisp/x-symbol-nomule.el 2008/07/13 14:22:11
@@ -55,6 +55,18 @@
(defalias 'x-symbol-encode-charsym-after 'x-symbol-nomule-encode-charsym-after)
(defalias 'x-symbol-init-quail-bindings 'ignore)
+(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)))
+
(defvar x-symbol-nomule-mouse-yank-function mouse-yank-function
"Function that is called upon by
`x-symbol-nomule-mouse-yank-function'.")
@@ -80,11 +92,10 @@
"Internal. Face to fontify current font-lock match.")
(defvar x-symbol-nomule-display-table
- ;; display-table via characters table is not implemented in XEmacs yet...
- (let ((table (make-vector 256 nil))
+ (let ((table (make-display-table))
(i 128))
(while (< i 160)
- (aset table i "")
+ (put-display-table i "" table)
(incf i))
table)
"Display table in faces with non-standard charset registry.
Index: xemacs-packages/x-symbol/lisp/x-symbol.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/x-symbol/lisp/x-symbol.el,v
retrieving revision 1.5
diff -u -u -r1.5 x-symbol.el
--- xemacs-packages/x-symbol/lisp/x-symbol.el 2003/05/31 14:17:15 1.5
+++ xemacs-packages/x-symbol/lisp/x-symbol.el 2008/07/13 14:22:12
@@ -51,8 +51,12 @@
(defvar x-symbol-trace-invisible nil)
;; shows that invisible is reset but Emacs still shows it as invisible
+(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)))
-
;;;;##########################################################################
;;;; General code, default values for `x-symbol-*-function'
@@ -1606,7 +1610,7 @@
(let ((table (make-display-table))
(i 0))
(while (< i 256)
- (aset table i "")
+ (put-display-table i "" table)
(setq i (1+ i)))
table)
"Internal variable. Display table for `x-symbol-invisible-face'.")
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghé, que tuvo que huir
precipitadamente de la aldea por culpa de la escasez de rinocerontes?
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches