13247e75738fe2e361e18d5c220ca8482b6f56c6
[bpt/emacs.git] / lisp / eshell / esh-maint.el
1 ;;; esh-maint.el --- init code for building eshell -*- no-byte-compile: t -*-
2
3 ;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
4 ;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
5
6 ;; Author: John Wiegley <johnw@gnu.org>
7
8 ;; This file is part of GNU Emacs.
9
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
11 ;; it under the terms of the GNU General Public License as published by
12 ;; the Free Software Foundation; either version 3, or (at your option)
13 ;; any later version.
14
15 ;; GNU Emacs is distributed in the hope that it will be useful,
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;; GNU General Public License for more details.
19
20 ;; You should have received a copy of the GNU General Public License
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
22 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23 ;; Boston, MA 02110-1301, USA.
24
25 ;;; Commentary:
26
27 ;;; Code:
28
29 ;; This cannot be moved to the end of the file without causing a
30 ;; recursive require during bootstrap.
31 (provide 'esh-maint)
32
33 (and (fboundp 'font-lock-add-keywords)
34 (font-lock-add-keywords
35 'emacs-lisp-mode
36 '(("(eshell-for\\>" . font-lock-keyword-face)
37 ("(eshell-deftest\\>" . font-lock-keyword-face)
38 ("(eshell-condition-case\\>" . font-lock-keyword-face))))
39
40 (require 'pcomplete nil t) ; why?
41
42 (eval-when-compile
43 (require 'cl)
44 (setq cl-optimize-speed 9))
45
46 ;; (defun eshell-generate-autoloads ()
47 ;; (interactive)
48 ;; (require 'autoload)
49 ;; (setq generated-autoload-file
50 ;; (expand-file-name (car command-line-args-left)))
51 ;; (setq command-line-args-left (cdr command-line-args-left))
52 ;; (batch-update-autoloads))
53
54 (require 'eshell)
55 (require 'esh-mode) ; brings in eshell-util
56 (require 'esh-opt)
57 (require 'esh-test)
58
59 ;; (defun eshell-generate-main-menu ()
60 ;; "Create the main menu for the eshell documentation."
61 ;; (insert "@menu
62 ;; * The Emacs shell:: eshell.
63
64 ;; Core Functionality\n")
65 ;; (eshell-for module
66 ;; (sort (eshell-subgroups 'eshell)
67 ;; (function
68 ;; (lambda (a b)
69 ;; (string-lessp (symbol-name a)
70 ;; (symbol-name b)))))
71 ;; (insert (format "* %-34s"
72 ;; (concat (get module 'custom-tag) "::"))
73 ;; (symbol-name module) ".\n"))
74 ;; (insert "\nOptional Functionality\n")
75 ;; (eshell-for module
76 ;; (sort (eshell-subgroups 'eshell-module)
77 ;; (function
78 ;; (lambda (a b)
79 ;; (string-lessp (symbol-name a)
80 ;; (symbol-name b)))))
81 ;; (insert (format "* %-34s"
82 ;; (concat (get module 'custom-tag) "::"))
83 ;; (symbol-name module) ".\n"))
84 ;; (insert "@end menu\n"))
85
86 ;; (defun eshell-make-texi ()
87 ;; "Make the eshell.texi file."
88 ;; (interactive)
89 ;; (require 'eshell-auto)
90 ;; (require 'texidoc)
91 ;; (require 'pcomplete)
92 ;; (apply 'texidoc-files 'eshell-generate-main-menu "eshell.doci"
93 ;; (append
94 ;; (list "eshell.el")
95 ;; (sort (mapcar
96 ;; (function
97 ;; (lambda (sym)
98 ;; (let ((name (symbol-name sym)))
99 ;; (if (string-match "\\`eshell-\\(.*\\)" name)
100 ;; (setq name (concat "esh-" (match-string 1 name))))
101 ;; (concat name ".el"))))
102 ;; (eshell-subgroups 'eshell))
103 ;; 'string-lessp)
104 ;; (sort (mapcar
105 ;; (function
106 ;; (lambda (sym)
107 ;; (let ((name (symbol-name sym)))
108 ;; (if (string-match "\\`eshell-\\(.*\\)" name)
109 ;; (setq name (concat "em-" (match-string 1 name))))
110 ;; (concat name ".el"))))
111 ;; (eshell-subgroups 'eshell-module))
112 ;; 'string-lessp)
113 ;; (list "eshell.texi"))))
114
115 ;; (defun eshell-make-readme ()
116 ;; "Make the README file from eshell.el."
117 ;; (interactive)
118 ;; (require 'eshell-auto)
119 ;; (require 'texidoc)
120 ;; (require 'pcomplete)
121 ;; (texidoc-files nil "eshell.doci" "eshell.el" "README.texi")
122 ;; (set-buffer (get-buffer "README.texi"))
123 ;; (goto-char (point-min))
124 ;; (search-forward "@chapter")
125 ;; (beginning-of-line)
126 ;; (forward-line -1)
127 ;; (kill-line 2)
128 ;; (re-search-forward "^@section User Options")
129 ;; (beginning-of-line)
130 ;; (delete-region (point) (point-max))
131 ;; (insert "@bye\n")
132 ;; (save-buffer)
133 ;; (with-temp-buffer
134 ;; (call-process "makeinfo" nil t nil "--no-headers" "README.texi")
135 ;; (goto-char (point-min))
136 ;; (search-forward "The Emacs Shell")
137 ;; (beginning-of-line)
138 ;; (delete-region (point-min) (point))
139 ;; (write-file "README"))
140 ;; (delete-file "README.texi")
141 ;; (kill-buffer "README.texi"))
142
143 ;; arch-tag: 662089b6-78ec-48c5-b94f-d212279e8902
144 ;;; esh-maint.el ends here