Mercurial > emacs
changeset 50125:a9135466b161
(ucs-tables): Don't require.
(latin1-display-face): New.
(latin1-display-char): Use it.
author | Dave Love <fx@gnu.org> |
---|---|
date | Thu, 13 Mar 2003 23:00:49 +0000 |
parents | d4f965eb8fd5 |
children | 96dd6a3c9baa |
files | lisp/international/latin1-disp.el |
diffstat | 1 files changed, 19 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/international/latin1-disp.el Thu Mar 13 18:15:07 2003 +0000 +++ b/lisp/international/latin1-disp.el Thu Mar 13 23:00:49 2003 +0000 @@ -49,7 +49,6 @@ ;; Ensure `standard-display-table' is set up: (require 'disp-table) -(require 'ucs-tables) (defconst latin1-display-sets '(latin-2 latin-3 latin-4 latin-5 latin-8 latin-9 arabic cyrillic greek hebrew) @@ -66,7 +65,8 @@ (defcustom latin1-display-format "{%s}" "A format string used to display the ASCII sequences. The default encloses the sequence in braces, but you could just use -\"%s\" to avoid the braces." +\"%s\" to avoid the braces, maybe with a non-default value of +`latin1-display-face'." :group 'latin1-display :type 'string) @@ -152,6 +152,12 @@ :type 'boolean :group 'latin1-display) +(defcustom latin1-display-face 'default + "Face to use for displaying substituted ASCII sequences." + :type 'face + :version "21.4" + :group 'latin1-display) + (defun latin1-display-char (char display &optional alt-display) "Make an entry in `standard-display-table' for CHAR using string DISPLAY. If ALT-DISPLAY is provided, use that instead if @@ -166,8 +172,17 @@ latin1-display-mnemonic) (setq display alt-display)) (if (stringp display) - (standard-display-ascii char (format latin1-display-format display)) - (aset standard-display-table char display))) + (if (eq 'default latin1-display-face) + (standard-display-ascii char (format latin1-display-format display)) + (aset standard-display-table char + (vconcat (mapcar (lambda (c) + (logior c (lsh (face-id latin1-display-face) + 19))) + display)))) + (aset standard-display-table char + (if (eq 'default latin1-display-face) + display + (logior display (lsh (face-id latin1-display-face) 19)))))) (defun latin1-display-identities (charset) "Display each character in CHARSET as the corresponding Latin-1 character.