2001-01-19 16:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
authorShengHuo ZHU <zsh@cs.rochester.edu>
Fri, 19 Jan 2001 21:24:15 +0000 (21:24 +0000)
committerShengHuo ZHU <zsh@cs.rochester.edu>
Fri, 19 Jan 2001 21:24:15 +0000 (21:24 +0000)
* infohack.el: New file.

* Makefile.in: Use it.

texi/ChangeLog
texi/Makefile.in
texi/infohack.el [new file with mode: 0644]

index f46d193..ce38d18 100644 (file)
@@ -1,3 +1,9 @@
+2001-01-19 16:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
+
+       * infohack.el: New file.
+
+       * Makefile.in: Use it.
+
 2001-01-18 16:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
 
        * gnus.texi (Hiding Headers): Add.
index 5e8f6d4..f68a847 100644 (file)
@@ -10,9 +10,6 @@ TEXI2PDF=texi2pdf
 MAKEINFO=@MAKEINFO@
 EMACS=@EMACS@
 EMACSINFO=$(EMACS) -batch -q -no-site-file
-INFOSWI=-l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
-XINFOSWI=-l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer
-EMACSINFOHACK=-eval '(while (re-search-forward "@\\(end \\)?ifnottex" nil t) (replace-match ""))'
 PDFLATEX=pdflatex
 LATEX=latex
 DVIPS=dvips
@@ -30,9 +27,9 @@ most: texi2latex.elc latex latexps
 
 .texi:
        if test "x$(MAKEINFO)" != "xno" ; then \
-         makeinfo -I $(srcdir) -o $* $<; \
+         $(MAKEINFO) -I $(srcdir) -o $* $<; \
        else \
-         $(EMACSINFO) -eval '(find-file "$<")' $(EMACSINFOHACK) $(XINFOSWI); \
+         $(EMACSINFO) -l $(srcdir)/infohack.el -eval '(infohack "$<")'; \
        fi
 
 dvi: gnus.dvi message.dvi refcard.dvi emacs-mime.dvi
diff --git a/texi/infohack.el b/texi/infohack.el
new file mode 100644 (file)
index 0000000..2fcf0fb
--- /dev/null
@@ -0,0 +1,49 @@
+;;; infohack.el --- a hack to format info file.
+;; Copyright (C)  2001  Free Software Foundation, Inc.
+
+;; Author: Shenghuo Zhu <zsh@cs.rochester.edu>
+;; Keywords: info
+
+;; This file is part of GNU Emacs.
+
+;; 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 2, 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
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; 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., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;; Commentary:
+
+;;; Code:
+
+(require 'texinfmt)
+
+(defun infohack-remove-unsupported ()
+  (goto-char (point-min))
+  (while (re-search-forward "@\\(end \\)?ifnottex" nil t) 
+    (replace-match "")))
+
+(defun infohack (file)
+  (let ((dest-directory default-directory))
+    (find-file file)
+    (infohack-remove-unsupported)
+    (texinfo-every-node-update) 
+    (texinfo-format-buffer t) ;; Don't save any file.
+    (setq default-directory dest-directory)
+    (setq buffer-file-name 
+         (expand-file-name (file-name-nondirectory buffer-file-name)
+                           default-directory))
+    (if (> (buffer-size) 100000)
+       (Info-split))
+    (save-buffer)))
+
+;;; infohack.el ends here