From 0773c610689c7612b0d7b44e61701079b6f56419 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 5 Jul 2013 19:32:13 -0700 Subject: [PATCH] * admin/admin.el (make-manuals): Avoid hard-coding list of misc manuals. (manual-misc-manuals): New function. --- admin/ChangeLog | 5 +++++ admin/admin.el | 30 ++++++++++++++++++------------ 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/admin/ChangeLog b/admin/ChangeLog index 4f7c90bccdf..b9c86da98cb 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog @@ -1,3 +1,8 @@ +2013-07-06 Glenn Morris + + * admin.el (manual-misc-manuals): New function. + (make-manuals): Avoid hard-coding list of misc manuals. + 2013-07-05 Glenn Morris * admin.el (make-manuals): Use a standard location for lispintro. diff --git a/admin/admin.el b/admin/admin.el index 1f0e1b761d2..a5625ff051d 100644 --- a/admin/admin.el +++ b/admin/admin.el @@ -193,6 +193,22 @@ Root must be the root of an Emacs source tree." ;;; Various bits of magic for generating the web manuals +(defun manual-misc-manuals (root) + "Return doc/misc manuals as list of strings." + ;; Like `make -C doc/misc echo-info', but works if unconfigured. + (with-temp-buffer + (insert-file-contents (expand-file-name "doc/misc/Makefile.in" root)) + (search-forward "INFO_TARGETS = ") + (let ((start (point)) + res) + (end-of-line) + (while (and (looking-back "\\\\") + (zerop (forward-line 1))) + (end-of-line)) + (split-string (replace-regexp-in-string + "\\(\\\\\\|\\.info\\)" "" + (buffer-substring start (point))))))) + (defun make-manuals (root) "Generate the web manuals for the Emacs webpage." (interactive "DEmacs root directory: ") @@ -229,18 +245,8 @@ Root must be the root of an Emacs source tree." (manual-pdf texi (expand-file-name "eintr.pdf" pdf-dir)) (manual-ps texi (expand-file-name "eintr.ps" ps-dir))) ;; Misc manuals - (let ((manuals '("ada-mode" "auth" "autotype" "bovine" "calc" "cc-mode" - "cl" "dbus" "dired-x" "ebrowse" "ede" "ediff" - "edt" "eieio" "emacs-gnutls" "emacs-mime" "epa" "erc" "ert" - "eshell" "eudc" "faq" "flymake" "forms" - "gnus" "htmlfontify" "idlwave" "info" - "mairix-el" "message" "mh-e" "newsticker" - "nxml-mode" "org" "pcl-cvs" "pgg" "rcirc" - "reftex" "remember" "sasl" "sc" "semantic" - "ses" "sieve" "smtpmail" "speedbar" "srecode" "tramp" - "url" "vip" "viper" "widget" "wisent" "woman"))) - (dolist (manual manuals) - (manual-misc-html manual root html-node-dir html-mono-dir))) + (dolist (manual (manual-misc-manuals root)) + (manual-misc-html manual root html-node-dir html-mono-dir)) (message "Manuals created in %s" dest))) (defconst manual-doctype-string -- 2.11.4.GIT