106 |
(if sets |
(if sets |
107 |
(progn |
(progn |
108 |
(mapc #'latin1-display-setup sets) |
(mapc #'latin1-display-setup sets) |
109 |
(unless (latin1-char-displayable-p |
(unless (char-displayable-p |
110 |
(make-char 'mule-unicode-0100-24ff 32 33)) |
(make-char 'mule-unicode-0100-24ff 32 33)) |
111 |
;; It doesn't look as though we have a Unicode font. |
;; It doesn't look as though we have a Unicode font. |
112 |
(map-char-table |
(map-char-table |
221 |
(setq language 'cyrillic-iso)) |
(setq language 'cyrillic-iso)) |
222 |
(let* ((info (get-language-info language 'charset)) |
(let* ((info (get-language-info language 'charset)) |
223 |
(char (and info (make-char (car (remq 'ascii info)) ?\ )))) |
(char (and info (make-char (car (remq 'ascii info)) ?\ )))) |
224 |
(and char (latin1-char-displayable-p char)))) |
(and char (char-displayable-p char)))) |
225 |
|
|
226 |
;; This should be moved into mule-utils or somewhere after 21.1. |
;; Backwards compatibility. |
227 |
(defun latin1-char-displayable-p (char) |
(defalias 'latin1-char-displayable-p 'char-displayable-p) |
228 |
"Return non-nil if we should be able to display CHAR. |
(make-obsolete 'latin1-char-displayable-p 'char-displayable-p "21.5") |
|
On a multi-font display, the test is only whether there is an |
|
|
appropriate font from the selected frame's fontset to display CHAR's |
|
|
charset in general. Since fonts may be specified on a per-character |
|
|
basis, this may not be accurate." |
|
|
(cond ((< char 256) |
|
|
;; Single byte characters are always displayable. |
|
|
t) |
|
|
((display-multi-font-p) |
|
|
;; On a window system, a character is displayable if we have |
|
|
;; a font for that character in the default face of the |
|
|
;; currently selected frame. |
|
|
(let ((fontset (frame-parameter (selected-frame) 'font)) |
|
|
font-pattern) |
|
|
(if (query-fontset fontset) |
|
|
(setq font-pattern (fontset-font fontset char))) |
|
|
(or font-pattern |
|
|
(setq font-pattern (fontset-font "fontset-default" char))) |
|
|
(if font-pattern |
|
|
(progn |
|
|
;; Now FONT-PATTERN is a string or a cons of family |
|
|
;; field pattern and registry field pattern. |
|
|
(or (stringp font-pattern) |
|
|
(setq font-pattern (concat "-" |
|
|
(or (car font-pattern) "*") |
|
|
"-*-" |
|
|
(cdr font-pattern)))) |
|
|
(x-list-fonts font-pattern 'default (selected-frame) 1))))) |
|
|
(t |
|
|
(let ((coding (terminal-coding-system))) |
|
|
(if coding |
|
|
(let ((safe-chars (coding-system-get coding 'safe-chars)) |
|
|
(safe-charsets (coding-system-get coding 'safe-charsets))) |
|
|
(or (and safe-chars |
|
|
(aref safe-chars char)) |
|
|
(and safe-charsets |
|
|
(memq (char-charset char) safe-charsets))))))))) |
|
229 |
|
|
230 |
(defun latin1-display-setup (set &optional force) |
(defun latin1-display-setup (set &optional force) |
231 |
"Set up Latin-1 display for characters in the given SET. |
"Set up Latin-1 display for characters in the given SET. |
790 |
is't changed if the display can render Unicode characters." |
is't changed if the display can render Unicode characters." |
791 |
(interactive "p") |
(interactive "p") |
792 |
(if (> arg 0) |
(if (> arg 0) |
793 |
(unless (latin1-char-displayable-p |
(unless (char-displayable-p |
794 |
(make-char 'mule-unicode-0100-24ff 32 33)) |
(make-char 'mule-unicode-0100-24ff 32 33)) |
795 |
;; It doesn't look as though we have a Unicode font. |
;; It doesn't look as though we have a Unicode font. |
796 |
(let ((latin1-display-format "%s")) |
(let ((latin1-display-format "%s")) |
3209 |
(?\$,3sc(B "\"") |
(?\$,3sc(B "\"") |
3210 |
(?\$,3sd(B ",") |
(?\$,3sd(B ",") |
3211 |
;; Not from Lynx |
;; Not from Lynx |
3212 |
(?$,3r_(B . "") |
(?$,3r_(B "") |
3213 |
(?$,3u=(B . "?"))))) |
(?$,3u=(B "?"))))) |
3214 |
(aset standard-display-table |
(aset standard-display-table |
3215 |
(make-char 'mule-unicode-0100-24ff) nil) |
(make-char 'mule-unicode-0100-24ff) nil) |
3216 |
(aset standard-display-table |
(aset standard-display-table |