aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog49
-rw-r--r--lisp/ChangeLog.122
-rw-r--r--lisp/ChangeLog.152
-rw-r--r--lisp/ChangeLog.92
-rw-r--r--lisp/apropos.el36
-rw-r--r--lisp/cedet/cedet.el2
-rw-r--r--lisp/cedet/ede/proj-elisp.el2
-rw-r--r--lisp/cedet/semantic/bovine/c.el2
-rw-r--r--lisp/cedet/semantic/decorate/include.el2
-rw-r--r--lisp/cedet/semantic/edit.el2
-rw-r--r--lisp/cedet/semantic/format.el2
-rw-r--r--lisp/cedet/semantic/html.el2
-rw-r--r--lisp/cedet/semantic/scope.el2
-rw-r--r--lisp/cedet/semantic/tag-file.el2
-rw-r--r--lisp/cedet/semantic/texi.el2
-rw-r--r--lisp/cedet/srecode/extract.el2
-rw-r--r--lisp/cedet/srecode/getset.el2
-rw-r--r--lisp/cedet/srecode/mode.el2
-rw-r--r--lisp/dframe.el2
-rw-r--r--lisp/electric.el31
-rw-r--r--lisp/emacs-lisp/eieio-opt.el2
-rw-r--r--lisp/emacs-lisp/eieio.el2
-rw-r--r--lisp/emulation/viper-cmd.el2
-rw-r--r--lisp/erc/erc-backend.el3
-rw-r--r--lisp/eshell/esh-var.el2
-rw-r--r--lisp/ezimage.el4
-rw-r--r--lisp/font-lock.el2
-rw-r--r--lisp/gnus/gnus-sum.el2
-rw-r--r--lisp/htmlfontify.el4
-rw-r--r--lisp/international/quail.el12
-rw-r--r--lisp/international/robin.el2
-rw-r--r--lisp/mail/rmail.el2
-rw-r--r--lisp/mail/rmailsum.el21
-rw-r--r--lisp/mh-e/mh-e.el2
-rw-r--r--lisp/net/dbus.el2
-rw-r--r--lisp/net/soap-client.el2
-rw-r--r--lisp/net/webjump.el2
-rw-r--r--lisp/org/ChangeLog34
-rw-r--r--lisp/org/org-list.el4
-rw-r--r--lisp/org/org-plot.el2
-rw-r--r--lisp/progmodes/cc-fonts.el2
-rw-r--r--lisp/progmodes/ebnf2ps.el2
-rw-r--r--lisp/progmodes/executable.el16
-rw-r--r--lisp/progmodes/gud.el2
-rw-r--r--lisp/progmodes/idlw-shell.el4
-rw-r--r--lisp/progmodes/idlwave.el2
-rw-r--r--lisp/progmodes/modula2.el2
-rw-r--r--lisp/progmodes/pascal.el2
-rw-r--r--lisp/progmodes/ps-mode.el2
-rw-r--r--lisp/ses.el2
-rw-r--r--lisp/subr.el43
-rw-r--r--lisp/term.el2
-rw-r--r--lisp/textmodes/conf-mode.el2
-rw-r--r--lisp/textmodes/ispell.el2
-rw-r--r--lisp/textmodes/sgml-mode.el4
-rw-r--r--lisp/window.el117
56 files changed, 258 insertions, 206 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 0b1572f9bce..65ab83e0204 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,52 @@
12011-11-14 Glenn Morris <rgm@gnu.org>
2
3 * progmodes/executable.el
4 (executable-make-buffer-file-executable-if-script-p):
5 Handle file-modes returning nil.
6
7 * mail/rmail.el (rmail-no-mail-p): Remove mode-line N/M indicator.
8
9 * mail/rmailsum.el (rmail-summary, rmail-new-summary)
10 (rmail-new-summary-1): Allow empty summaries. (Bug#9964)
11 (rmail-new-summary): Remember that rmail-summary-buffer is buffer-local.
12
132011-11-12 Martin Rudalics <rudalics@gmx.at>
14
15 * window.el (window-resize, delete-window): Use window-splits
16 variable instead of function.
17 (window-state-get-1, window-state-put-2, window-state-put):
18 Don't deal with windows' splits status.
19
202011-11-12 Glenn Morris <rgm@gnu.org>
21
22 * apropos.el (apropos-do-all, apropos-library, apropos-value)
23 (apropos-documentation): Doc fixes.
24
252011-11-11 Juanma Barranquero <lekktu@gmail.com>
26
27 * progmodes/idlw-shell.el (idlwave-shell-make-new-bp-overlay):
28 * textmodes/sgml-mode.el (html-tag-help): Fix typos.
29
302011-11-11 Stefan Monnier <monnier@iro.umontreal.ca>
31
32 * electric.el (electric-indent-post-self-insert-function): Make it
33 possible for a char to only indent in some circumstances.
34 (electric-indent-mode): Simplify.
35
362011-11-11 Martin Rudalics <rudalics@gmx.at>
37
38 * window.el (windows-with-parameter): Remove unused function.
39 (windows-at-side): Rename to window-at-side-list.
40 (window-check, window-atom-check, window-atom-check-1)
41 (window-side-check, window-size-ignore, window-size-fixed-1)
42 (window-in-direction-2): Prefix with "window--".
43 (window-tree-1): Rename to window--subtree, fix doc-string.
44
452011-11-11 Glenn Morris <rgm@gnu.org>
46
47 * subr.el (eval-after-load): If FILE is already loaded,
48 evaluate FORM before it gets wrapped in more stuff. (Bug#10009)
49
12011-11-10 Glenn Morris <rgm@gnu.org> 502011-11-10 Glenn Morris <rgm@gnu.org>
2 51
3 * vc/vc-svn.el (vc-svn-create-repo, vc-svn-modify-change-comment): 52 * vc/vc-svn.el (vc-svn-create-repo, vc-svn-modify-change-comment):
diff --git a/lisp/ChangeLog.12 b/lisp/ChangeLog.12
index 35572bd6105..1e7ed845b49 100644
--- a/lisp/ChangeLog.12
+++ b/lisp/ChangeLog.12
@@ -18374,7 +18374,7 @@
18374 (tar-summarize-buffer): Don't clear the modified-p bit if it wasn't 18374 (tar-summarize-buffer): Don't clear the modified-p bit if it wasn't
18375 cleared before. Obey default-enable-multibyte-characters. 18375 cleared before. Obey default-enable-multibyte-characters.
18376 Use mapconcat. Simplify setting of tar-header-offset. 18376 Use mapconcat. Simplify setting of tar-header-offset.
18377 (tar-mode-map): Move initialization inside delcaration. 18377 (tar-mode-map): Move initialization inside declaration.
18378 (tar-flag-deleted): Use `abs'. 18378 (tar-flag-deleted): Use `abs'.
18379 (tar-expunge-internal): Remove unused var `line'. 18379 (tar-expunge-internal): Remove unused var `line'.
18380 (tar-expunge-internal): Don't hardcode point-min==1. 18380 (tar-expunge-internal): Don't hardcode point-min==1.
diff --git a/lisp/ChangeLog.15 b/lisp/ChangeLog.15
index 9cb24baeb1f..ed70075754c 100644
--- a/lisp/ChangeLog.15
+++ b/lisp/ChangeLog.15
@@ -2252,7 +2252,7 @@
2252 Use define-derived-mode. 2252 Use define-derived-mode.
2253 * textmodes/reftex-index.el (reftex-index-phrases-mode-map) 2253 * textmodes/reftex-index.el (reftex-index-phrases-mode-map)
2254 (reftex-index-mode-map): Rename from reftex-index(-phrases)-map. 2254 (reftex-index-mode-map): Rename from reftex-index(-phrases)-map.
2255 Move init into delcaration. 2255 Move init into declaration.
2256 (reftex-index-mode, reftex-index-phrases-mode): 2256 (reftex-index-mode, reftex-index-phrases-mode):
2257 Use define-derived-mode. 2257 Use define-derived-mode.
2258 * speedbar.el (speedbar-mode-syntax-table): Renaqme from 2258 * speedbar.el (speedbar-mode-syntax-table): Renaqme from
diff --git a/lisp/ChangeLog.9 b/lisp/ChangeLog.9
index 14214ccc3d3..edfe26fbc03 100644
--- a/lisp/ChangeLog.9
+++ b/lisp/ChangeLog.9
@@ -2628,7 +2628,7 @@
2628 2628
26292001-07-06 Vinicius Jose Latorre <vinicius@cpqd.com.br> 26292001-07-06 Vinicius Jose Latorre <vinicius@cpqd.com.br>
2630 2630
2631 * ps-print.el: Use locale dependant date to print date in header. 2631 * ps-print.el: Use locale dependent date to print date in header.
2632 Doc fix. 2632 Doc fix.
2633 (ps-print-version): New version number (6.5.3). 2633 (ps-print-version): New version number (6.5.3).
2634 (ps-right-header, ps-right-footer): Initialization and doc fix. 2634 (ps-right-header, ps-right-footer): Initialization and doc fix.
diff --git a/lisp/apropos.el b/lisp/apropos.el
index d3d66f2a070..1dfe5cde9ed 100644
--- a/lisp/apropos.el
+++ b/lisp/apropos.el
@@ -66,9 +66,22 @@
66 66
67;; I see a degradation of maybe 10-20% only. 67;; I see a degradation of maybe 10-20% only.
68(defcustom apropos-do-all nil 68(defcustom apropos-do-all nil
69 "Whether the apropos commands should do more. 69 "Non nil means apropos commands will search more extensively.
70 70This may be slower. This option affects the following commands:
71Slows them down more or less. Set this non-nil if you have a fast machine." 71
72`apropos-variable' will search all variables, not just user variables.
73`apropos-command' will also search non-interactive functions.
74`apropos' will search all symbols, not just functions, variables, faces,
75and those with property lists.
76`apropos-value' will also search in property lists and functions.
77`apropos-documentation' will search all documentation strings, not just
78those in the etc/DOC documentation file.
79
80This option only controls the default behavior. Each of the above
81commands also has an optional argument to request a more extensive search.
82
83Additionally, this option makes the function `apropos-library'
84include key-binding information in its output."
72 :group 'apropos 85 :group 'apropos
73 :type 'boolean) 86 :type 'boolean)
74 87
@@ -582,7 +595,8 @@ Returns list of symbols and documentation found."
582(defun apropos-library (file) 595(defun apropos-library (file)
583 "List the variables and functions defined by library FILE. 596 "List the variables and functions defined by library FILE.
584FILE should be one of the libraries currently loaded and should 597FILE should be one of the libraries currently loaded and should
585thus be found in `load-history'." 598thus be found in `load-history'. If `apropos-do-all' is non-nil,
599the output includes key-bindings of commands."
586 (interactive 600 (interactive
587 (let* ((libs (delq nil (mapcar 'car load-history))) 601 (let* ((libs (delq nil (mapcar 'car load-history)))
588 (libs 602 (libs
@@ -693,7 +707,9 @@ search for matches for that word as a substring. If it is a list of words,
693search for matches for any two (or more) of those words. 707search for matches for any two (or more) of those words.
694 708
695With \\[universal-argument] prefix, or if `apropos-do-all' is non-nil, also looks 709With \\[universal-argument] prefix, or if `apropos-do-all' is non-nil, also looks
696at the function and at the names and values of properties. 710at function definitions (arguments, documentation and body) and at the
711names and values of properties.
712
697Returns list of symbols and values found." 713Returns list of symbols and values found."
698 (interactive (list (apropos-read-pattern "value") 714 (interactive (list (apropos-read-pattern "value")
699 current-prefix-arg)) 715 current-prefix-arg))
@@ -738,10 +754,14 @@ or a regexp (using some regexp special characters). If it is a word,
738search for matches for that word as a substring. If it is a list of words, 754search for matches for that word as a substring. If it is a list of words,
739search for matches for any two (or more) of those words. 755search for matches for any two (or more) of those words.
740 756
741With \\[universal-argument] prefix, or if `apropos-do-all' is non-nil, also use 757Note that by default this command only searches in the file specified by
742documentation that is not stored in the documentation file and show key 758`internal-doc-file-name'; i.e., the etc/DOC file. With \\[universal-argument] prefix,
743bindings. 759or if `apropos-do-all' is non-nil, it searches all currently defined
760documentation strings.
761
744Returns list of symbols and documentation found." 762Returns list of symbols and documentation found."
763 ;; The doc used to say that DO-ALL includes key-bindings info in the
764 ;; output, but I cannot see that that is true.
745 (interactive (list (apropos-read-pattern "documentation") 765 (interactive (list (apropos-read-pattern "documentation")
746 current-prefix-arg)) 766 current-prefix-arg))
747 (apropos-parse-pattern pattern) 767 (apropos-parse-pattern pattern)
diff --git a/lisp/cedet/cedet.el b/lisp/cedet/cedet.el
index d2fb066515b..d7645bc97ed 100644
--- a/lisp/cedet/cedet.el
+++ b/lisp/cedet/cedet.el
@@ -75,7 +75,7 @@
75This is used by `semantic-mode' and `global-ede-mode'.") 75This is used by `semantic-mode' and `global-ede-mode'.")
76 76
77(defun cedet-version () 77(defun cedet-version ()
78 "Display all active versions of CEDET and Dependant packages. 78 "Display all active versions of CEDET and Dependent packages.
79 79
80The PACKAGE column is the name of a given package from CEDET. 80The PACKAGE column is the name of a given package from CEDET.
81 81
diff --git a/lisp/cedet/ede/proj-elisp.el b/lisp/cedet/ede/proj-elisp.el
index 42a20cc4a1a..66c71063363 100644
--- a/lisp/cedet/ede/proj-elisp.el
+++ b/lisp/cedet/ede/proj-elisp.el
@@ -217,7 +217,7 @@ is found, such as a `-version' variable, or the standard header."
217 (save-excursion 217 (save-excursion
218 (if (file-symlink-p ec) 218 (if (file-symlink-p ec)
219 (progn 219 (progn
220 ;; Desymlinkafy 220 ;; Desymlinkify
221 (rename-file ec (concat ec ".tmp")) 221 (rename-file ec (concat ec ".tmp"))
222 (copy-file (concat ec ".tmp") ec) 222 (copy-file (concat ec ".tmp") ec)
223 (delete-file (concat ec ".tmp")))) 223 (delete-file (concat ec ".tmp"))))
diff --git a/lisp/cedet/semantic/bovine/c.el b/lisp/cedet/semantic/bovine/c.el
index 0b3e6881891..1076402ac91 100644
--- a/lisp/cedet/semantic/bovine/c.el
+++ b/lisp/cedet/semantic/bovine/c.el
@@ -249,7 +249,7 @@ Return the defined symbol as a special spp lex token."
249 (point)))) 249 (point))))
250 ) 250 )
251 251
252 ;; Only do argument checking if the paren was immediatly after 252 ;; Only do argument checking if the paren was immediately after
253 ;; the macro name. 253 ;; the macro name.
254 (if with-args 254 (if with-args
255 (semantic-lex-spp-first-token-arg-list (car raw-stream))) 255 (semantic-lex-spp-first-token-arg-list (car raw-stream)))
diff --git a/lisp/cedet/semantic/decorate/include.el b/lisp/cedet/semantic/decorate/include.el
index e984965a737..a37f43d177f 100644
--- a/lisp/cedet/semantic/decorate/include.el
+++ b/lisp/cedet/semantic/decorate/include.el
@@ -296,7 +296,7 @@ This mode provides a nice context menu on the include statements."
296 ;; Set ourselves up for synchronization 296 ;; Set ourselves up for synchronization
297 (semanticdb-cache-get 297 (semanticdb-cache-get
298 table 'semantic-decoration-unparsed-include-cache) 298 table 'semantic-decoration-unparsed-include-cache)
299 ;; Add a dependancy. 299 ;; Add a dependency.
300 (let ((table semanticdb-current-table)) 300 (let ((table semanticdb-current-table))
301 (semanticdb-add-reference table tag)) 301 (semanticdb-add-reference table tag))
302 ) 302 )
diff --git a/lisp/cedet/semantic/edit.el b/lisp/cedet/semantic/edit.el
index 7f7e82a95c2..307071e743c 100644
--- a/lisp/cedet/semantic/edit.el
+++ b/lisp/cedet/semantic/edit.el
@@ -427,7 +427,7 @@ See `semantic-edits-change-leaf-tag' for details on parents."
427 ;; which must have a value by now. 427 ;; which must have a value by now.
428 428
429 ;; Loop over the search list to find the preceding CDR. 429 ;; Loop over the search list to find the preceding CDR.
430 ;; Fortunatly, (car overlapped-tags) happens to be 430 ;; Fortunately, (car overlapped-tags) happens to be
431 ;; the first tag positionally. 431 ;; the first tag positionally.
432 (let ((tokstart (semantic-tag-start (car overlapped-tags)))) 432 (let ((tokstart (semantic-tag-start (car overlapped-tags))))
433 (while (and list-to-search 433 (while (and list-to-search
diff --git a/lisp/cedet/semantic/format.el b/lisp/cedet/semantic/format.el
index fa6e7517624..381801559da 100644
--- a/lisp/cedet/semantic/format.el
+++ b/lisp/cedet/semantic/format.el
@@ -291,7 +291,7 @@ local definitions."
291 ;; Try and find a trail of parents from PARENT 291 ;; Try and find a trail of parents from PARENT
292 (let ((rlist (list parent)) 292 (let ((rlist (list parent))
293 ) 293 )
294 ;; IMPLELEMENT ME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 294 ;; IMPLEMENT ME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
295 (reverse rlist))) 295 (reverse rlist)))
296 296
297(define-overloadable-function semantic-format-tag-canonical-name (tag &optional parent color) 297(define-overloadable-function semantic-format-tag-canonical-name (tag &optional parent color)
diff --git a/lisp/cedet/semantic/html.el b/lisp/cedet/semantic/html.el
index 972ce5e26bc..137759d46ac 100644
--- a/lisp/cedet/semantic/html.el
+++ b/lisp/cedet/semantic/html.el
@@ -61,7 +61,7 @@
61(define-mode-local-override semantic-parse-region 61(define-mode-local-override semantic-parse-region
62 html-mode (&rest ignore) 62 html-mode (&rest ignore)
63 "Parse the current html buffer for semantic tags. 63 "Parse the current html buffer for semantic tags.
64INGNORE any arguments. Always parse the whole buffer. 64IGNORE any arguments. Always parse the whole buffer.
65Each tag returned is of the form: 65Each tag returned is of the form:
66 (\"NAME\" section (:members CHILDREN)) 66 (\"NAME\" section (:members CHILDREN))
67or 67or
diff --git a/lisp/cedet/semantic/scope.el b/lisp/cedet/semantic/scope.el
index 78a1fd049f0..53695015e4a 100644
--- a/lisp/cedet/semantic/scope.el
+++ b/lisp/cedet/semantic/scope.el
@@ -426,7 +426,7 @@ implicit \"object\"."
426 426
427 ;; Collect all the types (class, etc) that are in our heratage. 427 ;; Collect all the types (class, etc) that are in our heratage.
428 ;; These are types that we can extract members from, not those 428 ;; These are types that we can extract members from, not those
429 ;; delclared in using statements, or the like. 429 ;; declared in using statements, or the like.
430 ;; Get the PARENTS including nesting scope for this location. 430 ;; Get the PARENTS including nesting scope for this location.
431 (while parentlist 431 (while parentlist
432 (oset miniscope scope currentscope) 432 (oset miniscope scope currentscope)
diff --git a/lisp/cedet/semantic/tag-file.el b/lisp/cedet/semantic/tag-file.el
index 17fd3b45356..d118d9b6203 100644
--- a/lisp/cedet/semantic/tag-file.el
+++ b/lisp/cedet/semantic/tag-file.el
@@ -154,7 +154,7 @@ Depends on `semantic-dependency-include-path' for searching. Always searches
154 (setq result 154 (setq result
155 ;; I don't have a plan for refreshing tags with a dependency 155 ;; I don't have a plan for refreshing tags with a dependency
156 ;; stuck on them somehow. I'm thinking that putting a cache 156 ;; stuck on them somehow. I'm thinking that putting a cache
157 ;; onto the dependancy finding with a hash table might be best. 157 ;; onto the dependency finding with a hash table might be best.
158 ;;(if (semantic--tag-get-property tag 'dependency-file) 158 ;;(if (semantic--tag-get-property tag 'dependency-file)
159 ;; (semantic--tag-get-property tag 'dependency-file) 159 ;; (semantic--tag-get-property tag 'dependency-file)
160 (:override 160 (:override
diff --git a/lisp/cedet/semantic/texi.el b/lisp/cedet/semantic/texi.el
index 393d64e6420..30c5a5cf8b6 100644
--- a/lisp/cedet/semantic/texi.el
+++ b/lisp/cedet/semantic/texi.el
@@ -421,7 +421,7 @@ Optional argument POINT is where to look for the environment."
421 texinfo-mode (context) 421 texinfo-mode (context)
422 "List smart completions at point. 422 "List smart completions at point.
423Since texinfo is not a programming language the default version is not 423Since texinfo is not a programming language the default version is not
424useful. Insted, look at the current symbol. If it is a command 424useful. Instead, look at the current symbol. If it is a command
425do primitive texinfo built ins. If not, use ispell to lookup words 425do primitive texinfo built ins. If not, use ispell to lookup words
426that start with that symbol." 426that start with that symbol."
427 (let ((prefix (car (oref context :prefix))) 427 (let ((prefix (car (oref context :prefix)))
diff --git a/lisp/cedet/srecode/extract.el b/lisp/cedet/srecode/extract.el
index dba4b876edb..80e6f9d8d1c 100644
--- a/lisp/cedet/srecode/extract.el
+++ b/lisp/cedet/srecode/extract.el
@@ -66,7 +66,7 @@
66 66
67(defmethod srecode-extract-state-extract ((st srecode-extract-state) 67(defmethod srecode-extract-state-extract ((st srecode-extract-state)
68 endpoint) 68 endpoint)
69 "Perform an extraction on the extract state ST with ENDPOITNT. 69 "Perform an extraction on the extract state ST with ENDPOINT.
70If there was no waiting inserter, do nothing." 70If there was no waiting inserter, do nothing."
71 (when (oref st lastinserter) 71 (when (oref st lastinserter)
72 (save-match-data 72 (save-match-data
diff --git a/lisp/cedet/srecode/getset.el b/lisp/cedet/srecode/getset.el
index a582d4ff59e..9a6c27dcd73 100644
--- a/lisp/cedet/srecode/getset.el
+++ b/lisp/cedet/srecode/getset.el
@@ -215,7 +215,7 @@ INCLASS specifies if the cursor is already in CLASS or not."
215 (when (not te) 215 (when (not te)
216 (message "Unknown location for tag-end in %s:" (semantic-tag-name aftertag))) 216 (message "Unknown location for tag-end in %s:" (semantic-tag-name aftertag)))
217 (goto-char te) 217 (goto-char te)
218 ;; If there is a comment immediatly after aftertag, skip over it. 218 ;; If there is a comment immediately after aftertag, skip over it.
219 (when (looking-at (concat "\\s-*\n?\\s-*" semantic-lex-comment-regex)) 219 (when (looking-at (concat "\\s-*\n?\\s-*" semantic-lex-comment-regex))
220 (let ((pos (point)) 220 (let ((pos (point))
221 (rnext (semantic-find-tag-by-overlay-next (point)))) 221 (rnext (semantic-find-tag-by-overlay-next (point))))
diff --git a/lisp/cedet/srecode/mode.el b/lisp/cedet/srecode/mode.el
index 6ca0cefe9a7..bb2db79acc6 100644
--- a/lisp/cedet/srecode/mode.el
+++ b/lisp/cedet/srecode/mode.el
@@ -366,7 +366,7 @@ programming modes."
366 (define-key srecode-prefix-map oldkey nil) 366 (define-key srecode-prefix-map oldkey nil)
367 ))) 367 )))
368 368
369 ;; Update Keybings 369 ;; Update Keybindings
370 (let ((oldbinding (lookup-key srecode-prefix-map binding))) 370 (let ((oldbinding (lookup-key srecode-prefix-map binding)))
371 371
372 ;; During development, allow overrides. 372 ;; During development, allow overrides.
diff --git a/lisp/dframe.el b/lisp/dframe.el
index 02eeef064fe..93d9e7948cf 100644
--- a/lisp/dframe.el
+++ b/lisp/dframe.el
@@ -523,7 +523,7 @@ LOCATION can be one of 'random, 'left-right, or 'top-bottom."
523 (funcall f 'default frame))))) 523 (funcall f 'default frame)))))
524 524
525(defun dframe-detach (frame-var cache-var buffer-var) 525(defun dframe-detach (frame-var cache-var buffer-var)
526 "Detatch the frame in symbol FRAME-VAR. 526 "Detach the frame in symbol FRAME-VAR.
527CACHE-VAR and BUFFER-VAR are symbols as in `dframe-frame-mode'" 527CACHE-VAR and BUFFER-VAR are symbols as in `dframe-frame-mode'"
528 (with-current-buffer (symbol-value buffer-var) 528 (with-current-buffer (symbol-value buffer-var)
529 (rename-buffer (buffer-name) t) 529 (rename-buffer (buffer-name) t)
diff --git a/lisp/electric.el b/lisp/electric.el
index 3d7c1fd8ac4..69acb773648 100644
--- a/lisp/electric.el
+++ b/lisp/electric.el
@@ -197,7 +197,11 @@ Returns nil when we can't find this char."
197;; value, which only works well if the variable is preloaded. 197;; value, which only works well if the variable is preloaded.
198;;;###autoload 198;;;###autoload
199(defvar electric-indent-chars '(?\n) 199(defvar electric-indent-chars '(?\n)
200 "Characters that should cause automatic reindentation.") 200 "Characters that should cause automatic reindentation.
201Each entry of the list can be either a character or a cons of the
202form (CHAR . PREDICATE) which means that CHAR should cause reindentation
203only if PREDICATE returns non-nil. PREDICATE is called with no arguments
204and with point before the inserted char.")
201 205
202(defun electric-indent-post-self-insert-function () 206(defun electric-indent-post-self-insert-function ()
203 ;; FIXME: This reindents the current line, but what we really want instead is 207 ;; FIXME: This reindents the current line, but what we really want instead is
@@ -208,7 +212,12 @@ Returns nil when we can't find this char."
208 ;; There might be a way to get it working by analyzing buffer-undo-list, but 212 ;; There might be a way to get it working by analyzing buffer-undo-list, but
209 ;; it looks challenging. 213 ;; it looks challenging.
210 (let (pos) 214 (let (pos)
211 (when (and (memq last-command-event electric-indent-chars) 215 (when (and (or (memq last-command-event electric-indent-chars)
216 (let ((cp (assq last-command-event electric-indent-chars)))
217 (and cp (setq pos (electric--after-char-pos))
218 (save-excursion
219 (goto-char (1- pos))
220 (funcall (cdr cp))))))
212 ;; Don't reindent while inserting spaces at beginning of line. 221 ;; Don't reindent while inserting spaces at beginning of line.
213 (or (not (memq last-command-event '(?\s ?\t))) 222 (or (not (memq last-command-event '(?\s ?\t)))
214 (save-excursion (skip-chars-backward " \t") (not (bolp)))) 223 (save-excursion (skip-chars-backward " \t") (not (bolp))))
@@ -253,19 +262,13 @@ in `electric-indent-chars'."
253 :group 'electricity 262 :group 'electricity
254 (if electric-indent-mode 263 (if electric-indent-mode
255 (add-hook 'post-self-insert-hook 264 (add-hook 'post-self-insert-hook
256 #'electric-indent-post-self-insert-function) 265 #'electric-indent-post-self-insert-function
266 ;; post-self-insert-hooks interact in non-trivial ways.
267 ;; It turns out that electric-indent-mode generally works
268 ;; better last.
269 'append)
257 (remove-hook 'post-self-insert-hook 270 (remove-hook 'post-self-insert-hook
258 #'electric-indent-post-self-insert-function)) 271 #'electric-indent-post-self-insert-function)))
259 ;; FIXME: electric-indent-mode and electric-layout-mode interact
260 ;; in non-trivial ways. It turns out that electric-indent-mode works
261 ;; better if it is run *after* electric-layout-mode's hook.
262 (when (memq #'electric-layout-post-self-insert-function
263 (memq #'electric-indent-post-self-insert-function
264 (default-value 'post-self-insert-hook)))
265 (remove-hook 'post-self-insert-hook
266 #'electric-layout-post-self-insert-function)
267 (add-hook 'post-self-insert-hook
268 #'electric-layout-post-self-insert-function)))
269 272
270;; Electric pairing. 273;; Electric pairing.
271 274
diff --git a/lisp/emacs-lisp/eieio-opt.el b/lisp/emacs-lisp/eieio-opt.el
index 1b101cef875..8869530dc23 100644
--- a/lisp/emacs-lisp/eieio-opt.el
+++ b/lisp/emacs-lisp/eieio-opt.el
@@ -92,7 +92,7 @@ Optional HEADERFCN should be called to insert a few bits of info first."
92 (princ "Class ") 92 (princ "Class ")
93 (prin1 class) 93 (prin1 class)
94 (terpri) 94 (terpri)
95 ;; Inheritence tree information 95 ;; Inheritance tree information
96 (let ((pl (class-parents class))) 96 (let ((pl (class-parents class)))
97 (when pl 97 (when pl
98 (princ " Inherits from ") 98 (princ " Inherits from ")
diff --git a/lisp/emacs-lisp/eieio.el b/lisp/emacs-lisp/eieio.el
index f1fe9594fc0..352bd245ba4 100644
--- a/lisp/emacs-lisp/eieio.el
+++ b/lisp/emacs-lisp/eieio.el
@@ -1,5 +1,5 @@
1;;; eieio.el --- Enhanced Implementation of Emacs Interpreted Objects 1;;; eieio.el --- Enhanced Implementation of Emacs Interpreted Objects
2;;; or maybe Eric's Implementation of Emacs Intrepreted Objects 2;;; or maybe Eric's Implementation of Emacs Interpreted Objects
3 3
4;; Copyright (C) 1995-1996, 1998-2011 Free Software Foundation, Inc. 4;; Copyright (C) 1995-1996, 1998-2011 Free Software Foundation, Inc.
5 5
diff --git a/lisp/emulation/viper-cmd.el b/lisp/emulation/viper-cmd.el
index 359b3ff751d..df37157f7a9 100644
--- a/lisp/emulation/viper-cmd.el
+++ b/lisp/emulation/viper-cmd.el
@@ -1599,7 +1599,7 @@ as a Meta key and any number of multiple escapes are allowed."
1599;; call viper-execute-com to execute viper-exec-change, which eventually will 1599;; call viper-execute-com to execute viper-exec-change, which eventually will
1600;; call viper-change to invoke the replace mode on the region. 1600;; call viper-change to invoke the replace mode on the region.
1601;; 1601;;
1602;; The var viper-d-com is set to (M-COM VAL COM REG INSETED-TEXT COMMAND-KEYS) 1602;; The var viper-d-com is set to (M-COM VAL COM REG INSERTED-TEXT COMMAND-KEYS)
1603;; via a call to viper-set-destructive-command, for later use by viper-repeat. 1603;; via a call to viper-set-destructive-command, for later use by viper-repeat.
1604(defun viper-execute-com (m-com val com) 1604(defun viper-execute-com (m-com val com)
1605 (let ((reg viper-use-register)) 1605 (let ((reg viper-use-register))
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index d363ea92bdb..f86c9ef845a 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -79,7 +79,7 @@
79 79
80;;; TODO: 80;;; TODO:
81 81
82;; o Generalise the display-line code so that we can use it to 82;; o Generalize the display-line code so that we can use it to
83;; display the stuff we send, as well as the stuff we receive. 83;; display the stuff we send, as well as the stuff we receive.
84;; Then, move all display-related code into another backend-like 84;; Then, move all display-related code into another backend-like
85;; file, erc-display.el, say. 85;; file, erc-display.el, say.
@@ -2000,4 +2000,3 @@ See `erc-display-error-notice'." nil
2000;; Local Variables: 2000;; Local Variables:
2001;; indent-tabs-mode: nil 2001;; indent-tabs-mode: nil
2002;; End: 2002;; End:
2003
diff --git a/lisp/eshell/esh-var.el b/lisp/eshell/esh-var.el
index 69004a841f1..03774396485 100644
--- a/lisp/eshell/esh-var.el
+++ b/lisp/eshell/esh-var.el
@@ -344,7 +344,7 @@ This function is explicit for adding to `eshell-parse-argument-hook'."
344 (pcomplete-here)))) 344 (pcomplete-here))))
345 345
346(defun eshell/env (&rest args) 346(defun eshell/env (&rest args)
347 "Implemention of `env' in Lisp." 347 "Implementation of `env' in Lisp."
348 (eshell-init-print-buffer) 348 (eshell-init-print-buffer)
349 (eshell-eval-using-options 349 (eshell-eval-using-options
350 "env" args 350 "env" args
diff --git a/lisp/ezimage.el b/lisp/ezimage.el
index b828f79f8fa..e8680b65d96 100644
--- a/lisp/ezimage.el
+++ b/lisp/ezimage.el
@@ -257,9 +257,9 @@ Optional argument STRING is a string upon which to add text properties."
257 (a (assoc bt ezimage-expand-image-button-alist))) 257 (a (assoc bt ezimage-expand-image-button-alist)))
258 ;; Regular images (created with `insert-image' are intangible 258 ;; Regular images (created with `insert-image' are intangible
259 ;; which (I suppose) make them more compatible with XEmacs 21. 259 ;; which (I suppose) make them more compatible with XEmacs 21.
260 ;; Unfortunatly, there is a giant pile o code dependent on the 260 ;; Unfortunately, there is a giant pile of code dependent on the
261 ;; underlying text. This means if we leave it tangible, then I 261 ;; underlying text. This means if we leave it tangible, then I
262 ;; don't have to change said giant piles o code. 262 ;; don't have to change said giant piles of code.
263 (if (and a (symbol-value (cdr a))) 263 (if (and a (symbol-value (cdr a)))
264 (ezimage-insert-over-text (symbol-value (cdr a)) 264 (ezimage-insert-over-text (symbol-value (cdr a))
265 start 265 start
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 2f4b7413dcc..d410b8eb51a 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1742,7 +1742,7 @@ If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for
1742 keyword))) 1742 keyword)))
1743 1743
1744(defun font-lock-eval-keywords (keywords) 1744(defun font-lock-eval-keywords (keywords)
1745 "Evalulate KEYWORDS if a function (funcall) or variable (eval) name." 1745 "Evaluate KEYWORDS if a function (funcall) or variable (eval) name."
1746 (if (listp keywords) 1746 (if (listp keywords)
1747 keywords 1747 keywords
1748 (font-lock-eval-keywords (if (fboundp keywords) 1748 (font-lock-eval-keywords (if (fboundp keywords)
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index b84c493cc58..6ffc5d9e821 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -4727,7 +4727,7 @@ If LINE, insert the rebuilt thread starting on line LINE."
4727 (car headers)))) 4727 (car headers))))
4728 4728
4729(defun gnus-parent-headers (in-headers &optional generation) 4729(defun gnus-parent-headers (in-headers &optional generation)
4730 "Return the headers of the GENERATIONeth parent of HEADERS." 4730 "Return the headers of the GENERATIONth parent of HEADERS."
4731 (unless generation 4731 (unless generation
4732 (setq generation 1)) 4732 (setq generation 1))
4733 (let ((parent t) 4733 (let ((parent t)
diff --git a/lisp/htmlfontify.el b/lisp/htmlfontify.el
index c8e95581510..ffef8cdf7b7 100644
--- a/lisp/htmlfontify.el
+++ b/lisp/htmlfontify.el
@@ -432,8 +432,8 @@ and so on."
432 (const :tag "Lucid Toolkit" lucid ) 432 (const :tag "Lucid Toolkit" lucid )
433 (const :tag "Motif Toolkit" motif ))) 433 (const :tag "Motif Toolkit" motif )))
434 434
435 (class (choice (const :tag "Colour" color ) 435 (class (choice (const :tag "Color" color )
436 (const :tag "Greyscale" grayscale))) 436 (const :tag "Grayscale" grayscale)))
437 437
438 (background (choice (const :tag "Dark" dark ) 438 (background (choice (const :tag "Dark" dark )
439 (const :tag "Bright" light ))) )) 439 (const :tag "Bright" light ))) ))
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index f47d73a9508..3f83841f60d 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -43,7 +43,7 @@
43;; CONVERSION-KEYS argument of the Quail package. 43;; CONVERSION-KEYS argument of the Quail package.
44 44
45;; [There was an input method for Mule 2.3 called `Tamago' from the 45;; [There was an input method for Mule 2.3 called `Tamago' from the
46;; Japanese `TAkusan MAtasete GOmenasai', or `Sorry for having you 46;; Japanese `TAkusan MAtasete GOmen-nasai', or `Sorry for having you
47;; wait so long'; this couldn't be included in Emacs 20. `Tamago' is 47;; wait so long'; this couldn't be included in Emacs 20. `Tamago' is
48;; Japanese for `egg' (implicitly a hen's egg). Handa-san made a 48;; Japanese for `egg' (implicitly a hen's egg). Handa-san made a
49;; smaller and simpler system; the smaller quail egg is also eaten in 49;; smaller and simpler system; the smaller quail egg is also eaten in
@@ -1377,7 +1377,7 @@ Return the input string."
1377 (set-buffer-modified-p modified-p) 1377 (set-buffer-modified-p modified-p)
1378 (quail-show-guidance) 1378 (quail-show-guidance)
1379 (let* ((prompt (if input-method-use-echo-area 1379 (let* ((prompt (if input-method-use-echo-area
1380 (format "%s%s %s" 1380 (format "%s%s %s"
1381 (or input-method-previous-message "") 1381 (or input-method-previous-message "")
1382 quail-current-str 1382 quail-current-str
1383 quail-guidance-str))) 1383 quail-guidance-str)))
@@ -1443,7 +1443,7 @@ Return the input string."
1443 (quail-setup-overlays nil))) 1443 (quail-setup-overlays nil)))
1444 (quail-show-guidance) 1444 (quail-show-guidance)
1445 (let* ((prompt (if input-method-use-echo-area 1445 (let* ((prompt (if input-method-use-echo-area
1446 (format "%s%s%s %s" 1446 (format "%s%s%s %s"
1447 (or input-method-previous-message "") 1447 (or input-method-previous-message "")
1448 quail-conversion-str 1448 quail-conversion-str
1449 quail-current-str 1449 quail-current-str
@@ -2125,7 +2125,7 @@ minibuffer and the selected frame has no other windows)."
2125 (- quail-guidance-translations-starting-column 2125 (- quail-guidance-translations-starting-column
2126 7 (string-width str)) 2126 7 (string-width str))
2127 32)))) 2127 32))))
2128 (setq str (format "%s(%02d/%s)" 2128 (setq str (format "%s(%02d/%s)"
2129 str (nth 3 indices) 2129 str (nth 3 indices)
2130 (if (nth 4 indices) 2130 (if (nth 4 indices)
2131 (format "%02d" (nth 4 indices)) 2131 (format "%02d" (nth 4 indices))
@@ -2135,7 +2135,7 @@ minibuffer and the selected frame has no other windows)."
2135 (trans (aref (cdr quail-current-translations) idx))) 2135 (trans (aref (cdr quail-current-translations) idx)))
2136 (or (stringp trans) 2136 (or (stringp trans)
2137 (setq trans (string trans))) 2137 (setq trans (string trans)))
2138 (setq str (format "%s %d.%s" 2138 (setq str (format "%s %d.%s"
2139 str 2139 str
2140 (if (= (- idx start) 9) 0 2140 (if (= (- idx start) 9) 0
2141 (1+ (- idx start))) 2141 (1+ (- idx start)))
@@ -2787,7 +2787,7 @@ If CHAR is an ASCII character and can be input by typing itself, return t."
2787 (cdr decode-map))) 2787 (cdr decode-map)))
2788 (let ((key-head (aref decode-map char))) 2788 (let ((key-head (aref decode-map char)))
2789 (if (stringp key-head) 2789 (if (stringp key-head)
2790 (setq key-list (quail-find-key1 2790 (setq key-list (quail-find-key1
2791 (quail-lookup-key key-head nil t) 2791 (quail-lookup-key key-head nil t)
2792 key-head char nil)) 2792 key-head char nil))
2793 (mapc #'(lambda (elt) 2793 (mapc #'(lambda (elt)
diff --git a/lisp/international/robin.el b/lisp/international/robin.el
index 6f78aaede3f..443a292f4c1 100644
--- a/lisp/international/robin.el
+++ b/lisp/international/robin.el
@@ -229,7 +229,7 @@
229;; As stated in Murphy's law, it took longer than expected to develop the 229;; As stated in Murphy's law, it took longer than expected to develop the
230;; very first version of Japanese input subsystem in NEmacs (Nihongo 230;; very first version of Japanese input subsystem in NEmacs (Nihongo
231;; Emacs). So the subsystem was named "TAMAGO", which is an acronym of 231;; Emacs). So the subsystem was named "TAMAGO", which is an acronym of
232;; "TAkusan Matasete GOmennasai" (Sorry to have kept you waiting so 232;; "TAkusan Matasete GOmen-nasai" (Sorry to have kept you waiting so
233;; long). "Tamago" as a Japanese word means "egg", so the word "egg" was 233;; long). "Tamago" as a Japanese word means "egg", so the word "egg" was
234;; also used for related filenames and function names. 234;; also used for related filenames and function names.
235 235
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 4b3441a8cdc..76c9b87f881 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -2602,6 +2602,8 @@ Ask the user whether to add that list name to `mail-mailing-lists'."
2602 "Return nil if there is mail, else \"No mail.\"." 2602 "Return nil if there is mail, else \"No mail.\"."
2603 (if (zerop rmail-total-messages) 2603 (if (zerop rmail-total-messages)
2604 (save-excursion 2604 (save-excursion
2605 ;; Eg we deleted all the messages, so remove the old N/M mark.
2606 (with-current-buffer rmail-buffer (setq mode-line-process nil))
2605 (with-current-buffer rmail-view-buffer 2607 (with-current-buffer rmail-view-buffer
2606 (erase-buffer) 2608 (erase-buffer)
2607 "No mail.")))) 2609 "No mail."))))
diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el
index 8e28201e31f..b95651d3b69 100644
--- a/lisp/mail/rmailsum.el
+++ b/lisp/mail/rmailsum.el
@@ -269,7 +269,8 @@ Setting this option to nil might speed up the generation of summaries."
269 "Display a summary of all messages, one line per message." 269 "Display a summary of all messages, one line per message."
270 (interactive) 270 (interactive)
271 (rmail-new-summary "All" '(rmail-summary) nil) 271 (rmail-new-summary "All" '(rmail-summary) nil)
272 (unless (get-buffer-window rmail-buffer) 272 (unless (or (zerop (buffer-size)) ; empty summary
273 (get-buffer-window rmail-buffer))
273 (rmail-summary-beginning-of-message))) 274 (rmail-summary-beginning-of-message)))
274 275
275;;;###autoload 276;;;###autoload
@@ -404,13 +405,13 @@ nil for FUNCTION means all messages."
404 (message "Computing summary lines...") 405 (message "Computing summary lines...")
405 (unless rmail-buffer 406 (unless rmail-buffer
406 (error "No RMAIL buffer found")) 407 (error "No RMAIL buffer found"))
407 (let (mesg was-in-summary) 408 (let (mesg was-in-summary sumbuf)
408 (if (eq major-mode 'rmail-summary-mode) 409 (if (eq major-mode 'rmail-summary-mode)
409 (setq was-in-summary t)) 410 (setq was-in-summary t))
410 (with-current-buffer rmail-buffer 411 (with-current-buffer rmail-buffer
411 (if (zerop (setq mesg rmail-current-message)) 412 (setq rmail-summary-buffer (rmail-new-summary-1 desc redo func args)
412 (error "No messages to summarize")) 413 ;; r-s-b is buffer-local.
413 (setq rmail-summary-buffer (rmail-new-summary-1 desc redo func args))) 414 sumbuf rmail-summary-buffer))
414 ;; Now display the summary buffer and go to the right place in it. 415 ;; Now display the summary buffer and go to the right place in it.
415 (unless was-in-summary 416 (unless was-in-summary
416 (if (and (one-window-p) 417 (if (and (one-window-p)
@@ -420,13 +421,12 @@ nil for FUNCTION means all messages."
420 (progn 421 (progn
421 (split-window (selected-window) rmail-summary-window-size) 422 (split-window (selected-window) rmail-summary-window-size)
422 (select-window (next-window (frame-first-window))) 423 (select-window (next-window (frame-first-window)))
423 (rmail-pop-to-buffer rmail-summary-buffer) 424 (rmail-pop-to-buffer sumbuf)
424 ;; If pop-to-buffer did not use that window, delete that 425 ;; If pop-to-buffer did not use that window, delete that
425 ;; window. (This can happen if it uses another frame.) 426 ;; window. (This can happen if it uses another frame.)
426 (if (not (eq rmail-summary-buffer 427 (if (not (eq sumbuf (window-buffer (frame-first-window))))
427 (window-buffer (frame-first-window))))
428 (delete-other-windows))) 428 (delete-other-windows)))
429 (rmail-pop-to-buffer rmail-summary-buffer)) 429 (rmail-pop-to-buffer sumbuf))
430 (set-buffer rmail-buffer) 430 (set-buffer rmail-buffer)
431 ;; This is how rmail makes the summary buffer reappear. 431 ;; This is how rmail makes the summary buffer reappear.
432 ;; We do this here to make the window the proper size. 432 ;; We do this here to make the window the proper size.
@@ -490,9 +490,6 @@ message."
490 ;; Temporarily, while summary buffer is unfinished, 490 ;; Temporarily, while summary buffer is unfinished,
491 ;; we "don't have" a summary. 491 ;; we "don't have" a summary.
492 (setq rmail-summary-buffer nil) 492 (setq rmail-summary-buffer nil)
493 (unless summary-msgs
494 (kill-buffer sumbuf)
495 (error "Nothing to summarize"))
496 ;; I have not a clue what this clause is doing. If you read this 493 ;; I have not a clue what this clause is doing. If you read this
497 ;; chunk of code and have a clue, then please email that clue to 494 ;; chunk of code and have a clue, then please email that clue to
498 ;; pmr@pajato.com 495 ;; pmr@pajato.com
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el
index e0e213b92b9..458993ca8f1 100644
--- a/lisp/mh-e/mh-e.el
+++ b/lisp/mh-e/mh-e.el
@@ -2447,7 +2447,7 @@ of citations entirely, choose \"None\"."
2447 "Followup-To:" ; RFC 1036 2447 "Followup-To:" ; RFC 1036
2448 "For-Approval:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2448 "For-Approval:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/
2449 "For-Comment:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2449 "For-Comment:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/
2450 "For-Handdling:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/ 2450 "For-Handling:" ; http://people.dsv.su.se/~jpalme/ietf/mail-headers/
2451 "Forwarded:" ; MH 2451 "Forwarded:" ; MH
2452 "From " ; sendmail 2452 "From " ; sendmail
2453 "Generate-Delivery-Report:" ; RFC 2156 2453 "Generate-Delivery-Report:" ; RFC 2156
diff --git a/lisp/net/dbus.el b/lisp/net/dbus.el
index ba7d7115ffc..e5eb2015418 100644
--- a/lisp/net/dbus.el
+++ b/lisp/net/dbus.el
@@ -145,7 +145,7 @@ association to the service from D-Bus."
145 (service (car value)) 145 (service (car value))
146 (entry (gethash key dbus-registered-objects-table)) 146 (entry (gethash key dbus-registered-objects-table))
147 ret) 147 ret)
148 ;; key has the structure (BUS INTERRFACE MEMBER). 148 ;; key has the structure (BUS INTERFACE MEMBER).
149 ;; value has the structure (SERVICE PATH [HANDLER]). 149 ;; value has the structure (SERVICE PATH [HANDLER]).
150 ;; entry has the structure ((UNAME SERVICE PATH MEMBER [RULE]) ...). 150 ;; entry has the structure ((UNAME SERVICE PATH MEMBER [RULE]) ...).
151 ;; MEMBER is either a string (the handler), or a cons cell (a 151 ;; MEMBER is either a string (the handler), or a cons cell (a
diff --git a/lisp/net/soap-client.el b/lisp/net/soap-client.el
index 42c698876cd..d6949e4d250 100644
--- a/lisp/net/soap-client.el
+++ b/lisp/net/soap-client.el
@@ -32,7 +32,7 @@
32;; `soap-invoke' method passing it the WSDL, the service name, the operation 32;; `soap-invoke' method passing it the WSDL, the service name, the operation
33;; you wish to invoke and any required parameters. 33;; you wish to invoke and any required parameters.
34;; 34;;
35;; Idealy, the service you want to access will have some documentation about 35;; Ideally, the service you want to access will have some documentation about
36;; the operations it supports. If it does not, you can try using 36;; the operations it supports. If it does not, you can try using
37;; `soap-inspect' to browse the WSDL document and see the available operations 37;; `soap-inspect' to browse the WSDL document and see the available operations
38;; and their parameters. 38;; and their parameters.
diff --git a/lisp/net/webjump.el b/lisp/net/webjump.el
index 3a2560b3c61..6ef24e9f354 100644
--- a/lisp/net/webjump.el
+++ b/lisp/net/webjump.el
@@ -235,7 +235,7 @@
235 "www.faqs.org/faqs/") 235 "www.faqs.org/faqs/")
236 ("RTFM Usenet FAQs by Group" . 236 ("RTFM Usenet FAQs by Group" .
237 "ftp://rtfm.mit.edu/pub/usenet-by-group/") 237 "ftp://rtfm.mit.edu/pub/usenet-by-group/")
238 ("RTFM Usenet FAQs by Hierachy" . 238 ("RTFM Usenet FAQs by Hierarchy" .
239 "ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/") 239 "ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/")
240 ("X Consortium Archive" . "ftp.x.org") 240 ("X Consortium Archive" . "ftp.x.org")
241 241
diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog
index ae150621dc0..f6bd1ffa2d4 100644
--- a/lisp/org/ChangeLog
+++ b/lisp/org/ChangeLog
@@ -1,3 +1,7 @@
12011-11-11 Juanma Barranquero <lekktu@gmail.com>
2
3 * org-plot.el (org-plot/gnuplot-to-grid-data): Fix typo in docstring.
4
12011-09-27 Eli Zaretskii <eliz@gnu.org> 52011-09-27 Eli Zaretskii <eliz@gnu.org>
2 6
3 * org.el (org-mode): Force left-to-right paragraphs in Org 7 * org.el (org-mode): Force left-to-right paragraphs in Org
@@ -1965,7 +1969,7 @@
1965 1969
19662011-07-28 Carsten Dominik <carsten.dominik@gmail.com> 19702011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
1967 1971
1968 * org-latex.el (org-export-latex-preprocess): Protect index string 1972 * org-latex.el (org-export-latex-preprocess): Protect index string.
1969 1973
19702011-07-28 Carsten Dominik <carsten.dominik@gmail.com> 19742011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
1971 1975
@@ -2119,11 +2123,11 @@
2119 (org-bibtex-headline): Make use of new 2123 (org-bibtex-headline): Make use of new
2120 `org-bibtex-export-arbitrary-fields' and `org-bibtex-key-property' 2124 `org-bibtex-export-arbitrary-fields' and `org-bibtex-key-property'
2121 variables. 2125 variables.
2122 (org-bibtex-autokey): Make use of new `org-bibtex-key-property' 2126 (org-bibtex-autokey): Make use of new `org-bibtex-key-property'
2123 variable. 2127 variable.
2124 (org-bibtex-fleshout): Make use of new `org-bibtex-key-property' 2128 (org-bibtex-fleshout): Make use of new `org-bibtex-key-property'
2125 variable. 2129 variable.
2126 (org-bibtex-write): Make use of new `org-bibtex-key-property' 2130 (org-bibtex-write): Make use of new `org-bibtex-key-property'
2127 variable. 2131 variable.
2128 2132
21292011-07-28 Eric Schulte <schulte.eric@gmail.com> 21332011-07-28 Eric Schulte <schulte.eric@gmail.com>
@@ -2247,7 +2251,7 @@
22472011-07-28 Manuel Giraud <manuel.giraud@univ-nantes.fr> 22512011-07-28 Manuel Giraud <manuel.giraud@univ-nantes.fr>
2248 2252
2249 * org-html.el (org-html-handle-links): Add an alternate for inline 2253 * org-html.el (org-html-handle-links): Add an alternate for inline
2250 images 2254 images.
2251 2255
22522011-07-28 Carsten Dominik <carsten.dominik@gmail.com> 22562011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
2253 2257
@@ -2293,7 +2297,7 @@
2293 2297
2294 * ob-python.el (org-babel-python-evaluate-external-process): Allow 2298 * ob-python.el (org-babel-python-evaluate-external-process): Allow
2295 parsing as a table in the case of ":results output table". 2299 parsing as a table in the case of ":results output table".
2296 (org-babel-python-evaluate-session): Allow parsing as a table in 2300 (org-babel-python-evaluate-session): Allow parsing as a table in
2297 the case of ":results output table". 2301 the case of ":results output table".
2298 2302
22992011-07-28 Carsten Dominik <carsten.dominik@gmail.com> 23032011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
@@ -2343,7 +2347,7 @@
2343 2347
2344 * org.el (org-set-font-lock-defaults): Be more strict when 2348 * org.el (org-set-font-lock-defaults): Be more strict when
2345 recognizing description items, and do not fontify wrong cases 2349 recognizing description items, and do not fontify wrong cases
2346 like: "- term ::description" or "1. term :: description" 2350 like: "- term ::description" or "1. term :: description".
2347 2351
23482011-07-28 Nicolas Goaziou <n.goaziou@gmail.com> 23522011-07-28 Nicolas Goaziou <n.goaziou@gmail.com>
2349 2353
@@ -2894,12 +2898,12 @@
28942011-07-28 Bernt Hansen <bernt@norang.ca> 28982011-07-28 Bernt Hansen <bernt@norang.ca>
2895 2899
2896 * org-clock.el (org-clock-in): Allow clocking in new tasks 2900 * org-clock.el (org-clock-in): Allow clocking in new tasks
2897 inserted before the current clocking task 2901 inserted before the current clocking task.
2898 2902
28992011-07-28 Bernt Hansen <bernt@norang.ca> 29032011-07-28 Bernt Hansen <bernt@norang.ca>
2900 2904
2901 * org-clock.el (org-clock-in): Set default clocking task when 2905 * org-clock.el (org-clock-in): Set default clocking task when
2902 already clocking the task 2906 already clocking the task.
2903 2907
29042011-07-28 Nicolas Goaziou <n.goaziou@gmail.com> 29082011-07-28 Nicolas Goaziou <n.goaziou@gmail.com>
2905 2909
@@ -3045,7 +3049,7 @@
30452011-07-28 Bastien Guerry <bzg@gnu.org> 30492011-07-28 Bastien Guerry <bzg@gnu.org>
3046 3050
3047 * org.el (org-refile-get-targets): Rename from 3051 * org.el (org-refile-get-targets): Rename from
3048 `org-get-refile-targets.' 3052 `org-get-refile-targets'.
3049 3053
30502011-07-28 Bastien Guerry <bzg@gnu.org> 30542011-07-28 Bastien Guerry <bzg@gnu.org>
3051 3055
@@ -3727,7 +3731,7 @@
3727 (org-in-item-p,org-list-struct,org-list-parse-list): Apply change. 3731 (org-in-item-p,org-list-struct,org-list-parse-list): Apply change.
3728 3732
3729 * org-exp.el (org-export-mark-list-end) 3733 * org-exp.el (org-export-mark-list-end)
3730 (org-export-mark-list-properties): Apply change 3734 (org-export-mark-list-properties): Apply change.
3731 3735
3732 * org-latex.el (org-export-latex-lists): Apply change. Also 3736 * org-latex.el (org-export-latex-lists): Apply change. Also
3733 prevent items with org-example property to be considered as real 3737 prevent items with org-example property to be considered as real
@@ -4774,7 +4778,7 @@
4774 * ob-tangle.el (org-babel-spec-to-string): Adding "noweb" as a 4778 * ob-tangle.el (org-babel-spec-to-string): Adding "noweb" as a
4775 linking comment type 4779 linking comment type
4776 (org-babel-tangle-comment-links): Returns comment links for the 4780 (org-babel-tangle-comment-links): Returns comment links for the
4777 source code block at point 4781 source code block at point.
4778 4782
47792011-07-28 Bastien Guerry <bzg@gnu.org> 47832011-07-28 Bastien Guerry <bzg@gnu.org>
4780 4784
@@ -4855,7 +4859,7 @@
4855 4859
4856 * org-capture.el (org-capture-templates): Add %f and %F escapes 4860 * org-capture.el (org-capture-templates): Add %f and %F escapes
4857 (org-capture): Add more information to capture property list 4861 (org-capture): Add more information to capture property list
4858 (org-capture-fill-template): Handle %f and %F escapes 4862 (org-capture-fill-template): Handle %f and %F escapes.
4859 4863
48602011-07-28 David Maus <dmaus@ictsoc.de> 48642011-07-28 David Maus <dmaus@ictsoc.de>
4861 4865
@@ -5003,7 +5007,7 @@
5003 output file. 5007 output file.
5004 5008
5005 * ob-sass.el (org-babel-execute:sass): Return nil if result has 5009 * ob-sass.el (org-babel-execute:sass): Return nil if result has
5006 been written to file 5010 been written to file.
5007 5011
50082011-07-28 Dan Davison <dandavison7@gmail.com> 50122011-07-28 Dan Davison <dandavison7@gmail.com>
5009 5013
@@ -16833,7 +16837,7 @@
16833 16837
16834 * org-agenda.el (org-format-agenda-item) 16838 * org-agenda.el (org-format-agenda-item)
16835 (org-agenda-filter-make-matcher): Make sure tags are stored and 16839 (org-agenda-filter-make-matcher): Make sure tags are stored and
16836 compared donwcased. 16840 compared downcased.
16837 16841
168382008-10-26 Carsten Dominik <dominik@science.uva.nl> 168422008-10-26 Carsten Dominik <dominik@science.uva.nl>
16839 16843
diff --git a/lisp/org/org-list.el b/lisp/org/org-list.el
index d3c5dd99aa6..866176e4e8f 100644
--- a/lisp/org/org-list.el
+++ b/lisp/org/org-list.el
@@ -70,12 +70,12 @@
70;; (a few thousand lines long). Thus, code should follow the rule : 70;; (a few thousand lines long). Thus, code should follow the rule :
71;; "collect once, use many". As a corollary, it is usally a bad idea 71;; "collect once, use many". As a corollary, it is usally a bad idea
72;; to use directly an interactive function inside the code, as those, 72;; to use directly an interactive function inside the code, as those,
73;; being independant entities, read the whole list structure another 73;; being independent entities, read the whole list structure another
74;; time. 74;; time.
75 75
76;;; Code: 76;;; Code:
77 77
78(eval-when-compile 78(eval-when-compile
79 (require 'cl)) 79 (require 'cl))
80(require 'org-macs) 80(require 'org-macs)
81(require 'org-compat) 81(require 'org-compat)
diff --git a/lisp/org/org-plot.el b/lisp/org/org-plot.el
index b90c248eb6d..419467226c9 100644
--- a/lisp/org/org-plot.el
+++ b/lisp/org/org-plot.el
@@ -136,7 +136,7 @@ Pass PARAMS through to `orgtbl-to-generic' when exporting TABLE."
136 "Export the data in TABLE to DATA-FILE for gnuplot. 136 "Export the data in TABLE to DATA-FILE for gnuplot.
137This means in a format appropriate for grid plotting by gnuplot. 137This means in a format appropriate for grid plotting by gnuplot.
138PARAMS specifies which columns of TABLE should be plotted as independent 138PARAMS specifies which columns of TABLE should be plotted as independent
139and dependant variables." 139and dependent variables."
140 (interactive) 140 (interactive)
141 (let* ((ind (- (plist-get params :ind) 1)) 141 (let* ((ind (- (plist-get params :ind) 1))
142 (deps (if (plist-member params :deps) 142 (deps (if (plist-member params :deps)
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el
index 9a83d5196db..2028a7c4675 100644
--- a/lisp/progmodes/cc-fonts.el
+++ b/lisp/progmodes/cc-fonts.el
@@ -317,7 +317,7 @@
317 (match-beginning ,(car highlight)) 317 (match-beginning ,(car highlight))
318 (match-end ,(car highlight)) 318 (match-end ,(car highlight))
319 ,(elt highlight 1)))) 319 ,(elt highlight 1))))
320 ;; highlight is an "ANCHORED HIGHLIGHER" of the form 320 ;; highlight is an "ANCHORED HIGHLIGHTER" of the form
321 ;; (ANCHORED-MATCHER PRE-FORM POST-FORM SUBEXP-HIGHLIGHTERS...) 321 ;; (ANCHORED-MATCHER PRE-FORM POST-FORM SUBEXP-HIGHLIGHTERS...)
322 (when (nth 3 highlight) 322 (when (nth 3 highlight)
323 (error "Match highlights currently not supported in %s" 323 (error "Match highlights currently not supported in %s"
diff --git a/lisp/progmodes/ebnf2ps.el b/lisp/progmodes/ebnf2ps.el
index f7965d2cd01..c027b2b7454 100644
--- a/lisp/progmodes/ebnf2ps.el
+++ b/lisp/progmodes/ebnf2ps.el
@@ -4007,7 +4007,7 @@ See documentation for `ebnf-terminal-shape', `ebnf-non-terminal-shape' and
4007/#ebnf2ps#dict 230 dict def 4007/#ebnf2ps#dict 230 dict def
4008#ebnf2ps#dict begin 4008#ebnf2ps#dict begin
4009 4009
4010% Initiliaze variables to avoid name-conflicting with document variables. 4010% Initialize variables to avoid name-conflicting with document variables.
4011% This is the case when using `bind' operator. 4011% This is the case when using `bind' operator.
4012/-fillp- 0 def /h 0 def 4012/-fillp- 0 def /h 0 def
4013/-ox- 0 def /half 0 def 4013/-ox- 0 def /half 0 def
diff --git a/lisp/progmodes/executable.el b/lisp/progmodes/executable.el
index d8133cb6b90..281fa3cef72 100644
--- a/lisp/progmodes/executable.el
+++ b/lisp/progmodes/executable.el
@@ -268,12 +268,16 @@ file modes."
268 (save-restriction 268 (save-restriction
269 (widen) 269 (widen)
270 (string= "#!" (buffer-substring (point-min) (+ 2 (point-min))))) 270 (string= "#!" (buffer-substring (point-min) (+ 2 (point-min)))))
271 (let* ((current-mode (file-modes (buffer-file-name))) 271 (condition-case nil
272 (add-mode (logand ?\111 (default-file-modes)))) 272 (let* ((current-mode (file-modes (buffer-file-name)))
273 (or (/= (logand ?\111 current-mode) 0) 273 (add-mode (logand ?\111 (default-file-modes))))
274 (zerop add-mode) 274 (or (/= (logand ?\111 current-mode) 0)
275 (set-file-modes (buffer-file-name) 275 (zerop add-mode)
276 (logior current-mode add-mode)))))) 276 (set-file-modes (buffer-file-name)
277 (logior current-mode add-mode))))
278 ;; Eg file-modes can return nil (bug#9879). It should not,
279 ;; in this context, but we should handle it all the same.
280 (error (message "Unable to make file executable")))))
277 281
278(provide 'executable) 282(provide 'executable)
279 283
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index 944a412fb63..543539421fe 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -2016,7 +2016,7 @@ extension EXTN. Normally EXTN is given as the regular expression
2016 ((looking-at "final") 2016 ((looking-at "final")
2017 (forward-char 5)) 2017 (forward-char 5))
2018 2018
2019 ;; Move point past a ClassDeclaraction, but save the class 2019 ;; Move point past a ClassDeclaration, but save the class
2020 ;; Identifier. 2020 ;; Identifier.
2021 ((looking-at "class") 2021 ((looking-at "class")
2022 (forward-char 5) 2022 (forward-char 5)
diff --git a/lisp/progmodes/idlw-shell.el b/lisp/progmodes/idlw-shell.el
index 18f47d14a3f..453badfa46b 100644
--- a/lisp/progmodes/idlw-shell.el
+++ b/lisp/progmodes/idlw-shell.el
@@ -959,7 +959,7 @@ IDL has currently stepped.")
959 ;; Can not use history expansion because "!" is used for system variables. 959 ;; Can not use history expansion because "!" is used for system variables.
960 (setq comint-input-autoexpand nil) 960 (setq comint-input-autoexpand nil)
961 ;; (setq comint-input-ring-size 64) 961 ;; (setq comint-input-ring-size 64)
962 962
963 (set (make-local-variable 'completion-ignore-case) t) 963 (set (make-local-variable 'completion-ignore-case) t)
964 (set (make-local-variable 'comint-completion-addsuffix) '("/" . "")) 964 (set (make-local-variable 'comint-completion-addsuffix) '("/" . ""))
965 (setq comint-input-ignoredups t) 965 (setq comint-input-ignoredups t)
@@ -3707,7 +3707,7 @@ Existing overlays are recycled, in order to minimize consumption."
3707(defun idlwave-shell-make-new-bp-overlay (&optional type disabled) 3707(defun idlwave-shell-make-new-bp-overlay (&optional type disabled)
3708 "Make a new overlay for highlighting breakpoints. 3708 "Make a new overlay for highlighting breakpoints.
3709 3709
3710This stuff is strongly dependant upon the version of Emacs. If TYPE 3710This stuff is strongly dependent upon the version of Emacs. If TYPE
3711is passed, make an overlay of that type ('bp or 'bp-cond, currently 3711is passed, make an overlay of that type ('bp or 'bp-cond, currently
3712only for glyphs)." 3712only for glyphs)."
3713 (let ((ov (make-overlay 1 1)) 3713 (let ((ov (make-overlay 1 1))
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index c77ee4b76a9..95f67a6bf66 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -8961,7 +8961,7 @@ This expects NAME TYPE IDLWAVE-TWIN-CLASS to be bound to the right values."
8961 (nth 1 source))) 8961 (nth 1 source)))
8962 8962
8963(defun idlwave-downcase-safe (string) 8963(defun idlwave-downcase-safe (string)
8964 "Donwcase if string, else return unchanged." 8964 "Downcase if string, else return unchanged."
8965 (if (stringp string) 8965 (if (stringp string)
8966 (downcase string) 8966 (downcase string)
8967 string)) 8967 string))
diff --git a/lisp/progmodes/modula2.el b/lisp/progmodes/modula2.el
index f0b8f7cbca7..0c43a3ed354 100644
--- a/lisp/progmodes/modula2.el
+++ b/lisp/progmodes/modula2.el
@@ -466,7 +466,7 @@ followed by the first character of the construct.
466 '(m2-var) \n _ \n \n 466 '(m2-var) \n _ \n \n
467 '(m2-begin) 467 '(m2-begin)
468 '(m2-begin-comment) 468 '(m2-begin-comment)
469 " Module " str " Initialisation Code " 469 " Module " str " Initialization Code "
470 '(m2-end-comment) 470 '(m2-end-comment)
471 \n \n "END " str "." > \n) 471 \n \n "END " str "." > \n)
472 472
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index 57ed13969b4..67e3c4a18b4 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -227,7 +227,7 @@ will do all lineups."
227 :type '(set :extra-offset 8 227 :type '(set :extra-offset 8
228 (const :tag "Everything" all) 228 (const :tag "Everything" all)
229 (const :tag "Parameter lists" paramlist) 229 (const :tag "Parameter lists" paramlist)
230 (const :tag "Decalrations" declaration) 230 (const :tag "Declarations" declaration)
231 (const :tag "Case statements" case)) 231 (const :tag "Case statements" case))
232 :group 'pascal) 232 :group 'pascal)
233 233
diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el
index d60e7513651..94d55ee3f61 100644
--- a/lisp/progmodes/ps-mode.el
+++ b/lisp/progmodes/ps-mode.el
@@ -624,7 +624,7 @@ Typing \\<ps-run-mode-map>\\[ps-run-goto-error] when the cursor is at the number
624(defun ps-mode-target-column () 624(defun ps-mode-target-column ()
625 "To what column should text on current line be indented? 625 "To what column should text on current line be indented?
626 626
627Identation is increased if the last token on the current line 627Indentation is increased if the last token on the current line
628defines the beginning of a group. These tokens are: { [ <<" 628defines the beginning of a group. These tokens are: { [ <<"
629 (save-excursion 629 (save-excursion
630 (beginning-of-line) 630 (beginning-of-line)
diff --git a/lisp/ses.el b/lisp/ses.el
index 9b2048eae83..b1d7d7bfb9e 100644
--- a/lisp/ses.el
+++ b/lisp/ses.el
@@ -43,7 +43,7 @@
43;; working fine in most cases, however failed in some cases of several path 43;; working fine in most cases, however failed in some cases of several path
44;; racing together. 44;; racing together.
45;; 45;;
46;; The current algorithm is based on Dijksta algorithm. The ``cycle length'' is 46;; The current algorithm is based on Dijkstra's algorithm. The cycle length is
47;; stored in some cell property. In order not to reset in all cells such 47;; stored in some cell property. In order not to reset in all cells such
48;; property at each update, the cycle length is stored in this property along 48;; property at each update, the cycle length is stored in this property along
49;; with some update attempt id that is incremented at each update. The current 49;; with some update attempt id that is incremented at each update. The current
diff --git a/lisp/subr.el b/lisp/subr.el
index d5120826812..1cd6598eeb5 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1797,30 +1797,29 @@ This function makes or adds to an entry on `after-load-alist'."
1797 (push elt after-load-alist)) 1797 (push elt after-load-alist))
1798 ;; Make sure `form' is evalled in the current lexical/dynamic code. 1798 ;; Make sure `form' is evalled in the current lexical/dynamic code.
1799 (setq form `(funcall ',(eval `(lambda () ,form) lexical-binding))) 1799 (setq form `(funcall ',(eval `(lambda () ,form) lexical-binding)))
1800 (when (symbolp regexp-or-feature)
1801 ;; For features, the after-load-alist elements get run when `provide' is
1802 ;; called rather than at the end of the file. So add an indirection to
1803 ;; make sure that `form' is really run "after-load" in case the provide
1804 ;; call happens early.
1805 (setq form
1806 `(when load-file-name
1807 (let ((fun (make-symbol "eval-after-load-helper")))
1808 (fset fun `(lambda (file)
1809 (if (not (equal file ',load-file-name))
1810 nil
1811 (remove-hook 'after-load-functions ',fun)
1812 ,',form)))
1813 (add-hook 'after-load-functions fun)))))
1814 ;; Add FORM to the element unless it's already there.
1815 (unless (member form (cdr elt))
1816 (nconc elt (purecopy (list form))))
1817
1818 ;; Is there an already loaded file whose name (or `provide' name) 1800 ;; Is there an already loaded file whose name (or `provide' name)
1819 ;; matches FILE? 1801 ;; matches FILE?
1820 (if (if (stringp file) 1802 (prog1 (if (if (stringp file)
1821 (load-history-filename-element regexp-or-feature) 1803 (load-history-filename-element regexp-or-feature)
1822 (featurep file)) 1804 (featurep file))
1823 (eval form)))) 1805 (eval form))
1806 (when (symbolp regexp-or-feature)
1807 ;; For features, the after-load-alist elements get run when `provide' is
1808 ;; called rather than at the end of the file. So add an indirection to
1809 ;; make sure that `form' is really run "after-load" in case the provide
1810 ;; call happens early.
1811 (setq form
1812 `(when load-file-name
1813 (let ((fun (make-symbol "eval-after-load-helper")))
1814 (fset fun `(lambda (file)
1815 (if (not (equal file ',load-file-name))
1816 nil
1817 (remove-hook 'after-load-functions ',fun)
1818 ,',form)))
1819 (add-hook 'after-load-functions fun)))))
1820 ;; Add FORM to the element unless it's already there.
1821 (unless (member form (cdr elt))
1822 (nconc elt (purecopy (list form)))))))
1824 1823
1825(defvar after-load-functions nil 1824(defvar after-load-functions nil
1826 "Special hook run after loading a file. 1825 "Special hook run after loading a file.
diff --git a/lisp/term.el b/lisp/term.el
index 361ff685396..87e5a734701 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -4249,7 +4249,7 @@ special identifiers such as COM1."
4249 "History of serial ports used by `serial-read-name'.") 4249 "History of serial ports used by `serial-read-name'.")
4250 4250
4251(defvar serial-speed-history 4251(defvar serial-speed-history
4252 ;; Initialised with reasonable values for newbies. 4252 ;; Initialized with reasonable values for newbies.
4253 (list "9600" ;; Given twice because 9600 b/s is the most common speed 4253 (list "9600" ;; Given twice because 9600 b/s is the most common speed
4254 "1200" "2400" "4800" "9600" "14400" "19200" 4254 "1200" "2400" "4800" "9600" "14400" "19200"
4255 "28800" "38400" "57600" "115200") 4255 "28800" "38400" "57600" "115200")
diff --git a/lisp/textmodes/conf-mode.el b/lisp/textmodes/conf-mode.el
index 4e6c8bd6b05..5cc5ba45e13 100644
--- a/lisp/textmodes/conf-mode.el
+++ b/lisp/textmodes/conf-mode.el
@@ -417,7 +417,7 @@ See also `conf-space-mode', `conf-colon-mode', `conf-javaprop-mode',
417 (run-mode-hooks 'conf-mode-hook))) 417 (run-mode-hooks 'conf-mode-hook)))
418 418
419(defun conf-mode-initialize (comment &optional font-lock) 419(defun conf-mode-initialize (comment &optional font-lock)
420 "Intitializations for sub-modes of conf-mode. 420 "Initializations for sub-modes of conf-mode.
421COMMENT initializes `comment-start' and `comment-start-skip'. 421COMMENT initializes `comment-start' and `comment-start-skip'.
422The optional arg FONT-LOCK is the value for FONT-LOCK-KEYWORDS." 422The optional arg FONT-LOCK is the value for FONT-LOCK-KEYWORDS."
423 (set (make-local-variable 'comment-start) comment) 423 (set (make-local-variable 'comment-start) comment)
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 62f899d1730..d22346b518b 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -2783,7 +2783,7 @@ By just answering RET you can find out what the current dictionary is."
2783 (mapcar 'list (ispell-valid-dictionary-list))) 2783 (mapcar 'list (ispell-valid-dictionary-list)))
2784 nil t) 2784 nil t)
2785 current-prefix-arg)) 2785 current-prefix-arg))
2786 (ispell-set-spellchecker-params) ; Initilize variables and dicts alists 2786 (ispell-set-spellchecker-params) ; Initialize variables and dicts alists
2787 (unless arg (ispell-buffer-local-dict 'no-reload)) 2787 (unless arg (ispell-buffer-local-dict 'no-reload))
2788 (if (equal dict "default") (setq dict nil)) 2788 (if (equal dict "default") (setq dict nil))
2789 ;; This relies on completing-read's bug of returning "" for no match 2789 ;; This relies on completing-read's bug of returning "" for no match
diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el
index be8dd9c9130..871701b7303 100644
--- a/lisp/textmodes/sgml-mode.el
+++ b/lisp/textmodes/sgml-mode.el
@@ -1872,7 +1872,7 @@ This takes effect when first loading the library.")
1872 ("dir" . "Directory list (obsolete)") 1872 ("dir" . "Directory list (obsolete)")
1873 ("div" . "Generic block-level container") 1873 ("div" . "Generic block-level container")
1874 ("dl" . "Definition list") 1874 ("dl" . "Definition list")
1875 ("dt" . "Term to be definined") 1875 ("dt" . "Term to be defined")
1876 ("em" . "Emphasized") 1876 ("em" . "Emphasized")
1877 ("embed" . "Embedded data in foreign format") 1877 ("embed" . "Embedded data in foreign format")
1878 ("fig" . "Figure") 1878 ("fig" . "Figure")
@@ -1897,7 +1897,7 @@ This takes effect when first loading the library.")
1897 ("input" . "Form input field") 1897 ("input" . "Form input field")
1898 ("ins" . "Inserted text") 1898 ("ins" . "Inserted text")
1899 ("isindex" . "Input field for index search") 1899 ("isindex" . "Input field for index search")
1900 ("kbd" . "Keybard example face") 1900 ("kbd" . "Keyboard example face")
1901 ("lang" . "Natural language") 1901 ("lang" . "Natural language")
1902 ("li" . "List item") 1902 ("li" . "List item")
1903 ("link" . "Link relationship") 1903 ("link" . "Link relationship")
diff --git a/lisp/window.el b/lisp/window.el
index ecd4a62b093..7b16d6b886f 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -292,28 +292,6 @@ is unpredictable."
292 (setq window (window-normalize-window window)) 292 (setq window (window-normalize-window window))
293 (walk-window-tree-1 proc window any t)) 293 (walk-window-tree-1 proc window any t))
294 294
295(defun windows-with-parameter (parameter &optional value frame any values)
296 "Return a list of all windows on FRAME with PARAMETER non-nil.
297FRAME defaults to the selected frame. Optional argument VALUE
298non-nil means only return windows whose window-parameter value of
299PARAMETER equals VALUE \(comparison is done using `equal').
300Optional argument ANY non-nil means consider internal windows
301too. Optional argument VALUES non-nil means return a list of cons
302cells whose car is the value of the parameter and whose cdr is
303the window."
304 (let (this-value windows)
305 (walk-window-tree
306 (lambda (window)
307 (when (and (setq this-value (window-parameter window parameter))
308 (or (not value) (or (equal value this-value))))
309 (setq windows
310 (if values
311 (cons (cons this-value window) windows)
312 (cons window windows)))))
313 frame any)
314
315 (nreverse windows)))
316
317(defun window-with-parameter (parameter &optional value frame any) 295(defun window-with-parameter (parameter &optional value frame any)
318 "Return first window on FRAME with PARAMETER non-nil. 296 "Return first window on FRAME with PARAMETER non-nil.
319FRAME defaults to the selected frame. Optional argument VALUE 297FRAME defaults to the selected frame. Optional argument VALUE
@@ -353,8 +331,8 @@ WINDOW must be an internal window. Return WINDOW."
353 window t) 331 window t)
354 window)) 332 window))
355 333
356(defun window-atom-check-1 (window) 334(defun window--atom-check-1 (window)
357 "Subroutine of `window-atom-check'." 335 "Subroutine of `window--atom-check'."
358 (when window 336 (when window
359 (if (window-parameter window 'window-atom) 337 (if (window-parameter window 'window-atom)
360 (let ((count 0)) 338 (let ((count 0))
@@ -375,18 +353,18 @@ WINDOW must be an internal window. Return WINDOW."
375 window t))) 353 window t)))
376 ;; Check children. 354 ;; Check children.
377 (unless (window-buffer window) 355 (unless (window-buffer window)
378 (window-atom-check-1 (window-left-child window)) 356 (window--atom-check-1 (window-left-child window))
379 (window-atom-check-1 (window-top-child window)))) 357 (window--atom-check-1 (window-top-child window))))
380 ;; Check right sibling 358 ;; Check right sibling
381 (window-atom-check-1 (window-right window)))) 359 (window--atom-check-1 (window-right window))))
382 360
383(defun window-atom-check (&optional frame) 361(defun window--atom-check (&optional frame)
384 "Check atomicity of all windows on FRAME. 362 "Check atomicity of all windows on FRAME.
385FRAME defaults to the selected frame. If an atomic window is 363FRAME defaults to the selected frame. If an atomic window is
386wrongly configured, reset the atomicity of all its windows on 364wrongly configured, reset the atomicity of all its windows on
387FRAME to nil. An atomic window is wrongly configured if it has 365FRAME to nil. An atomic window is wrongly configured if it has
388no child windows or one of its child windows is not atomic." 366no child windows or one of its child windows is not atomic."
389 (window-atom-check-1 (frame-root-window frame))) 367 (window--atom-check-1 (frame-root-window frame)))
390 368
391;; Side windows. 369;; Side windows.
392(defvar window-sides '(left top right bottom) 370(defvar window-sides '(left top right bottom)
@@ -441,7 +419,7 @@ number of slots on that side."
441 (integer :tag "Number" :value 3 :size 5))) 419 (integer :tag "Number" :value 3 :size 5)))
442 :group 'windows) 420 :group 'windows)
443 421
444(defun window-side-check (&optional frame) 422(defun window--side-check (&optional frame)
445 "Check the window-side parameter of all windows on FRAME. 423 "Check the window-side parameter of all windows on FRAME.
446FRAME defaults to the selected frame. If the configuration is 424FRAME defaults to the selected frame. If the configuration is
447invalid, reset all window-side parameters to nil. 425invalid, reset all window-side parameters to nil.
@@ -512,11 +490,11 @@ A valid configuration has to preserve the following invariant:
512 (set-window-parameter window 'window-side nil)) 490 (set-window-parameter window 'window-side nil))
513 frame t)))) 491 frame t))))
514 492
515(defun window-check (&optional frame) 493(defun window--check (&optional frame)
516 "Check atomic and side windows on FRAME. 494 "Check atomic and side windows on FRAME.
517FRAME defaults to the selected frame." 495FRAME defaults to the selected frame."
518 (window-side-check frame) 496 (window--side-check frame)
519 (window-atom-check frame)) 497 (window--atom-check frame))
520 498
521;;; Window sizes. 499;;; Window sizes.
522(defvar window-size-fixed nil 500(defvar window-size-fixed nil
@@ -530,7 +508,7 @@ unless it has no other choice \(like when deleting a neighboring
530window).") 508window).")
531(make-variable-buffer-local 'window-size-fixed) 509(make-variable-buffer-local 'window-size-fixed)
532 510
533(defun window-size-ignore (window ignore) 511(defun window--size-ignore (window ignore)
534 "Return non-nil if IGNORE says to ignore size restrictions for WINDOW." 512 "Return non-nil if IGNORE says to ignore size restrictions for WINDOW."
535 (if (window-valid-p ignore) (eq window ignore) ignore)) 513 (if (window-valid-p ignore) (eq window ignore) ignore))
536 514
@@ -571,7 +549,7 @@ restrictions for that window only."
571 value) 549 value)
572 (with-current-buffer (window-buffer window) 550 (with-current-buffer (window-buffer window)
573 (cond 551 (cond
574 ((and (not (window-size-ignore window ignore)) 552 ((and (not (window--size-ignore window ignore))
575 (window-size-fixed-p window horizontal)) 553 (window-size-fixed-p window horizontal))
576 ;; The minimum size of a fixed size window is its size. 554 ;; The minimum size of a fixed size window is its size.
577 (window-total-size window horizontal)) 555 (window-total-size window horizontal))
@@ -600,7 +578,7 @@ restrictions for that window only."
600 (ceiling (or (frame-parameter frame 'scroll-bar-width) 14) 578 (ceiling (or (frame-parameter frame 'scroll-bar-width) 14)
601 (frame-char-width))) 579 (frame-char-width)))
602 (t 0))) 580 (t 0)))
603 (if (and (not (window-size-ignore window ignore)) 581 (if (and (not (window--size-ignore window ignore))
604 (numberp window-min-width)) 582 (numberp window-min-width))
605 window-min-width 583 window-min-width
606 0)))) 584 0))))
@@ -610,7 +588,7 @@ restrictions for that window only."
610 (max (+ window-safe-min-height 588 (max (+ window-safe-min-height
611 (if header-line-format 1 0) 589 (if header-line-format 1 0)
612 (if mode-line-format 1 0)) 590 (if mode-line-format 1 0))
613 (if (and (not (window-size-ignore window ignore)) 591 (if (and (not (window--size-ignore window ignore))
614 (numberp window-min-height)) 592 (numberp window-min-height))
615 window-min-height 593 window-min-height
616 0)))))))) 594 0))))))))
@@ -647,7 +625,7 @@ restrictions for that window only."
647 (max (- (window-min-size window horizontal ignore) 625 (max (- (window-min-size window horizontal ignore)
648 (window-total-size window horizontal)) 626 (window-total-size window horizontal))
649 delta)) 627 delta))
650 ((window-size-ignore window ignore) 628 ((window--size-ignore window ignore)
651 delta) 629 delta)
652 ((> delta 0) 630 ((> delta 0)
653 (if (window-size-fixed-p window horizontal) 631 (if (window-size-fixed-p window horizontal)
@@ -664,7 +642,7 @@ doc-string of `window-sizable'."
664 (>= (window-sizable window delta horizontal ignore) delta) 642 (>= (window-sizable window delta horizontal ignore) delta)
665 (<= (window-sizable window delta horizontal ignore) delta))) 643 (<= (window-sizable window delta horizontal ignore) delta)))
666 644
667(defun window-size-fixed-1 (window horizontal) 645(defun window--size-fixed-1 (window horizontal)
668 "Internal function for `window-size-fixed-p'." 646 "Internal function for `window-size-fixed-p'."
669 (let ((sub (window-child window))) 647 (let ((sub (window-child window)))
670 (catch 'fixed 648 (catch 'fixed
@@ -675,7 +653,7 @@ doc-string of `window-sizable'."
675 ;; windows are fixed-size. 653 ;; windows are fixed-size.
676 (progn 654 (progn
677 (while sub 655 (while sub
678 (unless (window-size-fixed-1 sub horizontal) 656 (unless (window--size-fixed-1 sub horizontal)
679 ;; We found a non-fixed-size child window, so 657 ;; We found a non-fixed-size child window, so
680 ;; WINDOW's size is not fixed. 658 ;; WINDOW's size is not fixed.
681 (throw 'fixed nil)) 659 (throw 'fixed nil))
@@ -686,7 +664,7 @@ doc-string of `window-sizable'."
686 ;; An ortho-combination is fixed-size if at least one of its 664 ;; An ortho-combination is fixed-size if at least one of its
687 ;; child windows is fixed-size. 665 ;; child windows is fixed-size.
688 (while sub 666 (while sub
689 (when (window-size-fixed-1 sub horizontal) 667 (when (window--size-fixed-1 sub horizontal)
690 ;; We found a fixed-size child window, so WINDOW's size 668 ;; We found a fixed-size child window, so WINDOW's size
691 ;; is fixed. 669 ;; is fixed.
692 (throw 'fixed t)) 670 (throw 'fixed t))
@@ -706,7 +684,7 @@ non-nil if WINDOW's width is fixed.
706If this function returns nil, this does not necessarily mean that 684If this function returns nil, this does not necessarily mean that
707WINDOW can be resized in the desired direction. The function 685WINDOW can be resized in the desired direction. The function
708`window-resizable' can tell that." 686`window-resizable' can tell that."
709 (window-size-fixed-1 687 (window--size-fixed-1
710 (window-normalize-window window) horizontal)) 688 (window-normalize-window window) horizontal))
711 689
712(defun window-min-delta-1 (window delta &optional horizontal ignore trail noup) 690(defun window-min-delta-1 (window delta &optional horizontal ignore trail noup)
@@ -728,7 +706,7 @@ WINDOW can be resized in the desired direction. The function
728 ((eq sub window) 706 ((eq sub window)
729 (setq skip (eq trail 'before))) 707 (setq skip (eq trail 'before)))
730 (skip) 708 (skip)
731 ((and (not (window-size-ignore window ignore)) 709 ((and (not (window--size-ignore window ignore))
732 (window-size-fixed-p sub horizontal))) 710 (window-size-fixed-p sub horizontal)))
733 (t 711 (t
734 ;; We found a non-fixed-size child window. 712 ;; We found a non-fixed-size child window.
@@ -817,7 +795,7 @@ at least one other window can be enlarged appropriately."
817 ;; child window is fixed-size. 795 ;; child window is fixed-size.
818 (while sub 796 (while sub
819 (when (and (not (eq sub window)) 797 (when (and (not (eq sub window))
820 (not (window-size-ignore sub ignore)) 798 (not (window--size-ignore sub ignore))
821 (window-size-fixed-p sub horizontal)) 799 (window-size-fixed-p sub horizontal))
822 (throw 'fixed delta)) 800 (throw 'fixed delta))
823 (setq sub (window-right sub)))) 801 (setq sub (window-right sub))))
@@ -856,7 +834,7 @@ Optional argument NODOWN non-nil means do not check whether
856WINDOW itself \(and its child windows) can be enlarged; check 834WINDOW itself \(and its child windows) can be enlarged; check
857only whether other windows can be shrunk appropriately." 835only whether other windows can be shrunk appropriately."
858 (setq window (window-normalize-window window)) 836 (setq window (window-normalize-window window))
859 (if (and (not (window-size-ignore window ignore)) 837 (if (and (not (window--size-ignore window ignore))
860 (not nodown) (window-size-fixed-p window horizontal)) 838 (not nodown) (window-size-fixed-p window horizontal))
861 ;; With IGNORE and NOWDON nil return zero if WINDOW has fixed 839 ;; With IGNORE and NOWDON nil return zero if WINDOW has fixed
862 ;; size. 840 ;; size.
@@ -1106,7 +1084,7 @@ The default value nil is handled like `bottom'."
1106 (= (nth edge (window-edges window)) 1084 (= (nth edge (window-edges window))
1107 (nth edge (window-edges (frame-root-window window)))))) 1085 (nth edge (window-edges (frame-root-window window))))))
1108 1086
1109(defun windows-at-side (&optional frame side) 1087(defun window-at-side-list (&optional frame side)
1110 "Return list of all windows on SIDE of FRAME. 1088 "Return list of all windows on SIDE of FRAME.
1111FRAME must be a live frame and defaults to the selected frame. 1089FRAME must be a live frame and defaults to the selected frame.
1112SIDE can be any of the symbols `left', `top', `right' or 1090SIDE can be any of the symbols `left', `top', `right' or
@@ -1120,7 +1098,7 @@ SIDE can be any of the symbols `left', `top', `right' or
1120 frame) 1098 frame)
1121 (nreverse windows))) 1099 (nreverse windows)))
1122 1100
1123(defun window-in-direction-2 (window posn &optional horizontal) 1101(defun window--in-direction-2 (window posn &optional horizontal)
1124 "Support function for `window-in-direction'." 1102 "Support function for `window-in-direction'."
1125 (if horizontal 1103 (if horizontal
1126 (let ((top (window-top-line window))) 1104 (let ((top (window-top-line window)))
@@ -1190,7 +1168,7 @@ IGNORE, when non-nil means a window can be returned even if its
1190 ;; W is to the left or right of WINDOW but does not 1168 ;; W is to the left or right of WINDOW but does not
1191 ;; cover POSN. 1169 ;; cover POSN.
1192 (setq best-diff-2-new 1170 (setq best-diff-2-new
1193 (window-in-direction-2 w posn hor)) 1171 (window--in-direction-2 w posn hor))
1194 (or (< best-diff-2-new best-diff-2) 1172 (or (< best-diff-2-new best-diff-2)
1195 (and (= best-diff-2-new best-diff-2) 1173 (and (= best-diff-2-new best-diff-2)
1196 (if (eq direction 'left) 1174 (if (eq direction 'left)
@@ -1215,7 +1193,7 @@ IGNORE, when non-nil means a window can be returned even if its
1215 (and (eq direction 'below) (<= last w-top))) 1193 (and (eq direction 'below) (<= last w-top)))
1216 ;; W is above or below WINDOW but does not cover POSN. 1194 ;; W is above or below WINDOW but does not cover POSN.
1217 (setq best-diff-2-new 1195 (setq best-diff-2-new
1218 (window-in-direction-2 w posn hor)) 1196 (window--in-direction-2 w posn hor))
1219 (or (< best-diff-2-new best-diff-2) 1197 (or (< best-diff-2-new best-diff-2)
1220 (and (= best-diff-2-new best-diff-2) 1198 (and (= best-diff-2-new best-diff-2)
1221 (if (eq direction 'above) 1199 (if (eq direction 'above)
@@ -1504,12 +1482,12 @@ instead."
1504 ((window--resizable-p window delta horizontal ignore) 1482 ((window--resizable-p window delta horizontal ignore)
1505 (window--resize-reset frame horizontal) 1483 (window--resize-reset frame horizontal)
1506 (window--resize-this-window window delta horizontal ignore t) 1484 (window--resize-this-window window delta horizontal ignore t)
1507 (if (and (not (window-splits window)) 1485 (if (and (not window-splits)
1508 (window-combined-p window horizontal) 1486 (window-combined-p window horizontal)
1509 (setq sibling (or (window-right window) (window-left window))) 1487 (setq sibling (or (window-right window) (window-left window)))
1510 (window-sizable-p sibling (- delta) horizontal ignore)) 1488 (window-sizable-p sibling (- delta) horizontal ignore))
1511 ;; If window-splits returns nil for WINDOW, WINDOW is part of 1489 ;; If window-splits is nil, WINDOW is part of an
1512 ;; an iso-combination, and WINDOW's neighboring right or left 1490 ;; iso-combination, and WINDOW's neighboring right or left
1513 ;; sibling can be resized as requested, resize that sibling. 1491 ;; sibling can be resized as requested, resize that sibling.
1514 (let ((normal-delta 1492 (let ((normal-delta
1515 (/ (float delta) 1493 (/ (float delta)
@@ -1844,7 +1822,7 @@ preferably only resize windows adjacent to EDGE."
1844 ;; Make sure this sibling is left alone when 1822 ;; Make sure this sibling is left alone when
1845 ;; resizing its siblings. 1823 ;; resizing its siblings.
1846 (set-window-new-normal sub 'ignore)) 1824 (set-window-new-normal sub 'ignore))
1847 ((or (window-size-ignore sub ignore) 1825 ((or (window--size-ignore sub ignore)
1848 (not (window-size-fixed-p sub horizontal))) 1826 (not (window-size-fixed-p sub horizontal)))
1849 ;; Set this-delta to t to signal that we found a sibling 1827 ;; Set this-delta to t to signal that we found a sibling
1850 ;; of WINDOW whose size is not fixed. 1828 ;; of WINDOW whose size is not fixed.
@@ -2176,9 +2154,9 @@ WINDOW can be any window and defaults to the selected window."
2176 "Return non-nil if WINDOW is the root window of its frame." 2154 "Return non-nil if WINDOW is the root window of its frame."
2177 (eq window (frame-root-window window))) 2155 (eq window (frame-root-window window)))
2178 2156
2179(defun window-tree-1 (window &optional next) 2157(defun window--subtree (window &optional next)
2180 "Return window tree rooted at WINDOW. 2158 "Return window subtree rooted at WINDOW.
2181Optional argument NEXT non-nil means include windows right 2159Optional argument NEXT non-nil means include WINDOW's right
2182siblings in the return value. 2160siblings in the return value.
2183 2161
2184See the documentation of `window-tree' for a description of the 2162See the documentation of `window-tree' for a description of the
@@ -2190,10 +2168,10 @@ return value."
2190 (cond 2168 (cond
2191 ((window-top-child window) 2169 ((window-top-child window)
2192 (cons t (cons (window-edges window) 2170 (cons t (cons (window-edges window)
2193 (window-tree-1 (window-top-child window) t)))) 2171 (window--subtree (window-top-child window) t))))
2194 ((window-left-child window) 2172 ((window-left-child window)
2195 (cons nil (cons (window-edges window) 2173 (cons nil (cons (window-edges window)
2196 (window-tree-1 (window-left-child window) t)))) 2174 (window--subtree (window-left-child window) t))))
2197 (t window)) 2175 (t window))
2198 list)) 2176 list))
2199 (setq window (when next (window-next-sibling window)))) 2177 (setq window (when next (window-next-sibling window))))
@@ -2215,7 +2193,7 @@ Each of the child windows may again be a window or a list
2215representing a window split, and so on. EDGES is a list \(LEFT 2193representing a window split, and so on. EDGES is a list \(LEFT
2216TOP RIGHT BOTTOM) as returned by `window-edges'." 2194TOP RIGHT BOTTOM) as returned by `window-edges'."
2217 (setq frame (window-normalize-frame frame)) 2195 (setq frame (window-normalize-frame frame))
2218 (window-tree-1 (frame-root-window frame) t)) 2196 (window--subtree (frame-root-window frame) t))
2219 2197
2220(defun other-window (count &optional all-frames) 2198(defun other-window (count &optional all-frames)
2221 "Select another window in cyclic ordering of windows. 2199 "Select another window in cyclic ordering of windows.
@@ -2379,7 +2357,7 @@ non-side window, signal an error."
2379 (function (window-parameter window 'delete-window)) 2357 (function (window-parameter window 'delete-window))
2380 (parent (window-parent window)) 2358 (parent (window-parent window))
2381 atom-root) 2359 atom-root)
2382 (window-check frame) 2360 (window--check frame)
2383 (catch 'done 2361 (catch 'done
2384 ;; Handle window parameters. 2362 ;; Handle window parameters.
2385 (cond 2363 (cond
@@ -2411,8 +2389,7 @@ non-side window, signal an error."
2411 (sibling (or (window-left window) (window-right window)))) 2389 (sibling (or (window-left window) (window-right window))))
2412 (window--resize-reset frame horizontal) 2390 (window--resize-reset frame horizontal)
2413 (cond 2391 (cond
2414 ((and (not (window-splits window)) 2392 ((and (not window-splits) sibling (window-sizable-p sibling size))
2415 sibling (window-sizable-p sibling size))
2416 ;; Resize WINDOW's sibling. 2393 ;; Resize WINDOW's sibling.
2417 (window--resize-this-window sibling size horizontal nil t) 2394 (window--resize-this-window sibling size horizontal nil t)
2418 (set-window-new-normal 2395 (set-window-new-normal
@@ -2433,7 +2410,7 @@ non-side window, signal an error."
2433 ;; not be selected, fix this here. 2410 ;; not be selected, fix this here.
2434 (other-window -1 frame)) 2411 (other-window -1 frame))
2435 (run-window-configuration-change-hook frame) 2412 (run-window-configuration-change-hook frame)
2436 (window-check frame) 2413 (window--check frame)
2437 ;; Always return nil. 2414 ;; Always return nil.
2438 nil)))) 2415 nil))))
2439 2416
@@ -2460,7 +2437,7 @@ window signal an error."
2460 (function (window-parameter window 'delete-other-windows)) 2437 (function (window-parameter window 'delete-other-windows))
2461 (window-side (window-parameter window 'window-side)) 2438 (window-side (window-parameter window 'window-side))
2462 atom-root side-main) 2439 atom-root side-main)
2463 (window-check frame) 2440 (window--check frame)
2464 (catch 'done 2441 (catch 'done
2465 (cond 2442 (cond
2466 ;; Ignore window parameters if `ignore-window-parameters' is t or 2443 ;; Ignore window parameters if `ignore-window-parameters' is t or
@@ -2484,7 +2461,7 @@ window signal an error."
2484 (unless (eq window side-main) 2461 (unless (eq window side-main)
2485 (delete-other-windows-internal window side-main) 2462 (delete-other-windows-internal window side-main)
2486 (run-window-configuration-change-hook frame) 2463 (run-window-configuration-change-hook frame)
2487 (window-check frame)) 2464 (window--check frame))
2488 ;; Always return nil. 2465 ;; Always return nil.
2489 nil))) 2466 nil)))
2490 2467
@@ -3111,7 +3088,7 @@ frame. The selected window is not changed by this function."
3111 (window-nest window-nest) 3088 (window-nest window-nest)
3112 atom-root) 3089 atom-root)
3113 3090
3114 (window-check frame) 3091 (window--check frame)
3115 (catch 'done 3092 (catch 'done
3116 (cond 3093 (cond
3117 ;; Ignore window parameters if either `ignore-window-parameters' 3094 ;; Ignore window parameters if either `ignore-window-parameters'
@@ -3265,7 +3242,7 @@ frame. The selected window is not changed by this function."
3265 (set-window-parameter new 'window-side window-side)) 3242 (set-window-parameter new 'window-side window-side))
3266 3243
3267 (run-window-configuration-change-hook frame) 3244 (run-window-configuration-change-hook frame)
3268 (window-check frame) 3245 (window--check frame)
3269 ;; Always return the new window. 3246 ;; Always return the new window.
3270 new))))) 3247 new)))))
3271 3248
@@ -3607,7 +3584,6 @@ specific buffers."
3607 (total-width . ,(window-total-size window t)) 3584 (total-width . ,(window-total-size window t))
3608 (normal-height . ,(window-normal-size window)) 3585 (normal-height . ,(window-normal-size window))
3609 (normal-width . ,(window-normal-size window t)) 3586 (normal-width . ,(window-normal-size window t))
3610 (splits . ,(window-splits window))
3611 (nest . ,(window-nest window)) 3587 (nest . ,(window-nest window))
3612 ,@(let (list) 3588 ,@(let (list)
3613 (dolist (parameter (window-parameters window)) 3589 (dolist (parameter (window-parameters window))
@@ -3762,7 +3738,6 @@ value can be also stored on disk and read back in a new session."
3762 (nest (cdr (assq 'nest item))) 3738 (nest (cdr (assq 'nest item)))
3763 (parameters (cdr (assq 'parameters item))) 3739 (parameters (cdr (assq 'parameters item)))
3764 (state (cdr (assq 'buffer item)))) 3740 (state (cdr (assq 'buffer item))))
3765 (when splits (set-window-splits window splits))
3766 (when nest (set-window-nest window nest)) 3741 (when nest (set-window-nest window nest))
3767 ;; Process parameters. 3742 ;; Process parameters.
3768 (when parameters 3743 (when parameters
@@ -3850,7 +3825,7 @@ windows can get as small as `window-safe-min-height' and
3850 (cdr (assq 'total-width state))))) 3825 (cdr (assq 'total-width state)))))
3851 (min-height (cdr (assq 'min-height head))) 3826 (min-height (cdr (assq 'min-height head)))
3852 (min-width (cdr (assq 'min-width head))) 3827 (min-width (cdr (assq 'min-width head)))
3853 window-splits selected) 3828 selected)
3854 (if (and (not totals) 3829 (if (and (not totals)
3855 (or (> min-height (window-total-size window)) 3830 (or (> min-height (window-total-size window))
3856 (> min-width (window-total-size window t))) 3831 (> min-width (window-total-size window t)))
@@ -3885,7 +3860,7 @@ windows can get as small as `window-safe-min-height' and
3885 (set-window-buffer window (current-buffer)) 3860 (set-window-buffer window (current-buffer))
3886 (window-state-put-1 state window nil totals) 3861 (window-state-put-1 state window nil totals)
3887 (window-state-put-2 ignore)) 3862 (window-state-put-2 ignore))
3888 (window-check frame)))) 3863 (window--check frame))))
3889 3864
3890(defun display-buffer-record-window (type window buffer) 3865(defun display-buffer-record-window (type window buffer)
3891 "Record information for window used by `display-buffer'. 3866 "Record information for window used by `display-buffer'.