* texi/infohack.el (infohack-texi-format): Encode messages to terminal while
authoryamaoka <yamaoka>
Wed, 18 Jun 2003 05:22:37 +0000 (05:22 +0000)
committeryamaoka <yamaoka>
Wed, 18 Jun 2003 05:22:37 +0000 (05:22 +0000)
 formatting info pages.

ChangeLog
texi/infohack.el

index f3cf655..b41115f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-06-18  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * texi/infohack.el (infohack-texi-format): Encode messages to
+       terminal while formatting info pages.
+
 2003-06-16  Katsumi Yamaoka  <yamaoka@jpl.org>
 
        * lisp/message.el (message-check-news-header-syntax): Replace
index 3c173ba..982c9a5 100644 (file)
@@ -156,7 +156,26 @@ Both characters must have the same length of multi-byte form."
          (texinfo-every-node-update)
          (set-buffer-modified-p nil)
          (message "texinfo formatting %s..." file)
-         (texinfo-format-buffer nil)
+         (if (featurep 'mule)
+             ;; Encode messages to terminal.
+             (let ((si:message (symbol-function 'message)))
+               (fset 'message
+                     (byte-compile
+                      (if (boundp 'MULE)
+                          (lambda (fmt &rest args)
+                            (funcall si:message "%s"
+                                     (code-convert-string
+                                      (apply 'format fmt args)
+                                      '*internal* '*junet*)))
+                        (lambda (fmt &rest args)
+                          (funcall si:message "%s"
+                                   (encode-coding-string
+                                    (apply 'format fmt args)
+                                    'iso-2022-7bit))))))
+               (unwind-protect
+                   (texinfo-format-buffer nil)
+                 (fset 'message si:message)))
+           (texinfo-format-buffer nil))
          (if (buffer-modified-p)
              (progn (message "Saving modified %s" (buffer-file-name))
                     (save-buffer))))