CVS update by aidan packages/xemacs-packages/xemacs-base ...

xemacs-cvs at xemacs.org xemacs-cvs at xemacs.org
Mon Dec 24 14:18:18 EST 2007


  User: aidan   
  Date: 07/12/24 20:18:18

  Modified:    packages/xemacs-packages/xemacs-base ChangeLog enriched.el
Log:
Abstract out a display-table-specific API.

Revision  Changes    Path
1.23      +10 -0     XEmacs/packages/xemacs-packages/misc-games/ChangeLog

Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/misc-games/ChangeLog,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -p -r1.22 -r1.23
--- ChangeLog	2006/12/29 21:35:45	1.22
+++ ChangeLog	2007/12/24 19:18:14	1.23
@@ -1,3 +1,13 @@
+2007-12-24  Aidan Kehoe  <kehoea at parhasard.net>
+
+	* rot13.el:
+	* rot13.el (put-display-table): New.
+	Function provided with #'defun-when-void, so as not to override
+	21.5's native implementation. 
+
+	* rot13.el (rot13-display-table):.
+	Call #'put-display-table, not #'aset, to modify the display table.
+
 2006-12-29  Norbert Koch  <viteno at xemacs.org>
 
 	* Makefile (VERSION): XEmacs package 1.19 released.



1.3       +11 -3     XEmacs/packages/xemacs-packages/misc-games/rot13.el

Index: rot13.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/misc-games/rot13.el,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -p -r1.2 -r1.3
--- rot13.el	2000/09/25 03:16:51	1.2
+++ rot13.el	2007/12/24 19:18:14	1.3
@@ -35,15 +35,23 @@
 
 ;;; Code:
 
+(defun-when-void put-display-table (range value display-table)
+  "Set the value for char RANGE to VALUE in DISPLAY-TABLE.  "
+  (ecase (type-of display-table)
+    (vector
+     (aset display-table range value))
+    (char-table
+     (put-char-table range value display-table))))
+
 (defvar rot13-display-table
   (let ((i -1)
         (a (char-to-int ?a))
         (A (char-to-int ?A))
         (table (make-display-table)))
     (while (< (incf i) 26)
-      (aset table (+ i a) (char-to-string (int-to-char (+ (% (+ i 13) 26) a))))
-      (aset table (+ i A) (char-to-string (int-to-char (+ (% (+ i 13) 26) A)))))
-    table)
+      (put-display-table (+ i a) (char-to-string (int-to-char (+ (% (+ i 13) 26) a))) table)
+      (put-display-table (+ i A) (char-to-string (int-to-char (+ (% (+ i 13) 26) A))) table)
+    table))
   "Char table for rot 13 display.")
 
 ;;;###autoload



1.202     +11 -0     XEmacs/packages/xemacs-packages/xemacs-base/ChangeLog

Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/xemacs-base/ChangeLog,v
retrieving revision 1.201
retrieving revision 1.202
diff -u -p -r1.201 -r1.202
--- ChangeLog	2007/12/18 21:20:26	1.201
+++ ChangeLog	2007/12/24 19:18:18	1.202
@@ -1,3 +1,14 @@
+2007-12-24  Aidan Kehoe  <kehoea at parhasard.net>
+
+	* enriched.el:
+	* enriched.el (put-display-table): New.
+	* enriched.el (get-display-table): New.
+	Both made available with #'defun-when-void, so the native
+	implementation on 21.5 overrides them. 
+	* enriched.el (?\f):
+	Use put-display-table instead of aset to configure how ?\f is
+	displayed. 
+
 2007-12-18  Norbert Koch  <viteno at xemacs.org>
 
 	* Makefile (VERSION): XEmacs package 2.12 released.



1.2       +9 -1      XEmacs/packages/xemacs-packages/xemacs-base/enriched.el

Index: enriched.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/xemacs-base/enriched.el,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- enriched.el	1998/01/14 06:32:19	1.1
+++ enriched.el	2007/12/24 19:18:18	1.2
@@ -54,6 +54,14 @@
 
 (provide 'enriched)
 
+(defun-when-void put-display-table (range value display-table)
+  "Set the value for char RANGE to VALUE in DISPLAY-TABLE.  "
+  (ecase (type-of display-table)
+    (vector
+     (aset display-table range value))
+    (char-table
+     (put-char-table range value display-table))))
+
 ;;;
 ;;; Variables controlling the display
 ;;;
@@ -93,7 +101,7 @@ This is used in enriched-mode for text e
   ;; (or (copy-sequence standard-display-table)
   ;;     (make-display-table)))
   (make-display-table))
-(aset enriched-display-table ?\f (make-vector (1- (frame-width)) ?-))
+(put-display-table ?\f (make-vector (1- (frame-width)) ?-) enriched-display-table)
 
 (defconst enriched-par-props '(left-margin right-margin justification)
   "Text-properties that usually apply to whole paragraphs.





More information about the XEmacs-CVS mailing list