aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog30
-rw-r--r--lisp/emacs-lisp/byte-run.el1
-rw-r--r--lisp/emacs-lisp/cl-compat.el9
-rw-r--r--lisp/emacs-lisp/cl-seq.el12
-rw-r--r--lisp/emacs-lisp/debug.el2
-rw-r--r--lisp/emacs-lisp/easymenu.el3
-rw-r--r--lisp/emacs-lisp/eieio.el3
-rw-r--r--lisp/emacs-lisp/lisp-mnt.el4
-rw-r--r--lisp/emacs-lisp/lisp-mode.el14
-rw-r--r--lisp/emacs-lisp/timer.el3
-rw-r--r--lisp/international/mule.el3
-rw-r--r--lisp/jka-cmpr-hook.el3
-rw-r--r--lisp/net/dbus.el4
-rw-r--r--lisp/progmodes/python.el2
-rw-r--r--lisp/subr.el9
-rw-r--r--lisp/window.el1
16 files changed, 52 insertions, 51 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 63aeae241c4..74f4c73fb7d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,29 @@
12010-08-30 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 Use `declare' in defmacros.
4 * window.el (save-selected-window):
5 * subr.el (with-temp-file, with-temp-message, with-syntax-table):
6 * progmodes/python.el (def-python-skeleton):
7 * net/dbus.el (dbus-ignore-errors):
8 * jka-cmpr-hook.el (with-auto-compression-mode):
9 * international/mule.el (with-category-table):
10 * emacs-lisp/timer.el (with-timeout):
11 * emacs-lisp/lisp-mnt.el (lm-with-file):
12 * emacs-lisp/eieio.el (with-slots):
13 * emacs-lisp/easymenu.el (easy-menu-define):
14 * emacs-lisp/debug.el (debugger-env-macro):
15 * emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq)
16 (Multiple-value-call, Multiple-value-prog1):
17 * emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key)
18 (cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and
19 edebug rule to definition.
20 * emacs-lisp/lisp-mode.el (save-selected-window)
21 (with-current-buffer, combine-after-change-calls)
22 (with-output-to-string, with-temp-file, with-temp-buffer)
23 (with-temp-message, with-syntax-table, read-if, eval-after-load)
24 (dolist, dotimes, when, unless):
25 * emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
26
12010-08-29 Chong Yidong <cyd@stupidchicken.com> 272010-08-29 Chong Yidong <cyd@stupidchicken.com>
2 28
3 * finder.el: Require `package'. 29 * finder.el: Require `package'.
@@ -7,8 +33,8 @@
7 (finder-compile-keywords): Compute package--builtins and 33 (finder-compile-keywords): Compute package--builtins and
8 finder-keywords-hash instead of finder-keywords-hash, respecting 34 finder-keywords-hash instead of finder-keywords-hash, respecting
9 the "Package" header. 35 the "Package" header.
10 (finder-unknown-keywords, finder-list-matches): Use 36 (finder-unknown-keywords, finder-list-matches):
11 finder-keywords-hash and package--list-packages. 37 Use finder-keywords-hash and package--list-packages.
12 (finder-mode): Don't set font-lock-defaults. 38 (finder-mode): Don't set font-lock-defaults.
13 (finder-exit): We don't use "*Finder-package*" and "*Finder 39 (finder-exit): We don't use "*Finder-package*" and "*Finder
14 Category*" buffers anymore. 40 Category*" buffers anymore.
diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el
index a6273f8c484..6ce141eb8e6 100644
--- a/lisp/emacs-lisp/byte-run.el
+++ b/lisp/emacs-lisp/byte-run.el
@@ -66,7 +66,6 @@ The return value of this function is not used."
66;; Redefined in byte-optimize.el. 66;; Redefined in byte-optimize.el.
67;; This is not documented--it's not clear that we should promote it. 67;; This is not documented--it's not clear that we should promote it.
68(fset 'inline 'progn) 68(fset 'inline 'progn)
69(put 'inline 'lisp-indent-function 0)
70 69
71;;; Interface to inline functions. 70;;; Interface to inline functions.
72 71
diff --git a/lisp/emacs-lisp/cl-compat.el b/lisp/emacs-lisp/cl-compat.el
index d9e926cc41d..f4923b6f8c6 100644
--- a/lisp/emacs-lisp/cl-compat.el
+++ b/lisp/emacs-lisp/cl-compat.el
@@ -71,11 +71,6 @@
71;;; by capitalizing the first letter: Values, Multiple-value-*, 71;;; by capitalizing the first letter: Values, Multiple-value-*,
72;;; to avoid conflict with the new-style definitions in cl-macs. 72;;; to avoid conflict with the new-style definitions in cl-macs.
73 73
74(put 'Multiple-value-bind 'lisp-indent-function 2)
75(put 'Multiple-value-setq 'lisp-indent-function 2)
76(put 'Multiple-value-call 'lisp-indent-function 1)
77(put 'Multiple-value-prog1 'lisp-indent-function 1)
78
79(defvar *mvalues-values* nil) 74(defvar *mvalues-values* nil)
80 75
81(defun Values (&rest val-forms) 76(defun Values (&rest val-forms)
@@ -91,18 +86,22 @@
91 (list *mvalues-temp*)))) 86 (list *mvalues-temp*))))
92 87
93(defmacro Multiple-value-call (function &rest args) 88(defmacro Multiple-value-call (function &rest args)
89 (declare (indent 1))
94 (list 'apply function 90 (list 'apply function
95 (cons 'append 91 (cons 'append
96 (mapcar (function (lambda (x) (list 'Multiple-value-list x))) 92 (mapcar (function (lambda (x) (list 'Multiple-value-list x)))
97 args)))) 93 args))))
98 94
99(defmacro Multiple-value-bind (vars form &rest body) 95(defmacro Multiple-value-bind (vars form &rest body)
96 (declare (indent 2))
100 (list* 'multiple-value-bind vars (list 'Multiple-value-list form) body)) 97 (list* 'multiple-value-bind vars (list 'Multiple-value-list form) body))
101 98
102(defmacro Multiple-value-setq (vars form) 99(defmacro Multiple-value-setq (vars form)
100 (declare (indent 2))
103 (list 'multiple-value-setq vars (list 'Multiple-value-list form))) 101 (list 'multiple-value-setq vars (list 'Multiple-value-list form)))
104 102
105(defmacro Multiple-value-prog1 (form &rest body) 103(defmacro Multiple-value-prog1 (form &rest body)
104 (declare (indent 1))
106 (list 'prog1 form (list* 'let '((*mvalues-values* nil)) body))) 105 (list 'prog1 form (list* 'let '((*mvalues-values* nil)) body)))
107 106
108 107
diff --git a/lisp/emacs-lisp/cl-seq.el b/lisp/emacs-lisp/cl-seq.el
index 5bed71b2ed7..a5070e4acea 100644
--- a/lisp/emacs-lisp/cl-seq.el
+++ b/lisp/emacs-lisp/cl-seq.el
@@ -48,6 +48,7 @@
48;;; this file independent from cl-macs. 48;;; this file independent from cl-macs.
49 49
50(defmacro cl-parsing-keywords (kwords other-keys &rest body) 50(defmacro cl-parsing-keywords (kwords other-keys &rest body)
51 (declare (indent 2) (debug (sexp sexp &rest form)))
51 (cons 52 (cons
52 'let* 53 'let*
53 (cons (mapcar 54 (cons (mapcar
@@ -84,13 +85,13 @@
84 (car cl-keys-temp))) 85 (car cl-keys-temp)))
85 '(setq cl-keys-temp (cdr (cdr cl-keys-temp))))))) 86 '(setq cl-keys-temp (cdr (cdr cl-keys-temp)))))))
86 body)))) 87 body))))
87(put 'cl-parsing-keywords 'lisp-indent-function 2)
88(put 'cl-parsing-keywords 'edebug-form-spec '(sexp sexp &rest form))
89 88
90(defmacro cl-check-key (x) 89(defmacro cl-check-key (x)
90 (declare (debug edebug-forms))
91 (list 'if 'cl-key (list 'funcall 'cl-key x) x)) 91 (list 'if 'cl-key (list 'funcall 'cl-key x) x))
92 92
93(defmacro cl-check-test-nokey (item x) 93(defmacro cl-check-test-nokey (item x)
94 (declare (debug edebug-forms))
94 (list 'cond 95 (list 'cond
95 (list 'cl-test 96 (list 'cl-test
96 (list 'eq (list 'not (list 'funcall 'cl-test item x)) 97 (list 'eq (list 'not (list 'funcall 'cl-test item x))
@@ -101,20 +102,17 @@
101 (list 'equal item x) (list 'eq item x))))) 102 (list 'equal item x) (list 'eq item x)))))
102 103
103(defmacro cl-check-test (item x) 104(defmacro cl-check-test (item x)
105 (declare (debug edebug-forms))
104 (list 'cl-check-test-nokey item (list 'cl-check-key x))) 106 (list 'cl-check-test-nokey item (list 'cl-check-key x)))
105 107
106(defmacro cl-check-match (x y) 108(defmacro cl-check-match (x y)
109 (declare (debug edebug-forms))
107 (setq x (list 'cl-check-key x) y (list 'cl-check-key y)) 110 (setq x (list 'cl-check-key x) y (list 'cl-check-key y))
108 (list 'if 'cl-test 111 (list 'if 'cl-test
109 (list 'eq (list 'not (list 'funcall 'cl-test x y)) 'cl-test-not) 112 (list 'eq (list 'not (list 'funcall 'cl-test x y)) 'cl-test-not)
110 (list 'if (list 'numberp x) 113 (list 'if (list 'numberp x)
111 (list 'equal x y) (list 'eq x y)))) 114 (list 'equal x y) (list 'eq x y))))
112 115
113(put 'cl-check-key 'edebug-form-spec 'edebug-forms)
114(put 'cl-check-test 'edebug-form-spec 'edebug-forms)
115(put 'cl-check-test-nokey 'edebug-form-spec 'edebug-forms)
116(put 'cl-check-match 'edebug-form-spec 'edebug-forms)
117
118(defvar cl-test) (defvar cl-test-not) 116(defvar cl-test) (defvar cl-test-not)
119(defvar cl-if) (defvar cl-if-not) 117(defvar cl-if) (defvar cl-if-not)
120(defvar cl-key) 118(defvar cl-key)
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el
index b8ff3c03ee9..17fcf7ad6c5 100644
--- a/lisp/emacs-lisp/debug.el
+++ b/lisp/emacs-lisp/debug.el
@@ -514,9 +514,9 @@ Applies to the frame whose line point is on in the backtrace."
514 (insert ? ))) 514 (insert ? )))
515 (beginning-of-line)) 515 (beginning-of-line))
516 516
517(put 'debugger-env-macro 'lisp-indent-function 0)
518(defmacro debugger-env-macro (&rest body) 517(defmacro debugger-env-macro (&rest body)
519 "Run BODY in original environment." 518 "Run BODY in original environment."
519 (declare (indent 0))
520 `(save-excursion 520 `(save-excursion
521 (if (null (buffer-name debugger-old-buffer)) 521 (if (null (buffer-name debugger-old-buffer))
522 ;; old buffer deleted 522 ;; old buffer deleted
diff --git a/lisp/emacs-lisp/easymenu.el b/lisp/emacs-lisp/easymenu.el
index 8d734b22e3f..9992861fc3c 100644
--- a/lisp/emacs-lisp/easymenu.el
+++ b/lisp/emacs-lisp/easymenu.el
@@ -44,8 +44,6 @@ menus, turn this variable off, otherwise it is probably better to keep it on.")
44 (if (stringp s) (intern s) s)) 44 (if (stringp s) (intern s) s))
45 45
46;;;###autoload 46;;;###autoload
47(put 'easy-menu-define 'lisp-indent-function 'defun)
48;;;###autoload
49(defmacro easy-menu-define (symbol maps doc menu) 47(defmacro easy-menu-define (symbol maps doc menu)
50 "Define a menu bar submenu in maps MAPS, according to MENU. 48 "Define a menu bar submenu in maps MAPS, according to MENU.
51 49
@@ -151,6 +149,7 @@ unselectable text. A string consisting solely of hyphens is displayed
151as a solid horizontal line. 149as a solid horizontal line.
152 150
153A menu item can be a list with the same format as MENU. This is a submenu." 151A menu item can be a list with the same format as MENU. This is a submenu."
152 (declare (indent defun))
154 `(progn 153 `(progn
155 ,(if symbol `(defvar ,symbol nil ,doc)) 154 ,(if symbol `(defvar ,symbol nil ,doc))
156 (easy-menu-do-define (quote ,symbol) ,maps ,doc ,menu))) 155 (easy-menu-do-define (quote ,symbol) ,maps ,doc ,menu)))
diff --git a/lisp/emacs-lisp/eieio.el b/lisp/emacs-lisp/eieio.el
index f5e684e1323..34fb5b9c9fc 100644
--- a/lisp/emacs-lisp/eieio.el
+++ b/lisp/emacs-lisp/eieio.el
@@ -1610,6 +1610,7 @@ SPEC-LIST is of a form similar to `let'. For example:
1610Where each VAR is the local variable given to the associated 1610Where each VAR is the local variable given to the associated
1611SLOT. A slot specified without a variable name is given a 1611SLOT. A slot specified without a variable name is given a
1612variable name of the same name as the slot." 1612variable name of the same name as the slot."
1613 (declare (indent 2))
1613 ;; Transform the spec-list into a symbol-macrolet spec-list. 1614 ;; Transform the spec-list into a symbol-macrolet spec-list.
1614 (let ((mappings (mapcar (lambda (entry) 1615 (let ((mappings (mapcar (lambda (entry)
1615 (let ((var (if (listp entry) (car entry) entry)) 1616 (let ((var (if (listp entry) (car entry) entry))
@@ -1618,8 +1619,6 @@ variable name of the same name as the slot."
1618 spec-list))) 1619 spec-list)))
1619 (append (list 'symbol-macrolet mappings) 1620 (append (list 'symbol-macrolet mappings)
1620 body))) 1621 body)))
1621(put 'with-slots 'lisp-indent-function 2)
1622
1623 1622
1624;;; Simple generators, and query functions. None of these would do 1623;;; Simple generators, and query functions. None of these would do
1625;; well embedded into an object. 1624;; well embedded into an object.
diff --git a/lisp/emacs-lisp/lisp-mnt.el b/lisp/emacs-lisp/lisp-mnt.el
index 10b7baf294f..7df65acb283 100644
--- a/lisp/emacs-lisp/lisp-mnt.el
+++ b/lisp/emacs-lisp/lisp-mnt.el
@@ -298,6 +298,7 @@ The returned value is a list of strings, one per line."
298(defmacro lm-with-file (file &rest body) 298(defmacro lm-with-file (file &rest body)
299 "Execute BODY in a buffer containing the contents of FILE. 299 "Execute BODY in a buffer containing the contents of FILE.
300If FILE is nil, execute BODY in the current buffer." 300If FILE is nil, execute BODY in the current buffer."
301 (declare (indent 1) (debug t))
301 (let ((filesym (make-symbol "file"))) 302 (let ((filesym (make-symbol "file")))
302 `(let ((,filesym ,file)) 303 `(let ((,filesym ,file))
303 (if ,filesym 304 (if ,filesym
@@ -311,9 +312,6 @@ If FILE is nil, execute BODY in the current buffer."
311 (with-syntax-table emacs-lisp-mode-syntax-table 312 (with-syntax-table emacs-lisp-mode-syntax-table
312 ,@body)))))) 313 ,@body))))))
313 314
314(put 'lm-with-file 'lisp-indent-function 1)
315(put 'lm-with-file 'edebug-form-spec t)
316
317;; Fixme: Probably this should be amalgamated with copyright.el; also 315;; Fixme: Probably this should be amalgamated with copyright.el; also
318;; we need a check for ranges in copyright years. 316;; we need a check for ranges in copyright years.
319 317
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index ff8e187dd53..e4330e43fc9 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -1210,31 +1210,17 @@ This function also returns nil meaning don't specify the indentation."
1210(put 'prog2 'lisp-indent-function 2) 1210(put 'prog2 'lisp-indent-function 2)
1211(put 'save-excursion 'lisp-indent-function 0) 1211(put 'save-excursion 'lisp-indent-function 0)
1212(put 'save-window-excursion 'lisp-indent-function 0) 1212(put 'save-window-excursion 'lisp-indent-function 0)
1213(put 'save-selected-window 'lisp-indent-function 0)
1214(put 'save-restriction 'lisp-indent-function 0) 1213(put 'save-restriction 'lisp-indent-function 0)
1215(put 'save-match-data 'lisp-indent-function 0) 1214(put 'save-match-data 'lisp-indent-function 0)
1216(put 'save-current-buffer 'lisp-indent-function 0) 1215(put 'save-current-buffer 'lisp-indent-function 0)
1217(put 'with-current-buffer 'lisp-indent-function 1)
1218(put 'combine-after-change-calls 'lisp-indent-function 0)
1219(put 'with-output-to-string 'lisp-indent-function 0)
1220(put 'with-temp-file 'lisp-indent-function 1)
1221(put 'with-temp-buffer 'lisp-indent-function 0)
1222(put 'with-temp-message 'lisp-indent-function 1)
1223(put 'with-syntax-table 'lisp-indent-function 1)
1224(put 'let 'lisp-indent-function 1) 1216(put 'let 'lisp-indent-function 1)
1225(put 'let* 'lisp-indent-function 1) 1217(put 'let* 'lisp-indent-function 1)
1226(put 'while 'lisp-indent-function 1) 1218(put 'while 'lisp-indent-function 1)
1227(put 'if 'lisp-indent-function 2) 1219(put 'if 'lisp-indent-function 2)
1228(put 'read-if 'lisp-indent-function 2)
1229(put 'catch 'lisp-indent-function 1) 1220(put 'catch 'lisp-indent-function 1)
1230(put 'condition-case 'lisp-indent-function 2) 1221(put 'condition-case 'lisp-indent-function 2)
1231(put 'unwind-protect 'lisp-indent-function 1) 1222(put 'unwind-protect 'lisp-indent-function 1)
1232(put 'with-output-to-temp-buffer 'lisp-indent-function 1) 1223(put 'with-output-to-temp-buffer 'lisp-indent-function 1)
1233(put 'eval-after-load 'lisp-indent-function 1)
1234(put 'dolist 'lisp-indent-function 1)
1235(put 'dotimes 'lisp-indent-function 1)
1236(put 'when 'lisp-indent-function 1)
1237(put 'unless 'lisp-indent-function 1)
1238 1224
1239(defun indent-sexp (&optional endpos) 1225(defun indent-sexp (&optional endpos)
1240 "Indent each line of the list starting just after point. 1226 "Indent each line of the list starting just after point.
diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el
index 63ec072e7e5..6ae6a86857e 100644
--- a/lisp/emacs-lisp/timer.el
+++ b/lisp/emacs-lisp/timer.el
@@ -443,8 +443,6 @@ This function returns a timer object which you can use in `cancel-timer'."
443 "This is the timer function used for the timer made by `with-timeout'." 443 "This is the timer function used for the timer made by `with-timeout'."
444 (throw tag 'timeout)) 444 (throw tag 'timeout))
445 445
446(put 'with-timeout 'lisp-indent-function 1)
447
448(defvar with-timeout-timers nil 446(defvar with-timeout-timers nil
449 "List of all timers used by currently pending `with-timeout' calls.") 447 "List of all timers used by currently pending `with-timeout' calls.")
450 448
@@ -456,6 +454,7 @@ event (such as keyboard input, input from subprocesses, or a certain time);
456if the program loops without waiting in any way, the timeout will not 454if the program loops without waiting in any way, the timeout will not
457be detected. 455be detected.
458\n(fn (SECONDS TIMEOUT-FORMS...) BODY)" 456\n(fn (SECONDS TIMEOUT-FORMS...) BODY)"
457 (declare (indent 1))
459 (let ((seconds (car list)) 458 (let ((seconds (car list))
460 (timeout-forms (cdr list))) 459 (timeout-forms (cdr list)))
461 `(let ((with-timeout-tag (cons nil nil)) 460 `(let ((with-timeout-tag (cons nil nil))
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 84b8db3e9ca..9f1833924b3 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -2297,13 +2297,12 @@ It returns the number of characters changed."
2297 (setq table val))) 2297 (setq table val)))
2298 (translate-region-internal start end table)) 2298 (translate-region-internal start end table))
2299 2299
2300(put 'with-category-table 'lisp-indent-function 1)
2301
2302(defmacro with-category-table (table &rest body) 2300(defmacro with-category-table (table &rest body)
2303 "Execute BODY like `progn' with TABLE the current category table. 2301 "Execute BODY like `progn' with TABLE the current category table.
2304The category table of the current buffer is saved, BODY is evaluated, 2302The category table of the current buffer is saved, BODY is evaluated,
2305then the saved table is restored, even in case of an abnormal exit. 2303then the saved table is restored, even in case of an abnormal exit.
2306Value is what BODY returns." 2304Value is what BODY returns."
2305 (declare (indent 1) (debug t))
2307 (let ((old-table (make-symbol "old-table")) 2306 (let ((old-table (make-symbol "old-table"))
2308 (old-buffer (make-symbol "old-buffer"))) 2307 (old-buffer (make-symbol "old-buffer")))
2309 `(let ((,old-table (category-table)) 2308 `(let ((,old-table (category-table))
diff --git a/lisp/jka-cmpr-hook.el b/lisp/jka-cmpr-hook.el
index 8c68a9494f2..68f564c488f 100644
--- a/lisp/jka-cmpr-hook.el
+++ b/lisp/jka-cmpr-hook.el
@@ -335,6 +335,7 @@ Return the new status of auto compression (non-nil means on)."
335 335
336(defmacro with-auto-compression-mode (&rest body) 336(defmacro with-auto-compression-mode (&rest body)
337 "Evalute BODY with automatic file compression and uncompression enabled." 337 "Evalute BODY with automatic file compression and uncompression enabled."
338 (declare (indent 0))
338 (let ((already-installed (make-symbol "already-installed"))) 339 (let ((already-installed (make-symbol "already-installed")))
339 `(let ((,already-installed (jka-compr-installed-p))) 340 `(let ((,already-installed (jka-compr-installed-p)))
340 (unwind-protect 341 (unwind-protect
@@ -344,8 +345,6 @@ Return the new status of auto compression (non-nil means on)."
344 ,@body) 345 ,@body)
345 (unless ,already-installed 346 (unless ,already-installed
346 (jka-compr-uninstall)))))) 347 (jka-compr-uninstall))))))
347(put 'with-auto-compression-mode 'lisp-indent-function 0)
348
349 348
350;; This is what we need to know about jka-compr-handler 349;; This is what we need to know about jka-compr-handler
351;; in order to decide when to call it. 350;; in order to decide when to call it.
diff --git a/lisp/net/dbus.el b/lisp/net/dbus.el
index ee876e04190..8d9512d6f9f 100644
--- a/lisp/net/dbus.el
+++ b/lisp/net/dbus.el
@@ -92,12 +92,10 @@
92(defmacro dbus-ignore-errors (&rest body) 92(defmacro dbus-ignore-errors (&rest body)
93 "Execute BODY; signal D-Bus error when `dbus-debug' is non-nil. 93 "Execute BODY; signal D-Bus error when `dbus-debug' is non-nil.
94Otherwise, return result of last form in BODY, or all other errors." 94Otherwise, return result of last form in BODY, or all other errors."
95 (declare (indent 0) (debug t))
95 `(condition-case err 96 `(condition-case err
96 (progn ,@body) 97 (progn ,@body)
97 (dbus-error (when dbus-debug (signal (car err) (cdr err)))))) 98 (dbus-error (when dbus-debug (signal (car err) (cdr err))))))
98
99(put 'dbus-ignore-errors 'lisp-indent-function 0)
100(put 'dbus-ignore-errors 'edebug-form-spec '(form body))
101(font-lock-add-keywords 'emacs-lisp-mode '("\\<dbus-ignore-errors\\>")) 99(font-lock-add-keywords 'emacs-lisp-mode '("\\<dbus-ignore-errors\\>"))
102 100
103(defvar dbus-event-error-hooks nil 101(defvar dbus-event-error-hooks nil
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 849951a633a..2690d399411 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -2285,6 +2285,7 @@ the if condition."
2285(eval-when-compile 2285(eval-when-compile
2286 ;; Define a user-level skeleton and add it to the abbrev table. 2286 ;; Define a user-level skeleton and add it to the abbrev table.
2287(defmacro def-python-skeleton (name &rest elements) 2287(defmacro def-python-skeleton (name &rest elements)
2288 (declare (indent 2))
2288 (let* ((name (symbol-name name)) 2289 (let* ((name (symbol-name name))
2289 (function (intern (concat "python-insert-" name)))) 2290 (function (intern (concat "python-insert-" name))))
2290 `(progn 2291 `(progn
@@ -2297,7 +2298,6 @@ the if condition."
2297 (define-skeleton ,function 2298 (define-skeleton ,function
2298 ,(format "Insert Python \"%s\" template." name) 2299 ,(format "Insert Python \"%s\" template." name)
2299 ,@elements))))) 2300 ,@elements)))))
2300(put 'def-python-skeleton 'lisp-indent-function 2)
2301 2301
2302;; From `skeleton-further-elements' set below: 2302;; From `skeleton-further-elements' set below:
2303;; `<': outdent a level; 2303;; `<': outdent a level;
diff --git a/lisp/subr.el b/lisp/subr.el
index 67036ba6412..83cf7211906 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1630,6 +1630,7 @@ Return nil if there isn't one."
1630 load-elt (and loads (car loads))))) 1630 load-elt (and loads (car loads)))))
1631 load-elt)) 1631 load-elt))
1632 1632
1633(put 'eval-after-load 'lisp-indent-function 1)
1633(defun eval-after-load (file form) 1634(defun eval-after-load (file form)
1634 "Arrange that, if FILE is ever loaded, FORM will be run at that time. 1635 "Arrange that, if FILE is ever loaded, FORM will be run at that time.
1635If FILE is already loaded, evaluate FORM right now. 1636If FILE is already loaded, evaluate FORM right now.
@@ -2713,7 +2714,7 @@ nor the buffer list."
2713 "Create a new buffer, evaluate BODY there, and write the buffer to FILE. 2714 "Create a new buffer, evaluate BODY there, and write the buffer to FILE.
2714The value returned is the value of the last form in BODY. 2715The value returned is the value of the last form in BODY.
2715See also `with-temp-buffer'." 2716See also `with-temp-buffer'."
2716 (declare (debug t)) 2717 (declare (indent 1) (debug t))
2717 (let ((temp-file (make-symbol "temp-file")) 2718 (let ((temp-file (make-symbol "temp-file"))
2718 (temp-buffer (make-symbol "temp-buffer"))) 2719 (temp-buffer (make-symbol "temp-buffer")))
2719 `(let ((,temp-file ,file) 2720 `(let ((,temp-file ,file)
@@ -2735,7 +2736,7 @@ The value returned is the value of the last form in BODY.
2735MESSAGE is written to the message log buffer if `message-log-max' is non-nil. 2736MESSAGE is written to the message log buffer if `message-log-max' is non-nil.
2736If MESSAGE is nil, the echo area and message log buffer are unchanged. 2737If MESSAGE is nil, the echo area and message log buffer are unchanged.
2737Use a MESSAGE of \"\" to temporarily clear the echo area." 2738Use a MESSAGE of \"\" to temporarily clear the echo area."
2738 (declare (debug t)) 2739 (declare (debug t) (indent 1))
2739 (let ((current-message (make-symbol "current-message")) 2740 (let ((current-message (make-symbol "current-message"))
2740 (temp-message (make-symbol "with-temp-message"))) 2741 (temp-message (make-symbol "with-temp-message")))
2741 `(let ((,temp-message ,message) 2742 `(let ((,temp-message ,message)
@@ -2765,7 +2766,7 @@ See also `with-temp-file' and `with-output-to-string'."
2765 (kill-buffer ,temp-buffer))))))) 2766 (kill-buffer ,temp-buffer)))))))
2766 2767
2767(defmacro with-silent-modifications (&rest body) 2768(defmacro with-silent-modifications (&rest body)
2768 "Execute BODY, pretending it does not modifies the buffer. 2769 "Execute BODY, pretending it does not modify the buffer.
2769If BODY performs real modifications to the buffer's text, other 2770If BODY performs real modifications to the buffer's text, other
2770than cosmetic ones, undo data may become corrupted. 2771than cosmetic ones, undo data may become corrupted.
2771Typically used around modifications of text-properties which do not really 2772Typically used around modifications of text-properties which do not really
@@ -3227,7 +3228,7 @@ that can be added."
3227The syntax table of the current buffer is saved, BODY is evaluated, and the 3228The syntax table of the current buffer is saved, BODY is evaluated, and the
3228saved table is restored, even in case of an abnormal exit. 3229saved table is restored, even in case of an abnormal exit.
3229Value is what BODY returns." 3230Value is what BODY returns."
3230 (declare (debug t)) 3231 (declare (debug t) (indent 1))
3231 (let ((old-table (make-symbol "table")) 3232 (let ((old-table (make-symbol "table"))
3232 (old-buffer (make-symbol "buffer"))) 3233 (old-buffer (make-symbol "buffer")))
3233 `(let ((,old-table (syntax-table)) 3234 `(let ((,old-table (syntax-table))
diff --git a/lisp/window.el b/lisp/window.el
index 2f6c64ba3d1..9a52667cea0 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -55,6 +55,7 @@ This macro saves and restores the current buffer, since otherwise
55its normal operation could make a different buffer current. The 55its normal operation could make a different buffer current. The
56order of recently selected windows and the buffer list ordering 56order of recently selected windows and the buffer list ordering
57are not altered by this macro (unless they are altered in BODY)." 57are not altered by this macro (unless they are altered in BODY)."
58 (declare (indent 0) (debug t))
58 `(let ((save-selected-window-window (selected-window)) 59 `(let ((save-selected-window-window (selected-window))
59 ;; It is necessary to save all of these, because calling 60 ;; It is necessary to save all of these, because calling
60 ;; select-window changes frame-selected-window for whatever 61 ;; select-window changes frame-selected-window for whatever