]> code.delx.au - gnu-emacs/blobdiff - lisp/international/mule-diag.el
Prefer 'frame-parameter' where it is expected to be a bit faster
[gnu-emacs] / lisp / international / mule-diag.el
index 42e78f9c904f5ad6c7b374781d33472c7491d2a3..f543083b8c5b18c9cca3cac9c1c93f95d602f352 100644 (file)
@@ -1,6 +1,6 @@
 ;;; mule-diag.el --- show diagnosis of multilingual environment (Mule)
 
-;; Copyright (C) 1997-1998, 2000-2015 Free Software Foundation, Inc.
+;; Copyright (C) 1997-1998, 2000-2016 Free Software Foundation, Inc.
 ;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
 ;;   2005, 2006, 2007, 2008, 2009, 2010, 2011
 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
@@ -204,13 +204,6 @@ Character sets for defining other charsets, or for backward compatibility
   "Obsolete.")
 (make-obsolete-variable 'non-iso-charset-alist "no longer relevant." "23.1")
 
-(defun decode-codepage-char (codepage code)
-  "Decode a character that has code CODE in CODEPAGE.
-Return a decoded character string.  Each CODEPAGE corresponds to a
-coding system cpCODEPAGE."
-  (declare (obsolete decode-char "23.1"))
-  (decode-char (intern (format "cp%d" codepage)) code))
-
 ;; A variable to hold charset input history.
 (defvar charset-history nil)
 
@@ -332,7 +325,7 @@ meanings of these arguments."
       (let ((char (charset-iso-final-char charset)))
        (when (> char 0)
          (insert "Final char of ISO2022 designation sequence: ")
-         (insert (format "`%c'\n" char))))
+         (insert (format-message "`%c'\n" char))))
       (let (aliases)
        (dolist (c charset-list)
          (if (and (not (eq c charset))
@@ -581,7 +574,7 @@ docstring, and print only the first line of the docstring."
            (if (string-match "\n" doc)
                (setq doc (substring doc 0 (match-beginning 0))))
            (setq doc (concat "  " doc)))
-         (princ (format "%s\n" doc))))))
+         (princ (format "%s\n" (substitute-command-keys doc)))))))
 
 ;;;###autoload
 (defun describe-current-coding-system ()
@@ -770,7 +763,7 @@ but still contains full information about each coding system."
 # MNEMONIC-LETTER -- CODING-SYSTEM-NAME
 #   DOC-STRING
 ")
-    (princ "\
+    (princ (substitute-command-keys "\
 #########################
 ## LIST OF CODING SYSTEMS
 ## Each line corresponds to one coding system
@@ -794,7 +787,7 @@ but still contains full information about each coding system."
 ##      0
 ##  POST-READ-CONVERSION, PRE-WRITE-CONVERSION = function name to be called
 ##
-"))
+")))
   (dolist (coding-system (sort-coding-systems (coding-system-list 'base-only)))
     (if (null arg)
        (print-coding-system-briefly coding-system 'tightly)
@@ -1038,7 +1031,8 @@ see the function `describe-fontset' for the format of the list."
       (save-excursion
        (goto-char (point-min))
        (while (re-search-forward
-               "^  \\([^ ]+\\) (`.*' in mode line)$" nil t)
+               (substitute-command-keys "^  \\([^ ]+\\) (`.*' in mode line)$")
+                nil t)
          (help-xref-button 1 'help-input-method (match-string 1)))))))
 
 (defun list-input-methods-1 ()
@@ -1046,7 +1040,8 @@ see the function `describe-fontset' for the format of the list."
       (princ "
 No input method is available, perhaps because you have not
 installed LEIM (Libraries of Emacs Input Methods).")
-    (princ "LANGUAGE\n  NAME (`TITLE' in mode line)\n")
+    (princ (substitute-command-keys
+            "LANGUAGE\n  NAME (`TITLE' in mode line)\n"))
     (princ "    SHORT-DESCRIPTION\n------------------------------\n")
     (setq input-method-alist
          (sort input-method-alist
@@ -1058,16 +1053,18 @@ installed LEIM (Libraries of Emacs Input Methods).")
          (setq language (nth 1 elt))
          (princ language)
          (terpri))
-       (princ (format "  %s (`%s' in mode line)\n    %s\n"
-                      (car elt)
-                      (let ((title (nth 3 elt)))
-                        (if (and (consp title) (stringp (car title)))
-                            (car title)
-                          title))
-                      ;; If the doc is multi-line, indent all
-                      ;; non-blank lines. (Bug#8066)
-                      (replace-regexp-in-string "\n\\(.\\)" "\n    \\1"
-                                                (or (nth 4 elt) ""))))))))
+       (princ (format-message
+                "  %s (`%s' in mode line)\n    %s\n"
+                (car elt)
+                (let ((title (nth 3 elt)))
+                  (if (and (consp title) (stringp (car title)))
+                      (car title)
+                    title))
+                ;; If the doc is multi-line, indent all
+                ;; non-blank lines. (Bug#8066)
+                (replace-regexp-in-string
+                 "\n\\(.\\)" "\n    \\1"
+                 (substitute-command-keys (or (nth 4 elt) "")))))))))
 \f
 ;;; DIAGNOSIS
 
@@ -1117,7 +1114,7 @@ system which uses fontsets)."
       (insert "\n\n")
 
       (if window-system
-         (let ((font (cdr (assq 'font (frame-parameters)))))
+         (let ((font (frame-parameter nil 'font)))
            (insert "The font and fontset of the selected frame are:\n"
                    "     font: " font "\n"
                    "  fontset: " (face-attribute 'default :fontset) "\n"))