aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorChong Yidong2012-04-27 11:10:38 +0800
committerChong Yidong2012-04-27 11:10:38 +0800
commita8e7d6d783219972c08fd49a3a2afaf26eb139c2 (patch)
tree5e86d23d9285389791dc8321d8a8a2ece2247bea /lisp
parentb360839071ef6c7a9e917fe57a4aaeb39138e8c0 (diff)
parentc5bb756916baa63cc663d68d4c24e5ad33a764e8 (diff)
downloademacs-a8e7d6d783219972c08fd49a3a2afaf26eb139c2.tar.gz
emacs-a8e7d6d783219972c08fd49a3a2afaf26eb139c2.zip
Merge changes from emacs-24 branch
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog52
-rw-r--r--lisp/emacs-lisp/check-declare.el4
-rw-r--r--lisp/gnus/ChangeLog4
-rw-r--r--lisp/gnus/gnus.el4
-rw-r--r--lisp/mouse.el23
-rw-r--r--lisp/org/ChangeLog170
-rw-r--r--lisp/org/ob-python.el2
-rw-r--r--lisp/org/org-agenda.el2
-rw-r--r--lisp/org/org-clock.el2
-rw-r--r--lisp/org/org-faces.el10
-rw-r--r--lisp/org/org-footnote.el13
-rw-r--r--lisp/org/org-list.el77
-rw-r--r--lisp/org/org-mouse.el1
-rw-r--r--lisp/org/org-odt.el1
-rw-r--r--lisp/org/org-table.el4
-rw-r--r--lisp/org/org.el85
-rw-r--r--lisp/progmodes/gdb-mi.el30
-rw-r--r--lisp/progmodes/which-func.el4
-rw-r--r--lisp/select.el47
-rw-r--r--lisp/simple.el2
-rw-r--r--lisp/startup.el2
-rw-r--r--lisp/subr.el5
-rw-r--r--lisp/vc/vc-git.el2
-rw-r--r--lisp/window.el106
-rw-r--r--lisp/xml.el6
25 files changed, 400 insertions, 258 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 0b0065f520e..f88a386178f 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,7 +1,57 @@
12012-04-27 Chong Yidong <cyd@gnu.org> 12012-04-27 Chong Yidong <cyd@gnu.org>
2 2
3 * subr.el (read-key): Avoid running filter function when setting
4 up temporary tool bar entries (Bug#9922).
5
62012-04-27 Andreas Schwab <schwab@linux-m68k.org>
7
8 * vc/vc-git.el (vc-git-state): Fix regexp matching diff output.
9 (Bug#11344)
10
112012-04-27 Chong Yidong <cyd@gnu.org>
12
13 * select.el (xselect--encode-string): New function, split from
14 xselect-convert-to-string.
15 (xselect-convert-to-string): Use it.
16 (xselect-convert-to-filename, xselect-convert-to-os)
17 (xselect-convert-to-host, xselect-convert-to-user): Ensure that
18 returned strings are properly encoded (Bug#11315).
19
202012-04-27 Chong Yidong <cyd@gnu.org>
21
22 * simple.el (delete-active-region): Move to killing custom group.
23
242012-04-27 Andreas Schwab <schwab@linux-m68k.org>
25
26 * progmodes/which-func.el (which-func-current): Quote %
27 characters for mode-line processing.
28
292012-04-21 Chong Yidong <cyd@gnu.org>
30
31 * xml.el (xml-parse-region, xml-parse-tag): Avoid errors due to
32 reaching eob (Bug#11286).
33
342012-04-27 Eli Zaretskii <eliz@gnu.org>
35
36 * progmodes/gdb-mi.el (gdb-control-level): New variable.
37 (gdb): Make it buffer-local and init to zero.
38 (gdb-control-commands-regexp): New variable.
39 (gdb-send): Don't wrap in "-interpreter-exec console" if
40 gdb-control-level is positive. Increment gdb-control-level
41 whenever the command matches gdb-control-commands-regexp, and
42 decrement it each time the command is "end". (Bug#11279)
43
442012-04-27 Martin Rudalics <rudalics@gmx.at>
45
46 * window.el (adjust-window-trailing-edge, enlarge-window)
47 (shrink-window, window-resize):
48 * mouse.el (mouse-drag-line): Fix resizing of minibuffer
49 windows (Bug#11276).
50
512012-04-27 Chong Yidong <cyd@gnu.org>
52
3 * progmodes/pascal.el (pascal--extra-indent): Rename from ind, to 53 * progmodes/pascal.el (pascal--extra-indent): Rename from ind, to
4 fix "missig prefix" warning. All callers changed. 54 fix "missing prefix" warning. All callers changed.
5 55
62012-04-27 Stefan Monnier <monnier@iro.umontreal.ca> 562012-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
7 57
diff --git a/lisp/emacs-lisp/check-declare.el b/lisp/emacs-lisp/check-declare.el
index 3135b9b5827..d4213899ef6 100644
--- a/lisp/emacs-lisp/check-declare.el
+++ b/lisp/emacs-lisp/check-declare.el
@@ -1,6 +1,6 @@
1;;; check-declare.el --- Check declare-function statements 1;;; check-declare.el --- Check declare-function statements
2 2
3;; Copyright (C) 2007-2012 Free Software Foundation, Inc. 3;; Copyright (C) 2007-2012 Free Software Foundation, Inc.
4 4
5;; Author: Glenn Morris <rgm@gnu.org> 5;; Author: Glenn Morris <rgm@gnu.org>
6;; Keywords: lisp, tools, maint 6;; Keywords: lisp, tools, maint
@@ -28,7 +28,7 @@
28;; checks that all such statements in a file or directory are accurate. 28;; checks that all such statements in a file or directory are accurate.
29;; The entry points are `check-declare-file' and `check-declare-directory'. 29;; The entry points are `check-declare-file' and `check-declare-directory'.
30 30
31;; For more information, see Info node `elisp(Declaring Functions)'. 31;; For more information, see Info node `(elisp)Declaring Functions'.
32 32
33;;; TODO: 33;;; TODO:
34 34
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index e25ffd933e6..556094ca614 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,7 @@
12012-04-27 Andreas Schwab <schwab@linux-m68k.org>
2
3 * gnus.el (debbugs-gnu): Don't override existing autoload definition.
4
12012-04-26 Daiki Ueno <ueno@unixuser.org> 52012-04-26 Daiki Ueno <ueno@unixuser.org>
2 6
3 * plstore.el (plstore-called-interactively-p): New compat macro copied 7 * plstore.el (plstore-called-interactively-p): New compat macro copied
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index cc4f2eb1e7a..635bb6fc96f 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -4397,7 +4397,9 @@ prompt the user for the name of an NNTP server to use."
4397 (gnus-1 arg dont-connect slave) 4397 (gnus-1 arg dont-connect slave)
4398 (gnus-final-warning))) 4398 (gnus-final-warning)))
4399 4399
4400(autoload 'debbugs-gnu "debbugs-gnu") 4400(eval-and-compile
4401 (unless (fboundp 'debbugs-gnu)
4402 (autoload 'debbugs-gnu "debbugs-gnu" "List all outstanding Emacs bugs." t)))
4401(defun gnus-list-debbugs () 4403(defun gnus-list-debbugs ()
4402 "List all open Gnus bug reports." 4404 "List all open Gnus bug reports."
4403 (interactive) 4405 (interactive)
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 8e08f89f22c..46e50ed9508 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -403,13 +403,16 @@ must be one of the symbols header, mode, or vertical."
403 (or mouse-1-click-in-non-selected-windows 403 (or mouse-1-click-in-non-selected-windows
404 (eq window (selected-window))) 404 (eq window (selected-window)))
405 (mouse-on-link-p start))) 405 (mouse-on-link-p start)))
406 (enlarge-minibuffer 406 (resize-minibuffer
407 ;; Resize the minibuffer window if it's on the same frame as
408 ;; and immediately below the position window and it's either
409 ;; active or `resize-mini-windows' is nil.
407 (and (eq line 'mode) 410 (and (eq line 'mode)
408 (not resize-mini-windows)
409 (eq (window-frame minibuffer-window) frame) 411 (eq (window-frame minibuffer-window) frame)
410 (not (one-window-p t frame))
411 (= (nth 1 (window-edges minibuffer-window)) 412 (= (nth 1 (window-edges minibuffer-window))
412 (nth 3 (window-edges window))))) 413 (nth 3 (window-edges window)))
414 (or (not resize-mini-windows)
415 (eq minibuffer-window (active-minibuffer-window)))))
413 (which-side 416 (which-side
414 (and (eq line 'vertical) 417 (and (eq line 'vertical)
415 (or (cdr (assq 'vertical-scroll-bars (frame-parameters frame))) 418 (or (cdr (assq 'vertical-scroll-bars (frame-parameters frame)))
@@ -424,7 +427,7 @@ must be one of the symbols header, mode, or vertical."
424 ((eq line 'mode) 427 ((eq line 'mode)
425 ;; Check whether mode-line can be dragged at all. 428 ;; Check whether mode-line can be dragged at all.
426 (when (and (window-at-side-p window 'bottom) 429 (when (and (window-at-side-p window 'bottom)
427 (not enlarge-minibuffer)) 430 (not resize-minibuffer))
428 (setq done t))) 431 (setq done t)))
429 ((eq line 'vertical) 432 ((eq line 'vertical)
430 ;; Get the window to adjust for the vertical case. 433 ;; Get the window to adjust for the vertical case.
@@ -498,13 +501,9 @@ must be one of the symbols header, mode, or vertical."
498 ;; Remember that we dragged. 501 ;; Remember that we dragged.
499 (setq dragged t)) 502 (setq dragged t))
500 503
501 (cond 504 (if (eq line 'mode)
502 (enlarge-minibuffer 505 (adjust-window-trailing-edge window growth)
503 (adjust-window-trailing-edge window growth)) 506 (adjust-window-trailing-edge window (- growth))))))
504 ((eq line 'mode)
505 (adjust-window-trailing-edge window growth))
506 (t
507 (adjust-window-trailing-edge window (- growth)))))))
508 507
509 ;; Presumably, if this was just a click, the last event should be 508 ;; Presumably, if this was just a click, the last event should be
510 ;; `mouse-1', whereas if this did move the mouse, it should be a 509 ;; `mouse-1', whereas if this did move the mouse, it should be a
diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog
index 86f493a0a5b..c340fd45df3 100644
--- a/lisp/org/ChangeLog
+++ b/lisp/org/ChangeLog
@@ -1,3 +1,67 @@
12012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
2
3 * org-table.el (org-table-number-fraction): Fix typo.
4
52012-04-27 Eric Schulte <eric.schulte@gmx.com>
6
7 * ob-python.el (org-babel-execute:python): Ensure newline precedes
8 automatically-added returns.
9
102012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
11
12 * org-mouse.el (org-mode-hook): Do not move point when clicking on
13 a footnote reference.
14
152012-04-27 Bastien Guerry <bzg@gnu.org>
16
17 * org-faces.el (org-date-selected): Fix docstring.
18
192012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
20
21 * org-list.el (org-list-struct-indent): Follow
22 `org-list-demote-modify-bullet' specifications for ordered
23 bullets.
24 (org-list-indent-item-generic, org-indent-item-tree)
25 (org-outdent-item-tree): Fix bug when operating on a region.
26 (org-outdent-item, org-indent-item): Allow to operate on a region.
27
28 * org.el (org-shiftmetaleft, org-shiftmetaright): Allow to operate
29 on a region.
30
312012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
32
33 * org-footnote.el (org-footnote-normalize): Fix positioning in
34 HTML export without a footnote section.
35
362012-04-27 Madan Ramakrishnan <madanr79@gmail.com> (tiny change)
37
38 * org-agenda.el (org-agenda-bulk-mark): Truly make arg optional as
39 advertised by the function.
40
412012-04-27 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
42
43 * org.el (org-read-date-display): Fix bug when displaying the
44 overlay.
45
462012-04-27 Bastien Guerry <bzg@gnu.org>
47
48 * org.el (org-mode): Don't use `buffer-face-mode' by default.
49
502012-04-27 Bastien Guerry <bzg@gnu.org>
51
52 * org-faces.el (org-date-selected): New face.
53
542012-04-27 Jambunathan K <kjambunathan@gmail.com>
55
56 * org-odt.el (org-odt-format-org-link): Pay no heed to whether the
57 internal links destined for headlines provide a description or
58 not. In fact, the `org-store-link' and `org-insert-link' create
59 internal links which do have a description.
60
612012-04-27 Bastien Guerry <bzg@gnu.org>
62
63 * org-clock.el (org-program-exists): Fix docstring.
64
12012-04-14 Bastien Guerry <bzg@gnu.org> 652012-04-14 Bastien Guerry <bzg@gnu.org>
2 66
3 * org.el (org-point-at-end-of-empty-headline): Only try to match 67 * org.el (org-point-at-end-of-empty-headline): Only try to match
@@ -438,11 +502,6 @@
438 * org-attach.el (org-attach-store-link-p): Remove spurious quote 502 * org-attach.el (org-attach-store-link-p): Remove spurious quote
439 in customization form choice. 503 in customization form choice.
440 504
4412012-04-01 Tassilo Horn <tassilo@member.fsf.org>
442
443 * org-contacts.el (org-contacts-check-mail-address): Add missing
444 word to `y-or-n-p' question.
445
4462012-04-01 Eric Schulte <eric.schulte@gmx.com> 5052012-04-01 Eric Schulte <eric.schulte@gmx.com>
447 506
448 * ob-sh.el (org-babel-execute:sh): Pass all params to subroutine. 507 * ob-sh.el (org-babel-execute:sh): Pass all params to subroutine.
@@ -934,11 +993,6 @@
934 * org-footnote.el (org-footnote-normalize): Make sure that 993 * org-footnote.el (org-footnote-normalize): Make sure that
935 footnotes are moved to a single place during export. 994 footnotes are moved to a single place during export.
936 995
9372012-04-01 Bastien Guerry <bzg@gnu.org>
938
939 * org.el (org-cycle-internal-global): Prevent the display of
940 messages when cycling from with a Gnus article buffer.
941
9422012-04-01 Nicolas Goaziou <n.goaziou@gmail.com> 9962012-04-01 Nicolas Goaziou <n.goaziou@gmail.com>
943 997
944 * org-footnote.el (org-footnote-normalize): Ensure footnote 998 * org-footnote.el (org-footnote-normalize): Ensure footnote
@@ -1807,11 +1861,6 @@
1807 1861
18082012-01-03 Bastien Guerry <bzg@gnu.org> 18622012-01-03 Bastien Guerry <bzg@gnu.org>
1809 1863
1810 * org-drill.el (org-drill-leech-method, org-drill-scope)
1811 (org-drill-spaced-repetition-algorithm): Fix wrong :type spec.
1812
18132012-01-03 Bastien Guerry <bzg@gnu.org>
1814
1815 * org.el (org-property-re): Also match cumulating properties 1864 * org.el (org-property-re): Also match cumulating properties
1816 like ":prop+:". 1865 like ":prop+:".
1817 1866
@@ -5929,10 +5978,6 @@
5929 * ob-exp.el (org-babel-exp-in-export-file): Bind 5978 * ob-exp.el (org-babel-exp-in-export-file): Bind
5930 `org-link-search-inhibit-query' to t to inhibit prompts. 5979 `org-link-search-inhibit-query' to t to inhibit prompts.
5931 5980
59322011-07-28 Julien Danjou <julien@danjou.info>
5933
5934 * org-contacts.el: Merge org-contacts-wl.el.
5935
59362011-07-28 Carsten Dominik <carsten.dominik@gmail.com> 59812011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
5937 5982
5938 * org-exp.el (org-export-add-options-to-plist): Use the right 5983 * org-exp.el (org-export-add-options-to-plist): Use the right
@@ -5967,10 +6012,6 @@
5967 * org-agenda.el (org-agenda-open-link): Pass entire text of agenda 6012 * org-agenda.el (org-agenda-open-link): Pass entire text of agenda
5968 line to `org-offer-links-in-entry'. 6013 line to `org-offer-links-in-entry'.
5969 6014
59702011-07-28 Michael Markert <markert.michael@googlemail.com>
5971
5972 * org-contacts-wl.el: New file.
5973
59742011-07-28 Matt Lundin <mdl@imapmail.org> 60152011-07-28 Matt Lundin <mdl@imapmail.org>
5975 6016
5976 * org-bibtex.el (org-bibtex-search): New function. 6017 * org-bibtex.el (org-bibtex-search): New function.
@@ -6736,9 +6777,6 @@
6736 (org-agenda-open-link): Stop using prefix-length. 6777 (org-agenda-open-link): Stop using prefix-length.
6737 (org-agenda-change-all-lines): Stop using prefix-length. 6778 (org-agenda-change-all-lines): Stop using prefix-length.
6738 6779
6739 * org-colview-xemacs.el (org-columns-display-here): Stop using
6740 prefix-length. Always return claned items.
6741
6742 * org-colview.el (org-columns-display-here): Stop using 6780 * org-colview.el (org-columns-display-here): Stop using
6743 prefix-length. Always return claned items. 6781 prefix-length. Always return claned items.
6744 6782
@@ -13095,16 +13133,6 @@
13095 13133
13096 * org-capture.el (org-capture-templates): Fix customize type. 13134 * org-capture.el (org-capture-templates): Fix customize type.
13097 13135
130982010-11-11 Carsten Dominik <carsten.dominik@gmail.com>
13099
13100 * org-colview-xemacs.el (org-columns-compile-map):
13101 (org-columns-number-to-string):
13102 (org-columns-string-to-number): Handle estimate ranges.
13103 (org-estimate-mean-and-var): New function.
13104 (org-estimate-combine): New function.
13105 (org-estimate-print): New function.
13106 (org-string-to-estimate): New function.
13107
131082010-09-25 Juanma Barranquero <lekktu@gmail.com> 131362010-09-25 Juanma Barranquero <lekktu@gmail.com>
13109 13137
13110 * org.el (org-refile-targets): 13138 * org.el (org-refile-targets):
@@ -14132,9 +14160,6 @@
14132 * org-src.el (org-edit-src-find-region-and-lang): Test for 14160 * org-src.el (org-edit-src-find-region-and-lang): Test for
14133 table.el as late as possible. 14161 table.el as late as possible.
14134 14162
14135 * org-colview-xemacs.el: Make sure this file is never loaded into
14136 Emacs. Remove all tests for XEmacs.
14137
14138 * org-colview.el: Make sure this file is never loaded into XEmacs. 14163 * org-colview.el: Make sure this file is never loaded into XEmacs.
14139 14164
14140 * org-agenda.el (org-highlight, org-unhighlight): Use direct 14165 * org-agenda.el (org-highlight, org-unhighlight): Use direct
@@ -15497,9 +15522,6 @@
15497 * org-exp.el (org-export): Use "1" as a sign to export only the 15522 * org-exp.el (org-export): Use "1" as a sign to export only the
15498 subtree. 15523 subtree.
15499 15524
15500 * org-colview-xemacs.el (org-columns-edit-value):
15501 Use org-unrestricted property.
15502
15503 * org-colview.el (org-columns-edit-value): 15525 * org-colview.el (org-columns-edit-value):
15504 Use org-unrestricted property. 15526 Use org-unrestricted property.
15505 15527
@@ -15898,13 +15920,6 @@
15898 (org-agenda-colview-summarize): Handle extended summary types 15920 (org-agenda-colview-summarize): Handle extended summary types
15899 properly. 15921 properly.
15900 15922
15901 * org-colview-xemacs.el (org-columns-display-here): Don't try to
15902 calculate values if the underlying property is not set.
15903 (org-columns-string-to-number): Convert age strings back into
15904 fractional days.
15905 (org-agenda-colview-summarize): Handle extended summary types
15906 properly.
15907
159082009-11-13 Carsten Dominik <carsten.dominik@gmail.com> 159232009-11-13 Carsten Dominik <carsten.dominik@gmail.com>
15909 15924
15910 * org-exp.el (org-export-format-drawer-function): New variable. 15925 * org-exp.el (org-export-format-drawer-function): New variable.
@@ -16083,10 +16098,6 @@
16083 org-return-follows-link' is set and there is nothing else to do in 16098 org-return-follows-link' is set and there is nothing else to do in
16084 this line. 16099 this line.
16085 16100
160862009-11-13 James TD Smith <ahktenzero@mohorovi.cc>
16087
16088 * org-colview-xemacs.el: Add in changes from org-colview.el.
16089
160902009-11-13 Dan Davison <davison@stats.ox.ac.uk> 161012009-11-13 Dan Davison <davison@stats.ox.ac.uk>
16091 16102
16092 * org-exp-blocks.el: Modify split separator regexp to avoid empty 16103 * org-exp-blocks.el: Modify split separator regexp to avoid empty
@@ -17212,9 +17223,6 @@
17212 * org-colview.el (org-columns, org-columns-redo) 17223 * org-colview.el (org-columns, org-columns-redo)
17213 (org-agenda-columns): Don't use `goto-line'. 17224 (org-agenda-columns): Don't use `goto-line'.
17214 17225
17215 * org-colview-xemacs.el (org-columns, org-agenda-columns):
17216 Don't use `goto-line'.
17217
17218 * org-agenda.el (org-agenda-mode): Force visual line motion off. 17226 * org-agenda.el (org-agenda-mode): Force visual line motion off.
17219 (org-agenda-add-entry-text-maxlines): Improve docstring. 17227 (org-agenda-add-entry-text-maxlines): Improve docstring.
17220 (org-agenda-start-with-entry-text-mode): New option. 17228 (org-agenda-start-with-entry-text-mode): New option.
@@ -17319,10 +17327,6 @@
17319 * org-colview.el (org-columns-edit-value, org-columns-new) 17327 * org-colview.el (org-columns-edit-value, org-columns-new)
17320 (org-insert-columns-dblock): Use org-icompleting-read. 17328 (org-insert-columns-dblock): Use org-icompleting-read.
17321 17329
17322 * org-colview-xemacs.el (org-columns-edit-value)
17323 (org-columns-new, org-insert-columns-dblock):
17324 Use org-icompleting-read.
17325
17326 * org-attach.el (org-attach-delete-one, org-attach-open): 17330 * org-attach.el (org-attach-delete-one, org-attach-open):
17327 Use org-icompleting-read. 17331 Use org-icompleting-read.
17328 17332
@@ -18017,10 +18021,6 @@
18017 in column values. 18021 in column values.
18018 (org-columns-capture-view): Exclude comment and archived trees. 18022 (org-columns-capture-view): Exclude comment and archived trees.
18019 18023
18020 * org-colview-xemacs.el (org-columns-capture-view):
18021 Protect vertical bars in column values.
18022 (org-columns-capture-view): Exclude comment and archived trees.
18023
18024 * org.el (org-quote-vert): New function. 18024 * org.el (org-quote-vert): New function.
18025 18025
18026 * org-latex.el (org-export-latex-verbatim-wrap): New option. 18026 * org-latex.el (org-export-latex-verbatim-wrap): New option.
@@ -18209,9 +18209,6 @@
18209 * org-colview.el (org-dblock-write:columnview): Allow indented 18209 * org-colview.el (org-dblock-write:columnview): Allow indented
18210 #+TBLFM line. 18210 #+TBLFM line.
18211 18211
18212 * org-colview-xemacs.el (org-dblock-write:columnview):
18213 Allow indented #+TBLFM line.
18214
18215 * org-clock.el (org-dblock-write:clocktable): Allow indented 18212 * org-clock.el (org-dblock-write:clocktable): Allow indented
18216 #+TBLFM line. 18213 #+TBLFM line.
18217 18214
@@ -18288,9 +18285,6 @@
18288 18285
18289 * org.el (org-enable-priority-commands): New option. 18286 * org.el (org-enable-priority-commands): New option.
18290 18287
18291 * org-colview-xemacs.el (org-columns-compute)
18292 (org-columns-number-to-string): Fix problems with empty fields.
18293
18294 * org-colview.el (org-columns-compute) 18288 * org-colview.el (org-columns-compute)
18295 (org-columns-number-to-string): Fix problems with empty fields. 18289 (org-columns-number-to-string): Fix problems with empty fields.
18296 18290
@@ -18493,9 +18487,6 @@
18493 (org-export-region-as-latex): Use the property list. 18487 (org-export-region-as-latex): Use the property list.
18494 (org-export-as-latex): ???? 18488 (org-export-as-latex): ????
18495 18489
18496 * org-colview-xemacs.el (org-columns-remove-overlays)
18497 (org-columns): Fix call to `local-variable-p'.
18498
184992009-08-06 Carsten Dominik <carsten.dominik@gmail.com> 184902009-08-06 Carsten Dominik <carsten.dominik@gmail.com>
18500 18491
18501 * org-latex.el (org-export-latex-after-blockquotes-hook): New hook. 18492 * org-latex.el (org-export-latex-after-blockquotes-hook): New hook.
@@ -18931,12 +18922,6 @@
18931 (org-columns-remove-overlays): Restore the value of `truncate-lines'. 18922 (org-columns-remove-overlays): Restore the value of `truncate-lines'.
18932 (org-columns): Remember the value of `truncate-lines'. 18923 (org-columns): Remember the value of `truncate-lines'.
18933 18924
18934 * org-colview-xemacs.el (org-colview-initial-truncate-line-value):
18935 New variable.
18936 (org-columns-remove-overlays): Restore the value of
18937 `truncate-lines'.
18938 (org-columns): Remember the value of `truncate-lines'.
18939
18940 * org.el (org-columns-skip-arrchived-trees): New option. 18925 * org.el (org-columns-skip-arrchived-trees): New option.
18941 18926
18942 * org-agenda.el (org-agenda-export-html-style): Define color for 18927 * org-agenda.el (org-agenda-export-html-style): Define color for
@@ -19678,10 +19663,6 @@
19678 Better error catching when a date/time property does not have allowed 19663 Better error catching when a date/time property does not have allowed
19679 values defined. 19664 values defined.
19680 19665
19681 * org-colview-xemacs.el (org-colview-construct-allowed-dates):
19682 Better error catching when a date/time property does not have
19683 allowed values defined.
19684
196852009-01-25 Carsten Dominik <carsten.dominik@gmail.com> 196662009-01-25 Carsten Dominik <carsten.dominik@gmail.com>
19686 19667
19687 * org.el (org-map-entries): Restore point and restriction after 19668 * org.el (org-map-entries): Restore point and restriction after
@@ -20429,10 +20410,6 @@
20429 * org-colview.el (org-columns-edit-value, org-columns-new) 20410 * org-colview.el (org-columns-edit-value, org-columns-new)
20430 (org-insert-columns-dblock): Use `org-ido-completing-read'. 20411 (org-insert-columns-dblock): Use `org-ido-completing-read'.
20431 20412
20432 * org-colview-xemacs.el (org-columns-edit-value)
20433 (org-columns-new, org-insert-columns-dblock):
20434 Use `org-ido-completing-read'.
20435
20436 * org-attach.el (org-attach-delete-one, org-attach-open): 20413 * org-attach.el (org-attach-delete-one, org-attach-open):
20437 Use `org-ido-completing-read'. 20414 Use `org-ido-completing-read'.
20438 20415
@@ -21011,9 +20988,6 @@
21011 * org-colview.el (org-columns-get-format-and-top-level): 20988 * org-colview.el (org-columns-get-format-and-top-level):
21012 Remove resetting the marker. 20989 Remove resetting the marker.
21013 20990
21014 * org-colview-xemacs.el (org-columns-get-format-and-top-level):
21015 Remove resetting the marker.
21016
21017 * org.el (org-entry-property-inherited-from): Improve docstring. 20991 * org.el (org-entry-property-inherited-from): Improve docstring.
21018 (org-entry-get-with-inheritance): Reset marker before starting the 20992 (org-entry-get-with-inheritance): Reset marker before starting the
21019 search. 20993 search.
@@ -21188,11 +21162,6 @@
21188 (org-columns-next-allowed-value): 21162 (org-columns-next-allowed-value):
21189 Use `org-colview-construct-allowed-dates'. 21163 Use `org-colview-construct-allowed-dates'.
21190 21164
21191 * org-colview-xemacs.el (org-colview-construct-allowed-dates):
21192 New function.
21193 (org-columns-next-allowed-value):
21194 Use `org-colview-construct-allowed-dates'.
21195
21196 * org.el (org-protect-slash): New function. 21165 * org.el (org-protect-slash): New function.
21197 (org-get-refile-targets): Use `org-protect-slash'. 21166 (org-get-refile-targets): Use `org-protect-slash'.
21198 21167
@@ -21322,9 +21291,6 @@
21322 * org-colview.el (org-columns-display-here): 21291 * org-colview.el (org-columns-display-here):
21323 Use `org-columns-modify-value-for-display-function'. 21292 Use `org-columns-modify-value-for-display-function'.
21324 21293
21325 * org-colview-xemacs.el (org-columns-display-here):
21326 Use `org-columns-modify-value-for-display-function'.
21327
21328 * org.el (org-columns-modify-value-for-display-function): New option. 21294 * org.el (org-columns-modify-value-for-display-function): New option.
21329 21295
21330 * org-publish.el (org-publish-file): Make sure the directory match 21296 * org-publish.el (org-publish-file): Make sure the directory match
@@ -21515,8 +21481,6 @@
21515 21481
21516 * org-colview.el (org-columns-next-allowed-value): Bug fix. 21482 * org-colview.el (org-columns-next-allowed-value): Bug fix.
21517 21483
21518 * org-colview-xemacs.el (org-columns-next-allowed-value): Bug fix.
21519
21520 * org-agenda.el (org-agenda-get-closed): Get the end time into the 21484 * org-agenda.el (org-agenda-get-closed): Get the end time into the
21521 agenda prefix as well. 21485 agenda prefix as well.
21522 21486
@@ -21637,9 +21601,6 @@
21637 * org-colview.el (org-columns-next-allowed-value): Handle next 21601 * org-colview.el (org-columns-next-allowed-value): Handle next
21638 argument NTH to directly select a value. 21602 argument NTH to directly select a value.
21639 21603
21640 * org-colview-xemacs.el (org-columns-next-allowed-value): Handle next
21641 argument NTH to directly select a value.
21642
216432008-06-17 Carsten Dominik <dominik@science.uva.nl> 216042008-06-17 Carsten Dominik <dominik@science.uva.nl>
21644 21605
21645 * org-agenda.el (org-agenda-scheduled-leaders): Fix docstring. 21606 * org-agenda.el (org-agenda-scheduled-leaders): Fix docstring.
@@ -21783,9 +21744,6 @@
21783 * org-clock.el (org-clock-display, org-clock-out) 21744 * org-clock.el (org-clock-display, org-clock-out)
21784 (org-update-mode-line): Use `org-time-clocksum-format'. 21745 (org-update-mode-line): Use `org-time-clocksum-format'.
21785 21746
21786 * org-colview-xemacs.el (org-columns-number-to-string):
21787 Use `org-time-clocksum-format'.
21788
21789 * org-colview.el (org-columns-number-to-string): 21747 * org-colview.el (org-columns-number-to-string):
21790 Use `org-time-clocksum-format'. 21748 Use `org-time-clocksum-format'.
21791 21749
diff --git a/lisp/org/ob-python.el b/lisp/org/ob-python.el
index 0dc744aaa73..348248f35cf 100644
--- a/lisp/org/ob-python.el
+++ b/lisp/org/ob-python.el
@@ -64,7 +64,7 @@ This function is called by `org-babel-execute-src-block'."
64 (preamble (cdr (assoc :preamble params))) 64 (preamble (cdr (assoc :preamble params)))
65 (full-body 65 (full-body
66 (org-babel-expand-body:generic 66 (org-babel-expand-body:generic
67 (concat body (if return-val (format "return %s" return-val) "")) 67 (concat body (if return-val (format "\nreturn %s" return-val) ""))
68 params (org-babel-variable-assignments:python params))) 68 params (org-babel-variable-assignments:python params)))
69 (result (org-babel-python-evaluate 69 (result (org-babel-python-evaluate
70 session full-body result-type result-params preamble))) 70 session full-body result-type result-params preamble)))
diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el
index 3bb0fc84897..ddb56ca4bac 100644
--- a/lisp/org/org-agenda.el
+++ b/lisp/org/org-agenda.el
@@ -8294,7 +8294,7 @@ This is a command that has to be installed in `calendar-mode-map'."
8294(defun org-agenda-bulk-mark (&optional arg) 8294(defun org-agenda-bulk-mark (&optional arg)
8295 "Mark the entry at point for future bulk action." 8295 "Mark the entry at point for future bulk action."
8296 (interactive "p") 8296 (interactive "p")
8297 (dotimes (i (max arg 1)) 8297 (dotimes (i (or arg 1))
8298 (unless (org-get-at-bol 'org-agenda-diary-link) 8298 (unless (org-get-at-bol 'org-agenda-diary-link)
8299 (let* ((m (org-get-at-bol 'org-hd-marker)) 8299 (let* ((m (org-get-at-bol 'org-hd-marker))
8300 ov) 8300 ov)
diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el
index 434f6a1d5f6..aabcfc187db 100644
--- a/lisp/org/org-clock.el
+++ b/lisp/org/org-clock.el
@@ -664,7 +664,7 @@ Use alsa's aplay tool if available."
664 (error (beep t) (beep t))))))))) 664 (error (beep t) (beep t)))))))))
665 665
666(defun org-program-exists (program-name) 666(defun org-program-exists (program-name)
667 "Checks whenever we can locate program and launch it." 667 "Checks whenever we can locate PROGRAM-NAME using the `which' executable."
668 (if (member system-type '(gnu/linux darwin)) 668 (if (member system-type '(gnu/linux darwin))
669 (= 0 (call-process "which" nil nil nil program-name)))) 669 (= 0 (call-process "which" nil nil nil program-name))))
670 670
diff --git a/lisp/org/org-faces.el b/lisp/org/org-faces.el
index 481d662eca1..58f879dd51a 100644
--- a/lisp/org/org-faces.el
+++ b/lisp/org/org-faces.el
@@ -285,6 +285,16 @@ column view defines special faces for each outline level. See the file
285 "Face for date/time stamps." 285 "Face for date/time stamps."
286 :group 'org-faces) 286 :group 'org-faces)
287 287
288(defface org-date-selected
289 (org-compatible-face nil
290 '((((class color) (min-colors 16) (background light)) (:foreground "Red1" :bold nil))
291 (((class color) (min-colors 16) (background dark)) (:foreground "Pink" :bold nil))
292 (((class color) (min-colors 8) (background light)) (:foreground "red" :bold nil))
293 (((class color) (min-colors 8) (background dark)) (:foreground "red" :bold nil))
294 (t (:inverse-video t))))
295 "Face for highlighting the calendar day when using `org-read-date'."
296 :group 'org-faces)
297
288(defface org-sexp-date 298(defface org-sexp-date
289 '((((class color) (background light)) (:foreground "Purple")) 299 '((((class color) (background light)) (:foreground "Purple"))
290 (((class color) (background dark)) (:foreground "Cyan")) 300 (((class color) (background dark)) (:foreground "Cyan"))
diff --git a/lisp/org/org-footnote.el b/lisp/org/org-footnote.el
index 9319e0813c0..a9ba8d7510b 100644
--- a/lisp/org/org-footnote.el
+++ b/lisp/org/org-footnote.el
@@ -716,8 +716,8 @@ Additional note on `org-footnote-insert-pos-for-preprocessor':
716 ((and org-footnote-section (eq major-mode 'org-mode)) 716 ((and org-footnote-section (eq major-mode 'org-mode))
717 (goto-char (point-min)) 717 (goto-char (point-min))
718 (if (re-search-forward 718 (if (re-search-forward
719 (concat "^\\*[ \t]+" (regexp-quote org-footnote-section) 719 (concat "^\\*[ \t]+" (regexp-quote org-footnote-section)
720 "[ \t]*$") nil t) 720 "[ \t]*$") nil t)
721 (delete-region (match-beginning 0) (org-end-of-subtree t t))) 721 (delete-region (match-beginning 0) (org-end-of-subtree t t)))
722 ;; A new footnote section is inserted by default at the end of 722 ;; A new footnote section is inserted by default at the end of
723 ;; the buffer. 723 ;; the buffer.
@@ -727,7 +727,14 @@ Additional note on `org-footnote-insert-pos-for-preprocessor':
727 (unless (bolp) (newline))) 727 (unless (bolp) (newline)))
728 ;; No footnote section set: Footnotes will be added at the end 728 ;; No footnote section set: Footnotes will be added at the end
729 ;; of the section containing their first reference. 729 ;; of the section containing their first reference.
730 ((eq major-mode 'org-mode)) 730 ;; Nevertheless, in an export situation, set insertion point to
731 ;; `point-max' by default.
732 ((eq major-mode 'org-mode)
733 (when export-props
734 (goto-char (point-max))
735 (skip-chars-backward " \r\t\n")
736 (forward-line)
737 (delete-region (point) (point-max))))
731 (t 738 (t
732 ;; Remove any left-over tag in the buffer, if one is set up. 739 ;; Remove any left-over tag in the buffer, if one is set up.
733 (when org-footnote-tag-for-non-org-mode-files 740 (when org-footnote-tag-for-non-org-mode-files
diff --git a/lisp/org/org-list.el b/lisp/org/org-list.el
index c3775888325..4498280ac77 100644
--- a/lisp/org/org-list.el
+++ b/lisp/org/org-list.el
@@ -1484,8 +1484,19 @@ bullets between START and END."
1484 (change-bullet-maybe 1484 (change-bullet-maybe
1485 (function 1485 (function
1486 (lambda (item) 1486 (lambda (item)
1487 (let* ((bul (org-trim (org-list-get-bullet item struct))) 1487 (let ((new-bul-p
1488 (new-bul-p (cdr (assoc bul org-list-demote-modify-bullet)))) 1488 (cdr (assoc
1489 ;; Normalize ordered bullets.
1490 (let ((bul (org-trim
1491 (org-list-get-bullet item struct))))
1492 (cond ((string-match "[A-Z]\\." bul) "A.")
1493 ((string-match "[A-Z])" bul) "A)")
1494 ((string-match "[a-z]\\." bul) "a.")
1495 ((string-match "[a-z])" bul) "a)")
1496 ((string-match "[0-9]\\." bul) "1.")
1497 ((string-match "[0-9])" bul) "1)")
1498 (t bul)))
1499 org-list-demote-modify-bullet))))
1489 (when new-bul-p (org-list-set-bullet item struct new-bul-p)))))) 1500 (when new-bul-p (org-list-set-bullet item struct new-bul-p))))))
1490 (ind 1501 (ind
1491 (lambda (cell) 1502 (lambda (cell)
@@ -2500,7 +2511,6 @@ STRUCT is the list structure.
2500 2511
2501Return t if successful." 2512Return t if successful."
2502 (save-excursion 2513 (save-excursion
2503 (beginning-of-line)
2504 (let* ((regionp (org-region-active-p)) 2514 (let* ((regionp (org-region-active-p))
2505 (rbeg (and regionp (region-beginning))) 2515 (rbeg (and regionp (region-beginning)))
2506 (rend (and regionp (region-end))) 2516 (rend (and regionp (region-end)))
@@ -2509,7 +2519,8 @@ Return t if successful."
2509 (prevs (org-list-prevs-alist struct)) 2519 (prevs (org-list-prevs-alist struct))
2510 ;; Are we going to move the whole list? 2520 ;; Are we going to move the whole list?
2511 (specialp 2521 (specialp
2512 (and (= top (point)) 2522 (and (not regionp)
2523 (= top (point-at-bol))
2513 (cdr (assq 'indent org-list-automatic-rules)) 2524 (cdr (assq 'indent org-list-automatic-rules))
2514 (if no-subtree 2525 (if no-subtree
2515 (error 2526 (error
@@ -2523,12 +2534,12 @@ Return t if successful."
2523 (progn 2534 (progn
2524 (set-marker org-last-indent-begin-marker rbeg) 2535 (set-marker org-last-indent-begin-marker rbeg)
2525 (set-marker org-last-indent-end-marker rend)) 2536 (set-marker org-last-indent-end-marker rend))
2526 (set-marker org-last-indent-begin-marker (point)) 2537 (set-marker org-last-indent-begin-marker (point-at-bol))
2527 (set-marker org-last-indent-end-marker 2538 (set-marker org-last-indent-end-marker
2528 (cond 2539 (cond
2529 (specialp (org-list-get-bottom-point struct)) 2540 (specialp (org-list-get-bottom-point struct))
2530 (no-subtree (1+ (point))) 2541 (no-subtree (1+ (point-at-bol)))
2531 (t (org-list-get-item-end (point) struct)))))) 2542 (t (org-list-get-item-end (point-at-bol) struct))))))
2532 (let* ((beg (marker-position org-last-indent-begin-marker)) 2543 (let* ((beg (marker-position org-last-indent-begin-marker))
2533 (end (marker-position org-last-indent-end-marker))) 2544 (end (marker-position org-last-indent-end-marker)))
2534 (cond 2545 (cond
@@ -2583,19 +2594,35 @@ Return t if successful."
2583 "Outdent a local list item, but not its children. 2594 "Outdent a local list item, but not its children.
2584If a region is active, all items inside will be moved." 2595If a region is active, all items inside will be moved."
2585 (interactive) 2596 (interactive)
2586 (if (org-at-item-p) 2597 (let ((regionp (org-region-active-p)))
2587 (let ((struct (org-list-struct))) 2598 (cond
2588 (org-list-indent-item-generic -1 t struct)) 2599 ((or (org-at-item-p)
2589 (error "Not at an item"))) 2600 (and regionp
2601 (save-excursion (goto-char (region-beginning))
2602 (org-at-item-p))))
2603 (let ((struct (if (not regionp) (org-list-struct)
2604 (save-excursion (goto-char (region-beginning))
2605 (org-list-struct)))))
2606 (org-list-indent-item-generic -1 t struct)))
2607 (regionp (error "Region not starting at an item"))
2608 (t (error "Not at an item")))))
2590 2609
2591(defun org-indent-item () 2610(defun org-indent-item ()
2592 "Indent a local list item, but not its children. 2611 "Indent a local list item, but not its children.
2593If a region is active, all items inside will be moved." 2612If a region is active, all items inside will be moved."
2594 (interactive) 2613 (interactive)
2595 (if (org-at-item-p) 2614 (let ((regionp (org-region-active-p)))
2596 (let ((struct (org-list-struct))) 2615 (cond
2597 (org-list-indent-item-generic 1 t struct)) 2616 ((or (org-at-item-p)
2598 (error "Not at an item"))) 2617 (and regionp
2618 (save-excursion (goto-char (region-beginning))
2619 (org-at-item-p))))
2620 (let ((struct (if (not regionp) (org-list-struct)
2621 (save-excursion (goto-char (region-beginning))
2622 (org-list-struct)))))
2623 (org-list-indent-item-generic 1 t struct)))
2624 (regionp (error "Region not starting at an item"))
2625 (t (error "Not at an item")))))
2599 2626
2600(defun org-outdent-item-tree () 2627(defun org-outdent-item-tree ()
2601 "Outdent a local list item including its children. 2628 "Outdent a local list item including its children.
@@ -2604,10 +2631,12 @@ If a region is active, all items inside will be moved."
2604 (let ((regionp (org-region-active-p))) 2631 (let ((regionp (org-region-active-p)))
2605 (cond 2632 (cond
2606 ((or (org-at-item-p) 2633 ((or (org-at-item-p)
2607 (and (org-region-active-p) 2634 (and regionp
2608 (goto-char (region-beginning)) 2635 (save-excursion (goto-char (region-beginning))
2609 (org-at-item-p))) 2636 (org-at-item-p))))
2610 (let ((struct (org-list-struct))) 2637 (let ((struct (if (not regionp) (org-list-struct)
2638 (save-excursion (goto-char (region-beginning))
2639 (org-list-struct)))))
2611 (org-list-indent-item-generic -1 nil struct))) 2640 (org-list-indent-item-generic -1 nil struct)))
2612 (regionp (error "Region not starting at an item")) 2641 (regionp (error "Region not starting at an item"))
2613 (t (error "Not at an item"))))) 2642 (t (error "Not at an item")))))
@@ -2619,10 +2648,12 @@ If a region is active, all items inside will be moved."
2619 (let ((regionp (org-region-active-p))) 2648 (let ((regionp (org-region-active-p)))
2620 (cond 2649 (cond
2621 ((or (org-at-item-p) 2650 ((or (org-at-item-p)
2622 (and (org-region-active-p) 2651 (and regionp
2623 (goto-char (region-beginning)) 2652 (save-excursion (goto-char (region-beginning))
2624 (org-at-item-p))) 2653 (org-at-item-p))))
2625 (let ((struct (org-list-struct))) 2654 (let ((struct (if (not regionp) (org-list-struct)
2655 (save-excursion (goto-char (region-beginning))
2656 (org-list-struct)))))
2626 (org-list-indent-item-generic 1 nil struct))) 2657 (org-list-indent-item-generic 1 nil struct)))
2627 (regionp (error "Region not starting at an item")) 2658 (regionp (error "Region not starting at an item"))
2628 (t (error "Not at an item"))))) 2659 (t (error "Not at an item")))))
diff --git a/lisp/org/org-mouse.el b/lisp/org/org-mouse.el
index 5a87bd64697..b467064b888 100644
--- a/lisp/org/org-mouse.el
+++ b/lisp/org/org-mouse.el
@@ -915,6 +915,7 @@ This means, between the beginning of line and the point."
915 ((assq :checkbox context) (org-toggle-checkbox)) 915 ((assq :checkbox context) (org-toggle-checkbox))
916 ((assq :item-bullet context) 916 ((assq :item-bullet context)
917 (let ((org-cycle-include-plain-lists t)) (org-cycle))) 917 (let ((org-cycle-include-plain-lists t)) (org-cycle)))
918 ((org-footnote-at-reference-p) nil)
918 (t ad-do-it)))))) 919 (t ad-do-it))))))
919 920
920(defun org-mouse-move-tree-start (event) 921(defun org-mouse-move-tree-start (event)
diff --git a/lisp/org/org-odt.el b/lisp/org/org-odt.el
index 234272a378d..2e984a575bd 100644
--- a/lisp/org/org-odt.el
+++ b/lisp/org/org-odt.el
@@ -1689,7 +1689,6 @@ ATTR is a string of other attributes of the a element."
1689 (or (not thefile) (string= thefile "")) 1689 (or (not thefile) (string= thefile ""))
1690 (plist-get org-lparse-opt-plist :section-numbers) 1690 (plist-get org-lparse-opt-plist :section-numbers)
1691 (setq sec-frag fragment) 1691 (setq sec-frag fragment)
1692 (org-find-text-property-in-string 'org-no-description fragment)
1693 (or (string-match "\\`sec\\(\\(-[0-9]+\\)+\\)" sec-frag) 1692 (or (string-match "\\`sec\\(\\(-[0-9]+\\)+\\)" sec-frag)
1694 (and (setq sec-frag 1693 (and (setq sec-frag
1695 (loop for alias in org-export-target-aliases do 1694 (loop for alias in org-export-target-aliases do
diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el
index 08981b57e49..37e5c4f91a6 100644
--- a/lisp/org/org-table.el
+++ b/lisp/org/org-table.el
@@ -135,8 +135,8 @@ Other options offered by the customize interface are more restrictive."
135 135
136(defcustom org-table-number-fraction 0.5 136(defcustom org-table-number-fraction 0.5
137 "Fraction of numbers in a column required to make the column align right. 137 "Fraction of numbers in a column required to make the column align right.
138In a column all non-white fields are considered. If at least this 138In a column all non-white fields are considered. If at least
139fraction of fields is matched by `org-table-number-fraction', 139this fraction of fields is matched by `org-table-number-regexp',
140alignment to the right border applies." 140alignment to the right border applies."
141 :group 'org-table-settings 141 :group 'org-table-settings
142 :type 'number) 142 :type 'number)
diff --git a/lisp/org/org.el b/lisp/org/org.el
index c2cc2354439..838a9a18ad4 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -5057,8 +5057,7 @@ The following commands are available:
5057 'org-parse-arguments) 5057 'org-parse-arguments)
5058 (set (make-local-variable 'pcomplete-termination-string) "") 5058 (set (make-local-variable 'pcomplete-termination-string) "")
5059 (when (>= emacs-major-version 23) 5059 (when (>= emacs-major-version 23)
5060 (set (make-local-variable 'buffer-face-mode-face) 'org-default) 5060 (set (make-local-variable 'buffer-face-mode-face) 'org-default))
5061 (buffer-face-mode))
5062 5061
5063 ;; If empty file that did not turn on org-mode automatically, make it to. 5062 ;; If empty file that did not turn on org-mode automatically, make it to.
5064 (if (and org-insert-mode-line-in-empty-file 5063 (if (and org-insert-mode-line-in-empty-file
@@ -14915,7 +14914,7 @@ So these are more for recording a certain time/date."
14915 (org-time-stamp arg 'inactive)) 14914 (org-time-stamp arg 'inactive))
14916 14915
14917(defvar org-date-ovl (make-overlay 1 1)) 14916(defvar org-date-ovl (make-overlay 1 1))
14918(overlay-put org-date-ovl 'face 'org-warning) 14917(overlay-put org-date-ovl 'face 'org-date-selected)
14919(org-detach-overlay org-date-ovl) 14918(org-detach-overlay org-date-ovl)
14920 14919
14921(defvar org-ans1) ; dynamically scoped parameter 14920(defvar org-ans1) ; dynamically scoped parameter
@@ -15131,35 +15130,35 @@ user."
15131 (when org-read-date-display-live 15130 (when org-read-date-display-live
15132 (when org-read-date-overlay 15131 (when org-read-date-overlay
15133 (delete-overlay org-read-date-overlay)) 15132 (delete-overlay org-read-date-overlay))
15134 (let ((p (point))) 15133 (when (minibufferp (current-buffer))
15135 (end-of-line 1) 15134 (save-excursion
15136 (while (not (equal (buffer-substring 15135 (end-of-line 1)
15137 (max (point-min) (- (point) 4)) (point)) 15136 (while (not (equal (buffer-substring
15138 " ")) 15137 (max (point-min) (- (point) 4)) (point))
15139 (insert " ")) 15138 " "))
15140 (goto-char p)) 15139 (insert " ")))
15141 (let* ((ans (concat (buffer-substring (point-at-bol) (point-max)) 15140 (let* ((ans (concat (buffer-substring (point-at-bol) (point-max))
15142 " " (or org-ans1 org-ans2))) 15141 " " (or org-ans1 org-ans2)))
15143 (org-end-time-was-given nil) 15142 (org-end-time-was-given nil)
15144 (f (org-read-date-analyze ans org-def org-defdecode)) 15143 (f (org-read-date-analyze ans org-def org-defdecode))
15145 (fmts (if org-dcst 15144 (fmts (if org-dcst
15146 org-time-stamp-custom-formats 15145 org-time-stamp-custom-formats
15147 org-time-stamp-formats)) 15146 org-time-stamp-formats))
15148 (fmt (if (or org-with-time 15147 (fmt (if (or org-with-time
15149 (and (boundp 'org-time-was-given) org-time-was-given)) 15148 (and (boundp 'org-time-was-given) org-time-was-given))
15150 (cdr fmts) 15149 (cdr fmts)
15151 (car fmts))) 15150 (car fmts)))
15152 (txt (concat "=> " (format-time-string fmt (apply 'encode-time f))))) 15151 (txt (concat "=> " (format-time-string fmt (apply 'encode-time f)))))
15153 (when (and org-end-time-was-given 15152 (when (and org-end-time-was-given
15154 (string-match org-plain-time-of-day-regexp txt)) 15153 (string-match org-plain-time-of-day-regexp txt))
15155 (setq txt (concat (substring txt 0 (match-end 0)) "-" 15154 (setq txt (concat (substring txt 0 (match-end 0)) "-"
15156 org-end-time-was-given 15155 org-end-time-was-given
15157 (substring txt (match-end 0))))) 15156 (substring txt (match-end 0)))))
15158 (when org-read-date-analyze-futurep 15157 (when org-read-date-analyze-futurep
15159 (setq txt (concat txt " (=>F)"))) 15158 (setq txt (concat txt " (=>F)")))
15160 (setq org-read-date-overlay 15159 (setq org-read-date-overlay
15161 (make-overlay (1- (point-at-eol)) (point-at-eol))) 15160 (make-overlay (1- (point-at-eol)) (point-at-eol)))
15162 (org-overlay-display org-read-date-overlay txt 'secondary-selection)))) 15161 (org-overlay-display org-read-date-overlay txt 'secondary-selection)))))
15163 15162
15164(defun org-read-date-analyze (ans org-def org-defdecode) 15163(defun org-read-date-analyze (ans org-def org-defdecode)
15165 "Analyze the combined answer of the date prompt." 15164 "Analyze the combined answer of the date prompt."
@@ -17969,28 +17968,34 @@ See the individual commands for more information."
17969 17968
17970(defun org-shiftmetaleft () 17969(defun org-shiftmetaleft ()
17971 "Promote subtree or delete table column. 17970 "Promote subtree or delete table column.
17972Calls `org-promote-subtree', `org-outdent-item', 17971Calls `org-promote-subtree', `org-outdent-item-tree', or
17973or `org-table-delete-column', depending on context. 17972`org-table-delete-column', depending on context. See the
17974See the individual commands for more information." 17973individual commands for more information."
17975 (interactive) 17974 (interactive)
17976 (cond 17975 (cond
17977 ((run-hook-with-args-until-success 'org-shiftmetaleft-hook)) 17976 ((run-hook-with-args-until-success 'org-shiftmetaleft-hook))
17978 ((org-at-table-p) (call-interactively 'org-table-delete-column)) 17977 ((org-at-table-p) (call-interactively 'org-table-delete-column))
17979 ((org-at-heading-p) (call-interactively 'org-promote-subtree)) 17978 ((org-at-heading-p) (call-interactively 'org-promote-subtree))
17980 ((org-at-item-p) (call-interactively 'org-outdent-item-tree)) 17979 ((if (not (org-region-active-p)) (org-at-item-p)
17980 (save-excursion (goto-char (region-beginning))
17981 (org-at-item-p)))
17982 (call-interactively 'org-outdent-item-tree))
17981 (t (org-modifier-cursor-error)))) 17983 (t (org-modifier-cursor-error))))
17982 17984
17983(defun org-shiftmetaright () 17985(defun org-shiftmetaright ()
17984 "Demote subtree or insert table column. 17986 "Demote subtree or insert table column.
17985Calls `org-demote-subtree', `org-indent-item', 17987Calls `org-demote-subtree', `org-indent-item-tree', or
17986or `org-table-insert-column', depending on context. 17988`org-table-insert-column', depending on context. See the
17987See the individual commands for more information." 17989individual commands for more information."
17988 (interactive) 17990 (interactive)
17989 (cond 17991 (cond
17990 ((run-hook-with-args-until-success 'org-shiftmetaright-hook)) 17992 ((run-hook-with-args-until-success 'org-shiftmetaright-hook))
17991 ((org-at-table-p) (call-interactively 'org-table-insert-column)) 17993 ((org-at-table-p) (call-interactively 'org-table-insert-column))
17992 ((org-at-heading-p) (call-interactively 'org-demote-subtree)) 17994 ((org-at-heading-p) (call-interactively 'org-demote-subtree))
17993 ((org-at-item-p) (call-interactively 'org-indent-item-tree)) 17995 ((if (not (org-region-active-p)) (org-at-item-p)
17996 (save-excursion (goto-char (region-beginning))
17997 (org-at-item-p)))
17998 (call-interactively 'org-indent-item-tree))
17994 (t (org-modifier-cursor-error)))) 17999 (t (org-modifier-cursor-error))))
17995 18000
17996(defun org-shiftmetaup (&optional arg) 18001(defun org-shiftmetaup (&optional arg)
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 9f9551cc5d8..0cc5de90573 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -603,6 +603,8 @@ NOARG must be t when this macro is used outside `gud-def'"
603 (set (make-local-variable 'gud-marker-filter) #'gud-gdb-marker-filter)) 603 (set (make-local-variable 'gud-marker-filter) #'gud-gdb-marker-filter))
604 (funcall filter proc string)))) 604 (funcall filter proc string))))
605 605
606(defvar gdb-control-level 0)
607
606;;;###autoload 608;;;###autoload
607(defun gdb (command-line) 609(defun gdb (command-line)
608 "Run gdb on program FILE in buffer *gud-FILE*. 610 "Run gdb on program FILE in buffer *gud-FILE*.
@@ -677,6 +679,7 @@ detailed description of this mode.
677 (set-process-filter proc #'gdb--check-interpreter)) 679 (set-process-filter proc #'gdb--check-interpreter))
678 680
679 (set (make-local-variable 'gud-minor-mode) 'gdbmi) 681 (set (make-local-variable 'gud-minor-mode) 'gdbmi)
682 (set (make-local-variable 'gdb-control-level) 0)
680 (setq comint-input-sender 'gdb-send) 683 (setq comint-input-sender 'gdb-send)
681 (when (ring-empty-p comint-input-ring) ; cf shell-mode 684 (when (ring-empty-p comint-input-ring) ; cf shell-mode
682 (let ((hfile (expand-file-name (or (getenv "GDBHISTFILE") 685 (let ((hfile (expand-file-name (or (getenv "GDBHISTFILE")
@@ -1705,6 +1708,16 @@ static char *magick[] = {
1705 :group 'gdb) 1708 :group 'gdb)
1706 1709
1707 1710
1711(defvar gdb-control-commands-regexp
1712 (concat
1713 "^\\("
1714 "commands\\|if\\|while\\|define\\|document\\|python\\|"
1715 "while-stepping\\|stepping\\|ws\\|actions"
1716 "\\)\\([[:blank:]]+.*\\)?$")
1717 "Regexp matching GDB commands that enter a recursive reading loop.
1718As long as GDB is in the recursive reading loop, it does not expect
1719commands to be prefixed by \"-interpreter-exec console\".")
1720
1708(defun gdb-send (proc string) 1721(defun gdb-send (proc string)
1709 "A comint send filter for gdb." 1722 "A comint send filter for gdb."
1710 (with-current-buffer gud-comint-buffer 1723 (with-current-buffer gud-comint-buffer
@@ -1714,11 +1727,15 @@ static char *magick[] = {
1714 (if (not (string= "" string)) 1727 (if (not (string= "" string))
1715 (setq gdb-last-command string) 1728 (setq gdb-last-command string)
1716 (if gdb-last-command (setq string gdb-last-command))) 1729 (if gdb-last-command (setq string gdb-last-command)))
1717 (if (string-match "^-" string) 1730 (if (or (string-match "^-" string)
1718 ;; MI command 1731 (> gdb-control-level 0))
1732 ;; Either MI command or we are feeding GDB's recursive reading loop.
1719 (progn 1733 (progn
1720 (setq gdb-first-done-or-error t) 1734 (setq gdb-first-done-or-error t)
1721 (process-send-string proc (concat string "\n"))) 1735 (process-send-string proc (concat string "\n"))
1736 (if (and (string-match "^end$" string)
1737 (> gdb-control-level 0))
1738 (setq gdb-control-level (1- gdb-control-level))))
1722 ;; CLI command 1739 ;; CLI command
1723 (if (string-match "\\\\$" string) 1740 (if (string-match "\\\\$" string)
1724 (setq gdb-continuation (concat gdb-continuation string "\n")) 1741 (setq gdb-continuation (concat gdb-continuation string "\n"))
@@ -1729,7 +1746,12 @@ static char *magick[] = {
1729 (if gdb-enable-debug 1746 (if gdb-enable-debug
1730 (push (cons 'mi-send to-send) gdb-debug-log)) 1747 (push (cons 'mi-send to-send) gdb-debug-log))
1731 (process-send-string proc to-send)) 1748 (process-send-string proc to-send))
1732 (setq gdb-continuation nil)))) 1749 (if (and (string-match "^end$" string)
1750 (> gdb-control-level 0))
1751 (setq gdb-control-level (1- gdb-control-level)))
1752 (setq gdb-continuation nil)))
1753 (if (string-match gdb-control-commands-regexp string)
1754 (setq gdb-control-level (1+ gdb-control-level))))
1733 1755
1734(defun gdb-mi-quote (string) 1756(defun gdb-mi-quote (string)
1735 "Return STRING quoted properly as an MI argument. 1757 "Return STRING quoted properly as an MI argument.
diff --git a/lisp/progmodes/which-func.el b/lisp/progmodes/which-func.el
index cdaeadde906..d57a3128a16 100644
--- a/lisp/progmodes/which-func.el
+++ b/lisp/progmodes/which-func.el
@@ -179,7 +179,9 @@ and you want to simplify them for the mode line
179(defvar which-func-table (make-hash-table :test 'eq :weakness 'key)) 179(defvar which-func-table (make-hash-table :test 'eq :weakness 'key))
180 180
181(defconst which-func-current 181(defconst which-func-current
182 '(:eval (gethash (selected-window) which-func-table which-func-unknown))) 182 '(:eval (replace-regexp-in-string
183 "%" "%%"
184 (gethash (selected-window) which-func-table which-func-unknown))))
183;;;###autoload (put 'which-func-current 'risky-local-variable t) 185;;;###autoload (put 'which-func-current 'risky-local-variable t)
184 186
185(defvar which-func-mode nil 187(defvar which-func-mode nil
diff --git a/lisp/select.el b/lisp/select.el
index 0260eba4682..3948fcc5456 100644
--- a/lisp/select.el
+++ b/lisp/select.el
@@ -213,30 +213,25 @@ two markers or an overlay. Otherwise, it is nil."
213(defun xselect--int-to-cons (n) 213(defun xselect--int-to-cons (n)
214 (cons (ash n -16) (logand n 65535))) 214 (cons (ash n -16) (logand n 65535)))
215 215
216(defun xselect-convert-to-string (_selection type value) 216(defun xselect--encode-string (type str &optional can-modify)
217 (let (str coding) 217 (when str
218 ;; Get the actual string from VALUE. 218 ;; If TYPE is nil, this is a local request; return STR as-is.
219 (cond ((stringp value) 219 (if (null type)
220 (setq str value)) 220 str
221 ((setq value (xselect--selection-bounds value)) 221 ;; Otherwise, encode STR.
222 (with-current-buffer (nth 2 value) 222 (let ((coding (or next-selection-coding-system
223 (setq str (buffer-substring (nth 0 value) 223 selection-coding-system)))
224 (nth 1 value))))))
225 (when str
226 ;; If TYPE is nil, this is a local request, thus return STR as
227 ;; is. Otherwise, encode STR.
228 (if (not type)
229 str
230 (setq coding (or next-selection-coding-system selection-coding-system))
231 (if coding 224 (if coding
232 (setq coding (coding-system-base coding))) 225 (setq coding (coding-system-base coding)))
233 (let ((inhibit-read-only t)) 226 (let ((inhibit-read-only t))
234 ;; Suppress producing escape sequences for compositions. 227 ;; Suppress producing escape sequences for compositions.
228 ;; But avoid modifying the string if it's a buffer name etc.
229 (unless can-modify (setq str (substring str 0)))
235 (remove-text-properties 0 (length str) '(composition nil) str) 230 (remove-text-properties 0 (length str) '(composition nil) str)
231 ;; TEXT is a polymorphic target. Select the actual type
232 ;; from `UTF8_STRING', `COMPOUND_TEXT', `STRING', and
233 ;; `C_STRING'.
236 (if (eq type 'TEXT) 234 (if (eq type 'TEXT)
237 ;; TEXT is a polymorphic target. We must select the
238 ;; actual type from `UTF8_STRING', `COMPOUND_TEXT',
239 ;; `STRING', and `C_STRING'.
240 (if (not (multibyte-string-p str)) 235 (if (not (multibyte-string-p str))
241 (setq type 'C_STRING) 236 (setq type 'C_STRING)
242 (let (non-latin-1 non-unicode eight-bit) 237 (let (non-latin-1 non-unicode eight-bit)
@@ -279,6 +274,14 @@ two markers or an overlay. Otherwise, it is nil."
279 (setq next-selection-coding-system nil) 274 (setq next-selection-coding-system nil)
280 (cons type str)))) 275 (cons type str))))
281 276
277(defun xselect-convert-to-string (_selection type value)
278 (let ((str (cond ((stringp value) value)
279 ((setq value (xselect--selection-bounds value))
280 (with-current-buffer (nth 2 value)
281 (buffer-substring (nth 0 value)
282 (nth 1 value)))))))
283 (xselect--encode-string type str t)))
284
282(defun xselect-convert-to-length (_selection _type value) 285(defun xselect-convert-to-length (_selection _type value)
283 (let ((len (cond ((stringp value) 286 (let ((len (cond ((stringp value)
284 (length value)) 287 (length value))
@@ -311,7 +314,7 @@ two markers or an overlay. Otherwise, it is nil."
311 314
312(defun xselect-convert-to-filename (_selection _type value) 315(defun xselect-convert-to-filename (_selection _type value)
313 (when (setq value (xselect--selection-bounds value)) 316 (when (setq value (xselect--selection-bounds value))
314 (buffer-file-name (nth 2 value)))) 317 (xselect--encode-string 'TEXT (buffer-file-name (nth 2 value)))))
315 318
316(defun xselect-convert-to-charpos (_selection _type value) 319(defun xselect-convert-to-charpos (_selection _type value)
317 (when (setq value (xselect--selection-bounds value)) 320 (when (setq value (xselect--selection-bounds value))
@@ -337,13 +340,13 @@ two markers or an overlay. Otherwise, it is nil."
337 (xselect--int-to-cons (max beg end)))))))) 340 (xselect--int-to-cons (max beg end))))))))
338 341
339(defun xselect-convert-to-os (_selection _type _size) 342(defun xselect-convert-to-os (_selection _type _size)
340 (symbol-name system-type)) 343 (xselect--encode-string 'TEXT (symbol-name system-type)))
341 344
342(defun xselect-convert-to-host (_selection _type _size) 345(defun xselect-convert-to-host (_selection _type _size)
343 (system-name)) 346 (xselect--encode-string 'TEXT (system-name)))
344 347
345(defun xselect-convert-to-user (_selection _type _size) 348(defun xselect-convert-to-user (_selection _type _size)
346 (user-full-name)) 349 (xselect--encode-string 'TEXT (user-full-name)))
347 350
348(defun xselect-convert-to-class (_selection _type _size) 351(defun xselect-convert-to-class (_selection _type _size)
349 "Convert selection to class. 352 "Convert selection to class.
diff --git a/lisp/simple.el b/lisp/simple.el
index 67f6e4eedf7..55f7d1261ee 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -817,7 +817,7 @@ instead of deleted."
817 :type '(choice (const :tag "Delete active region" t) 817 :type '(choice (const :tag "Delete active region" t)
818 (const :tag "Kill active region" kill) 818 (const :tag "Kill active region" kill)
819 (const :tag "Do ordinary deletion" nil)) 819 (const :tag "Do ordinary deletion" nil))
820 :group 'editing 820 :group 'killing
821 :version "24.1") 821 :version "24.1")
822 822
823(defun delete-backward-char (n &optional killflag) 823(defun delete-backward-char (n &optional killflag)
diff --git a/lisp/startup.el b/lisp/startup.el
index 4a8af55af2f..d6e73023699 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -41,7 +41,7 @@
41(defcustom initial-buffer-choice nil 41(defcustom initial-buffer-choice nil
42 "Buffer to show after starting Emacs. 42 "Buffer to show after starting Emacs.
43If the value is nil and `inhibit-startup-screen' is nil, show the 43If the value is nil and `inhibit-startup-screen' is nil, show the
44startup screen. If the value is string, visit the specified file 44startup screen. If the value is a string, visit the specified file
45or directory using `find-file'. If t, open the `*scratch*' 45or directory using `find-file'. If t, open the `*scratch*'
46buffer." 46buffer."
47 :type '(choice 47 :type '(choice
diff --git a/lisp/subr.el b/lisp/subr.el
index 2404f6a56d2..b548f82ca5a 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2023,7 +2023,10 @@ some sort of escape sequence, the ambiguity is resolved via `read-key-delay'."
2023 (let ((map (make-sparse-keymap))) 2023 (let ((map (make-sparse-keymap)))
2024 ;; Don't hide the menu-bar and tool-bar entries. 2024 ;; Don't hide the menu-bar and tool-bar entries.
2025 (define-key map [menu-bar] (lookup-key global-map [menu-bar])) 2025 (define-key map [menu-bar] (lookup-key global-map [menu-bar]))
2026 (define-key map [tool-bar] (lookup-key global-map [tool-bar])) 2026 (define-key map [tool-bar]
2027 ;; This hack avoids evaluating the :filter (Bug#9922).
2028 (or (cdr (assq 'tool-bar global-map))
2029 (lookup-key global-map [tool-bar])))
2027 map)) 2030 map))
2028 (aref (catch 'read-key (read-key-sequence-vector prompt nil t)) 0)) 2031 (aref (catch 'read-key (read-key-sequence-vector prompt nil t)) 0))
2029 (cancel-timer timer) 2032 (cancel-timer timer)
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index c185c4e8fab..ebaec2494ac 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -220,7 +220,7 @@ matching the resulting Git log output, and KEYWORDS is a list of
220 (let ((diff (vc-git--run-command-string 220 (let ((diff (vc-git--run-command-string
221 file "diff-index" "-p" "--raw" "-z" "HEAD" "--"))) 221 file "diff-index" "-p" "--raw" "-z" "HEAD" "--")))
222 (if (and diff 222 (if (and diff
223 (string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0\\(.\\)?" 223 (string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0\\(.*\n.\\)?"
224 diff)) 224 diff))
225 (let ((diff-letter (match-string 1 diff))) 225 (let ((diff-letter (match-string 1 diff)))
226 (if (not (match-beginning 2)) 226 (if (not (match-beginning 2))
diff --git a/lisp/window.el b/lisp/window.el
index b8f1bf3456d..d57bd4e2300 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -1482,12 +1482,24 @@ edge of WINDOW consider using `adjust-window-trailing-edge'
1482instead." 1482instead."
1483 (setq window (window-normalize-window window)) 1483 (setq window (window-normalize-window window))
1484 (let* ((frame (window-frame window)) 1484 (let* ((frame (window-frame window))
1485 (minibuffer-window (minibuffer-window frame))
1485 sibling) 1486 sibling)
1486 (cond 1487 (cond
1487 ((eq window (frame-root-window frame)) 1488 ((eq window (frame-root-window frame))
1488 (error "Cannot resize the root window of a frame")) 1489 (error "Cannot resize the root window of a frame"))
1489 ((window-minibuffer-p window) 1490 ((window-minibuffer-p window)
1490 (window--resize-mini-window window delta)) 1491 (if horizontal
1492 (error "Cannot resize minibuffer window horizontally")
1493 (window--resize-mini-window window delta)))
1494 ((and (not horizontal)
1495 (window-full-height-p window)
1496 (eq (window-frame minibuffer-window) frame)
1497 (or (not resize-mini-windows)
1498 (eq minibuffer-window (active-minibuffer-window))))
1499 ;; If WINDOW is full height and either `resize-mini-windows' is
1500 ;; nil or the minibuffer window is active, resize the minibuffer
1501 ;; window.
1502 (window--resize-mini-window minibuffer-window (- delta)))
1491 ((window--resizable-p window delta horizontal ignore) 1503 ((window--resizable-p window delta horizontal ignore)
1492 (window--resize-reset frame horizontal) 1504 (window--resize-reset frame horizontal)
1493 (window--resize-this-window window delta horizontal ignore t) 1505 (window--resize-this-window window delta horizontal ignore t)
@@ -2002,17 +2014,25 @@ right. If DELTA is less than zero, move the edge upwards or to
2002the left. If the edge can't be moved by DELTA lines or columns, 2014the left. If the edge can't be moved by DELTA lines or columns,
2003move it as far as possible in the desired direction." 2015move it as far as possible in the desired direction."
2004 (setq window (window-normalize-window window)) 2016 (setq window (window-normalize-window window))
2005 (let ((frame (window-frame window)) 2017 (let* ((frame (window-frame window))
2006 (right window) 2018 (minibuffer-window (minibuffer-window frame))
2007 left this-delta min-delta max-delta) 2019 (right window)
2020 left this-delta min-delta max-delta)
2008 ;; Find the edge we want to move. 2021 ;; Find the edge we want to move.
2009 (while (and (or (not (window-combined-p right horizontal)) 2022 (while (and (or (not (window-combined-p right horizontal))
2010 (not (window-right right))) 2023 (not (window-right right)))
2011 (setq right (window-parent right)))) 2024 (setq right (window-parent right))))
2012 (cond 2025 (cond
2013 ((and (not right) (not horizontal) (not resize-mini-windows) 2026 ((and (not right) (not horizontal)
2014 (eq (window-frame (minibuffer-window frame)) frame)) 2027 ;; Resize the minibuffer window if it's on the same frame as
2015 (window--resize-mini-window (minibuffer-window frame) (- delta))) 2028 ;; and immediately below WINDOW and it's either active or
2029 ;; `resize-mini-windows' is nil.
2030 (eq (window-frame minibuffer-window) frame)
2031 (= (nth 1 (window-edges minibuffer-window))
2032 (nth 3 (window-edges window)))
2033 (or (not resize-mini-windows)
2034 (eq minibuffer-window (active-minibuffer-window))))
2035 (window--resize-mini-window minibuffer-window (- delta)))
2016 ((or (not (setq left right)) (not (setq right (window-right right)))) 2036 ((or (not (setq left right)) (not (setq right (window-right right))))
2017 (if horizontal 2037 (if horizontal
2018 (error "No window on the right of this one") 2038 (error "No window on the right of this one")
@@ -2109,18 +2129,30 @@ make selected window wider by DELTA columns. If DELTA is
2109negative, shrink selected window by -DELTA lines or columns. 2129negative, shrink selected window by -DELTA lines or columns.
2110Return nil." 2130Return nil."
2111 (interactive "p") 2131 (interactive "p")
2112 (cond 2132 (let ((minibuffer-window (minibuffer-window)))
2113 ((zerop delta)) 2133 (cond
2114 ((window-size-fixed-p nil horizontal) 2134 ((zerop delta))
2115 (error "Selected window has fixed size")) 2135 ((window-size-fixed-p nil horizontal)
2116 ((window--resizable-p nil delta horizontal) 2136 (error "Selected window has fixed size"))
2117 (window-resize nil delta horizontal)) 2137 ((window-minibuffer-p)
2118 (t 2138 (if horizontal
2119 (window-resize 2139 (error "Cannot resize minibuffer window horizontally")
2120 nil (if (> delta 0) 2140 (window--resize-mini-window (selected-window) delta)))
2121 (window-max-delta nil horizontal) 2141 ((and (not horizontal)
2122 (- (window-min-delta nil horizontal))) 2142 (window-full-height-p)
2123 horizontal)))) 2143 (eq (window-frame minibuffer-window) (selected-frame))
2144 (not resize-mini-windows))
2145 ;; If the selected window is full height and `resize-mini-windows'
2146 ;; is nil, resize the minibuffer window.
2147 (window--resize-mini-window minibuffer-window (- delta)))
2148 ((window--resizable-p nil delta horizontal)
2149 (window-resize nil delta horizontal))
2150 (t
2151 (window-resize
2152 nil (if (> delta 0)
2153 (window-max-delta nil horizontal)
2154 (- (window-min-delta nil horizontal)))
2155 horizontal)))))
2124 2156
2125(defun shrink-window (delta &optional horizontal) 2157(defun shrink-window (delta &optional horizontal)
2126 "Make the selected window DELTA lines smaller. 2158 "Make the selected window DELTA lines smaller.
@@ -2131,18 +2163,30 @@ negative, enlarge selected window by -DELTA lines or columns.
2131Also see the `window-min-height' variable. 2163Also see the `window-min-height' variable.
2132Return nil." 2164Return nil."
2133 (interactive "p") 2165 (interactive "p")
2134 (cond 2166 (let ((minibuffer-window (minibuffer-window)))
2135 ((zerop delta)) 2167 (cond
2136 ((window-size-fixed-p nil horizontal) 2168 ((zerop delta))
2137 (error "Selected window has fixed size")) 2169 ((window-size-fixed-p nil horizontal)
2138 ((window--resizable-p nil (- delta) horizontal) 2170 (error "Selected window has fixed size"))
2139 (window-resize nil (- delta) horizontal)) 2171 ((window-minibuffer-p)
2140 (t 2172 (if horizontal
2141 (window-resize 2173 (error "Cannot resize minibuffer window horizontally")
2142 nil (if (> delta 0) 2174 (window--resize-mini-window (selected-window) (- delta))))
2143 (- (window-min-delta nil horizontal)) 2175 ((and (not horizontal)
2144 (window-max-delta nil horizontal)) 2176 (window-full-height-p)
2145 horizontal)))) 2177 (eq (window-frame minibuffer-window) (selected-frame))
2178 (not resize-mini-windows))
2179 ;; If the selected window is full height and `resize-mini-windows'
2180 ;; is nil, resize the minibuffer window.
2181 (window--resize-mini-window minibuffer-window delta))
2182 ((window--resizable-p nil (- delta) horizontal)
2183 (window-resize nil (- delta) horizontal))
2184 (t
2185 (window-resize
2186 nil (if (> delta 0)
2187 (- (window-min-delta nil horizontal))
2188 (window-max-delta nil horizontal))
2189 horizontal)))))
2146 2190
2147(defun maximize-window (&optional window) 2191(defun maximize-window (&optional window)
2148 "Maximize WINDOW. 2192 "Maximize WINDOW.
diff --git a/lisp/xml.el b/lisp/xml.el
index 39a8da0f337..cb56f023af0 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -323,7 +323,8 @@ If PARSE-NS is non-nil, then QNAMES are expanded."
323 (cond 323 (cond
324 ((null result) 324 ((null result)
325 ;; Not looking at an xml start tag. 325 ;; Not looking at an xml start tag.
326 (forward-char 1)) 326 (unless (eobp)
327 (forward-char 1)))
327 ((and xml (not xml-sub-parser)) 328 ((and xml (not xml-sub-parser))
328 ;; Translation of rule [1] of XML specifications 329 ;; Translation of rule [1] of XML specifications
329 (error "XML: (Not Well-Formed) Only one root tag allowed")) 330 (error "XML: (Not Well-Formed) Only one root tag allowed"))
@@ -422,7 +423,8 @@ Returns one of:
422 ((looking-at "<!--") 423 ((looking-at "<!--")
423 (search-forward "-->") 424 (search-forward "-->")
424 (skip-syntax-forward " ") 425 (skip-syntax-forward " ")
425 (xml-parse-tag parse-dtd xml-ns)) 426 (unless (eobp)
427 (xml-parse-tag parse-dtd xml-ns)))
426 ;; end tag 428 ;; end tag
427 ((looking-at "</") 429 ((looking-at "</")
428 '()) 430 '())