APPROVE COMMIT
NOTE; this patch has been committed.
As I mentioned in
http://mid.gmane.org/18803.2728.561077.121389@parhasard.net , the control
characters are not dealt with gracefully if invalid-sequence-coding-system
specifies that they should be shown. This change fixes that.
# HG changeset patch
# User Aidan Kehoe <kehoea(a)parhasard.net>
# Date 1233423487 0
# Node ID c83cab5a4f04d9f2c7f94946c6fbbaa9749961f6
# Parent 00ed9903a988de9a983c074bf0abdc667639eeaf
Display control characters using carets, invalid-sequence-coding-system
2009-01-31 Aidan Kehoe <kehoea(a)parhasard.net>
* mule/mule-cmds.el (finish-set-language-environment):
Treat control characters specially in the
invalid-sequence-coding-system handling, display them using the
caret notation.
diff -r 00ed9903a988 -r c83cab5a4f04 lisp/ChangeLog
--- a/lisp/ChangeLog Sun Jan 18 12:56:51 2009 +0000
+++ b/lisp/ChangeLog Sat Jan 31 17:38:07 2009 +0000
@@ -1,3 +1,10 @@
+2009-01-31 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * mule/mule-cmds.el (finish-set-language-environment):
+ Treat control characters specially in the
+ invalid-sequence-coding-system handling, display them using the
+ caret notation.
+
2009-01-18 Ville Skyttä <scop(a)xemacs.org>
* font.el (font-*-p): Docstring spelling fix.
diff -r 00ed9903a988 -r c83cab5a4f04 lisp/mule/mule-cmds.el
--- a/lisp/mule/mule-cmds.el Sun Jan 18 12:56:51 2009 +0000
+++ b/lisp/mule/mule-cmds.el Sat Jan 31 17:38:07 2009 +0000
@@ -771,17 +771,18 @@
(let ((invalid-sequence-coding-system
(get-language-info language-name 'invalid-sequence-coding-system))
(disp-table (specifier-instance current-display-table))
- glyph)
+ glyph string)
(when (consp invalid-sequence-coding-system)
(setq invalid-sequence-coding-system
(car invalid-sequence-coding-system)))
(map-char-table
#'(lambda (key entry)
- (setq glyph (make-glyph
- (vector
- 'string :data
- (decode-coding-string (string entry)
- invalid-sequence-coding-system))))
+ (setq string (decode-coding-string (string entry)
+ invalid-sequence-coding-system))
+ ;; Treat control characters specially:
+ (when (string-match "^[\x00-\x1f\x80-\x9f]$" string)
+ (setq string (format "^%c" (+ ?@ (aref string 0)))))
+ (setq glyph (make-glyph (vector 'string :data string)))
(set-glyph-face glyph 'unicode-invalid-sequence-warning-face)
(put-char-table key glyph disp-table)
nil)
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghe, 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