aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorChong Yidong2009-09-27 23:25:03 +0000
committerChong Yidong2009-09-27 23:25:03 +0000
commit15120dec6be0fe4f34133eecf91b3c61b9020c03 (patch)
treeb9dddd977b2786e5be80c49924a22efaf7b1d5f4 /lisp
parent5dc25d59aa9bb7267542c44ec47248f4c679e555 (diff)
downloademacs-15120dec6be0fe4f34133eecf91b3c61b9020c03.tar.gz
emacs-15120dec6be0fe4f34133eecf91b3c61b9020c03.zip
* menu-bar.el: Remove menu-bar-ediff-misc-menu from the Tools
menu. * ediff-hook.el: Move menu-bar-ediff-misc-menu into menu-bar-ediff-menu. * emacs-lisp/lisp-mode.el: Add doc-string-elt property to define-overloadable-function. * progmodes/autoconf.el: Provide autoconf as well, so that this file can be `require'd. * emacs-lisp/cl-macs.el (deftype): Add to cl-loaddefs. * emacs-lisp/autoload.el (generated-autoload-feature) (generated-autoload-load-name): New vars. (autoload-rubric, autoload-generate-file-autoloads): Use them. (make-autoload): Recognize define-overloadable-function and defclass forms (for EIEIO). * Makefile.in (update-subdirs): Exclude cedet directory.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog24
-rw-r--r--lisp/Makefile.in11
-rw-r--r--lisp/ediff-hook.el7
-rw-r--r--lisp/emacs-lisp/autoload.el38
-rw-r--r--lisp/emacs-lisp/cl-macs.el1
-rw-r--r--lisp/emacs-lisp/lisp-mode.el1
-rw-r--r--lisp/menu-bar.el2
-rw-r--r--lisp/progmodes/autoconf.el1
8 files changed, 76 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index ccb7bc72cf3..67d4ca6656b 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,27 @@
12009-09-27 Chong Yidong <cyd@stupidchicken.com>
2
3 * menu-bar.el: Remove menu-bar-ediff-misc-menu from the Tools
4 menu.
5
6 * ediff-hook.el: Move menu-bar-ediff-misc-menu into
7 menu-bar-ediff-menu.
8
9 * emacs-lisp/lisp-mode.el: Add doc-string-elt property to
10 define-overloadable-function.
11
12 * progmodes/autoconf.el: Provide autoconf as well, so that this
13 file can be `require'd.
14
15 * emacs-lisp/cl-macs.el (deftype): Add to cl-loaddefs.
16
17 * emacs-lisp/autoload.el (generated-autoload-feature)
18 (generated-autoload-load-name): New vars.
19 (autoload-rubric, autoload-generate-file-autoloads): Use them.
20 (make-autoload): Recognize define-overloadable-function and
21 defclass forms (for EIEIO).
22
23 * Makefile.in (update-subdirs): Exclude cedet directory.
24
12009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com> 252009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2 26
3 * term/ns-win.el: Don't set the region face background. (Bug#4381) 27 * term/ns-win.el: Don't set the region face background. (Bug#4381)
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index 2011f117135..103bd395bee 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -91,6 +91,15 @@ setwins_almost=subdirs=`(cd $$wd; find . -type d -print)`; \
91 esac; \ 91 esac; \
92 done 92 done
93 93
94# Find all subdirectories in which we might want to create subdirs.el
95
96setwins_for_subdirs=subdirs=`(cd $$wd; find . -type d -print)`; \
97 for file in $$subdirs; do \
98 case $$file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* | */cedet* ) ;; \
99 *) wins="$$wins $$wd/$$file" ;; \
100 esac; \
101 done
102
94# `compile-main' tends to be slower than `recompile' but can be parallelized 103# `compile-main' tends to be slower than `recompile' but can be parallelized
95# with "make -j" and results in more deterministic compilation warnings. 104# with "make -j" and results in more deterministic compilation warnings.
96# cus-load and finder-inf are not explicitly requested by anything, so 105# cus-load and finder-inf are not explicitly requested by anything, so
@@ -144,7 +153,7 @@ autoloads: $(LOADDEFS) doit
144$(lisp)/subdirs.el: 153$(lisp)/subdirs.el:
145 $(MAKE) $(MFLAGS) update-subdirs 154 $(MAKE) $(MFLAGS) update-subdirs
146update-subdirs: doit 155update-subdirs: doit
147 wd=$(lisp); $(setwins); \ 156 wd=$(lisp); $(setwins_for_subdirs); \
148 for file in $$wins; do \ 157 for file in $$wins; do \
149 $(srcdir)/update-subdirs $$file; \ 158 $(srcdir)/update-subdirs $$file; \
150 done; 159 done;
diff --git a/lisp/ediff-hook.el b/lisp/ediff-hook.el
index 6576757d706..92afb838b85 100644
--- a/lisp/ediff-hook.el
+++ b/lisp/ediff-hook.el
@@ -123,7 +123,7 @@
123 :style toggle 123 :style toggle
124 :selected (if (featurep 'ediff-tbar) 124 :selected (if (featurep 'ediff-tbar)
125 (ediff-use-toolbar-p))])) 125 (ediff-use-toolbar-p))]))
126 126
127 ;; put these menus before Object-Oriented-Browser in Tools menu 127 ;; put these menus before Object-Oriented-Browser in Tools menu
128 (if (and (featurep 'menubar) (not (featurep 'infodock)) 128 (if (and (featurep 'menubar) (not (featurep 'infodock))
129 (not (featurep 'ediff-hook))) 129 (not (featurep 'ediff-hook)))
@@ -141,8 +141,11 @@
141 (symbol-value 'menu-bar-ediff-merge-menu)) 141 (symbol-value 'menu-bar-ediff-merge-menu))
142 (defvar menu-bar-ediff-menu (make-sparse-keymap "Compare")) 142 (defvar menu-bar-ediff-menu (make-sparse-keymap "Compare"))
143 (fset 'menu-bar-ediff-menu (symbol-value 'menu-bar-ediff-menu)) 143 (fset 'menu-bar-ediff-menu (symbol-value 'menu-bar-ediff-menu))
144 144
145 ;; define ediff compare menu 145 ;; define ediff compare menu
146 (define-key menu-bar-ediff-menu [ediff-misc]
147 (list 'menu-item "Ediff Miscellanea" menu-bar-ediff-misc-menu))
148 (define-key menu-bar-ediff-menu [separator-ediff-misc] '("--"))
146 (define-key menu-bar-ediff-menu [window] 149 (define-key menu-bar-ediff-menu [window]
147 `(menu-item ,(purecopy "This Window and Next Window") compare-windows 150 `(menu-item ,(purecopy "This Window and Next Window") compare-windows
148 :help ,(purecopy "Compare the current window and the next window"))) 151 :help ,(purecopy "Compare the current window and the next window")))
diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el
index 2fe333671fe..bf00bbb4420 100644
--- a/lisp/emacs-lisp/autoload.el
+++ b/lisp/emacs-lisp/autoload.el
@@ -42,6 +42,18 @@ trailer starting with a FormFeed character.")
42;;;###autoload 42;;;###autoload
43(put 'generated-autoload-file 'safe-local-variable 'stringp) 43(put 'generated-autoload-file 'safe-local-variable 'stringp)
44 44
45(defvar generated-autoload-feature nil
46 "Feature for `generated-autoload-file' to provide.
47If nil, this defaults to `generated-autoload-file', sans extension.")
48;;;###autoload
49(put 'generated-autoload-feature 'safe-local-variable 'symbolp)
50
51(defvar generated-autoload-load-name nil
52 "Load name for `autoload' statements generated from autoload cookies.
53If nil, this defaults to the file name, sans extension.")
54;;;###autoload
55(put 'generated-autoload-load-name 'safe-local-variable 'stringp)
56
45;; This feels like it should be a defconst, but MH-E sets it to 57;; This feels like it should be a defconst, but MH-E sets it to
46;; ";;;###mh-autoload" for the autoloads that are to go into mh-loaddefs.el. 58;; ";;;###mh-autoload" for the autoloads that are to go into mh-loaddefs.el.
47(defvar generate-autoload-cookie ";;;###autoload" 59(defvar generate-autoload-cookie ";;;###autoload"
@@ -95,11 +107,12 @@ or macro definition or a defcustom)."
95 easy-mmode-define-global-mode define-global-minor-mode 107 easy-mmode-define-global-mode define-global-minor-mode
96 define-globalized-minor-mode 108 define-globalized-minor-mode
97 easy-mmode-define-minor-mode define-minor-mode 109 easy-mmode-define-minor-mode define-minor-mode
98 defun* defmacro*)) 110 defun* defmacro* define-overloadable-function))
99 (let* ((macrop (memq car '(defmacro defmacro*))) 111 (let* ((macrop (memq car '(defmacro defmacro*)))
100 (name (nth 1 form)) 112 (name (nth 1 form))
101 (args (case car 113 (args (case car
102 ((defun defmacro defun* defmacro*) (nth 2 form)) 114 ((defun defmacro defun* defmacro*
115 define-overloadable-function) (nth 2 form))
103 ((define-skeleton) '(&optional str arg)) 116 ((define-skeleton) '(&optional str arg))
104 ((define-generic-mode define-derived-mode 117 ((define-generic-mode define-derived-mode
105 define-compilation-mode) nil) 118 define-compilation-mode) nil)
@@ -122,6 +135,14 @@ or macro definition or a defcustom)."
122 (eq (car-safe (car body)) 'interactive)) 135 (eq (car-safe (car body)) 'interactive))
123 (if macrop (list 'quote 'macro) nil)))) 136 (if macrop (list 'quote 'macro) nil))))
124 137
138 ;; For defclass forms, use `eieio-defclass-autoload'.
139 ((eq car 'defclass)
140 (let ((name (nth 1 form))
141 (superclasses (nth 2 form))
142 (doc (nth 4 form)))
143 (list 'eieio-defclass-autoload (list 'quote name)
144 (list 'quote superclasses) file doc)))
145
125 ;; Convert defcustom to less space-consuming data. 146 ;; Convert defcustom to less space-consuming data.
126 ((eq car 'defcustom) 147 ((eq car 'defcustom)
127 (let ((varname (car-safe (cdr-safe form))) 148 (let ((varname (car-safe (cdr-safe form)))
@@ -245,7 +266,12 @@ information contained in FILE."
245 ";;\n" 266 ";;\n"
246 ";;; Code:\n\n" 267 ";;; Code:\n\n"
247 " \n" 268 " \n"
248 "(provide '" (file-name-sans-extension basename) ")\n" 269 "(provide '"
270 (if (and generated-autoload-feature
271 (symbolp generated-autoload-feature))
272 (format "%s" generated-autoload-feature)
273 (file-name-sans-extension basename))
274 ")\n"
249 ";; Local Variables:\n" 275 ";; Local Variables:\n"
250 ";; version-control: never\n" 276 ";; version-control: never\n"
251 ";; no-byte-compile: t\n" 277 ";; no-byte-compile: t\n"
@@ -336,7 +362,7 @@ Return non-nil if and only if FILE adds no autoloads to OUTFILE
336\(or OUTBUF if OUTFILE is nil)." 362\(or OUTBUF if OUTFILE is nil)."
337 (catch 'done 363 (catch 'done
338 (let ((autoloads-done '()) 364 (let ((autoloads-done '())
339 (load-name (autoload-file-load-name file)) 365 load-name
340 (print-length nil) 366 (print-length nil)
341 (print-level nil) 367 (print-level nil)
342 (print-readably t) ; This does something in Lucid Emacs. 368 (print-readably t) ; This does something in Lucid Emacs.
@@ -354,6 +380,10 @@ Return non-nil if and only if FILE adds no autoloads to OUTFILE
354 ;; Obey the no-update-autoloads file local variable. 380 ;; Obey the no-update-autoloads file local variable.
355 (unless no-update-autoloads 381 (unless no-update-autoloads
356 (message "Generating autoloads for %s..." file) 382 (message "Generating autoloads for %s..." file)
383 (setq load-name
384 (if (stringp generated-autoload-load-name)
385 generated-autoload-load-name
386 (autoload-file-load-name file)))
357 (save-excursion 387 (save-excursion
358 (save-restriction 388 (save-restriction
359 (widen) 389 (widen)
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 952c86740f5..a0b0d2e092b 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2438,6 +2438,7 @@ copier, a `NAME-p' predicate, and setf-able `NAME-SLOT' accessors.
2438 2438
2439;;; Types and assertions. 2439;;; Types and assertions.
2440 2440
2441;;;###autoload
2441(defmacro deftype (name arglist &rest body) 2442(defmacro deftype (name arglist &rest body)
2442 "Define NAME as a new data type. 2443 "Define NAME as a new data type.
2443The type name can then be used in `typecase', `check-type', etc." 2444The type name can then be used in `typecase', `check-type', etc."
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index 10a2b3aa41e..b9b7c6ad8f9 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -156,6 +156,7 @@
156(put 'defalias 'doc-string-elt 3) 156(put 'defalias 'doc-string-elt 3)
157(put 'defvaralias 'doc-string-elt 3) 157(put 'defvaralias 'doc-string-elt 3)
158(put 'define-category 'doc-string-elt 2) 158(put 'define-category 'doc-string-elt 2)
159(put 'define-overloadable-function 'doc-string-elt 3)
159 160
160(defvar lisp-doc-string-elt-property 'doc-string-elt 161(defvar lisp-doc-string-elt-property 'doc-string-elt
161 "The symbol property that holds the docstring position info.") 162 "The symbol property that holds the docstring position info.")
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index 362613bfd18..b94faa390ef 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -1307,8 +1307,6 @@ mail status in mode line"))
1307(define-key menu-bar-tools-menu [separator-compare] 1307(define-key menu-bar-tools-menu [separator-compare]
1308 '("--")) 1308 '("--"))
1309 1309
1310(define-key menu-bar-tools-menu [ediff-misc]
1311 `(menu-item ,(purecopy "Ediff Miscellanea") menu-bar-ediff-misc-menu))
1312(define-key menu-bar-tools-menu [epatch] 1310(define-key menu-bar-tools-menu [epatch]
1313 `(menu-item ,(purecopy "Apply Patch") menu-bar-epatch-menu)) 1311 `(menu-item ,(purecopy "Apply Patch") menu-bar-epatch-menu))
1314(define-key menu-bar-tools-menu [ediff-merge] 1312(define-key menu-bar-tools-menu [ediff-merge]
diff --git a/lisp/progmodes/autoconf.el b/lisp/progmodes/autoconf.el
index 2b7e885c58b..734ae8c4e44 100644
--- a/lisp/progmodes/autoconf.el
+++ b/lisp/progmodes/autoconf.el
@@ -107,6 +107,7 @@ searching backwards at another AC_... command."
107 (run-mode-hooks 'autoconf-mode-hook)) 107 (run-mode-hooks 'autoconf-mode-hook))
108 108
109(provide 'autoconf-mode) 109(provide 'autoconf-mode)
110(provide 'autoconf)
110 111
111;; arch-tag: 4f44778f-2ab3-49a1-a103-f0acb9df2de4 112;; arch-tag: 4f44778f-2ab3-49a1-a103-f0acb9df2de4
112;;; autoconf.el ends here 113;;; autoconf.el ends here