]> code.delx.au - gnu-emacs/blobdiff - lisp/international/mule-diag.el
(font-show-log): Limit each listing to 20 items.
[gnu-emacs] / lisp / international / mule-diag.el
index 4a5a8a8ca8674a671de0eaf21eb35c93dfe823c7..5b58af5fcd9cf943264b62cdc8dca7949852e848 100644 (file)
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -25,9 +25,7 @@
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
@@ -1295,6 +1293,31 @@ character)")
                                      (string (string-to-number
                                               (nth 13 fields) 16)))))))))))
 
+;;;###autoload
+(defun font-show-log ()
+  "Show log of font listing and opening."
+  (interactive)
+  (if (eq font-log t)
+      (message "Font logging is currently suppressed")
+    (with-output-to-temp-buffer "*Help*"
+      (set-buffer standard-output)
+      (dolist (elt (reverse font-log))
+       (insert (format "%s: %s\n" (car elt) (cadr elt)))
+       (setq elt (nth 2 elt))
+       (if (or (vectorp elt) (listp elt))
+           (let ((limit 20)
+                 (i 0))
+             (catch 'tag
+               (mapc #'(lambda (x)
+                         (setq i (1+ i))
+                         (when (= i 20)
+                           (insert "  ...\n")
+                           (throw 'tag nil))
+                         (insert (format "  %s\n" x)))
+                     elt)))
+         (insert (format "  %s\n" elt)))))))
+
+
 (provide 'mule-diag)
 
 ;; arch-tag: cd3b607c-2893-45a0-a4fa-a6535754dbee