aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2012-03-22 13:23:16 +0900
committerKenichi Handa2012-03-22 13:23:16 +0900
commit0e85d2cf5498f18f902fab081634316f166589a6 (patch)
tree54406034b9b753f3c5f77cc7c8398cebb02bd24b
parenta640d29ae4a121bb90be8d380d08c6a91e90294e (diff)
parent396750161e54b486a1d68a5ecb177bc75f24cbb2 (diff)
downloademacs-0e85d2cf5498f18f902fab081634316f166589a6.tar.gz
emacs-0e85d2cf5498f18f902fab081634316f166589a6.zip
merge trunk
-rw-r--r--lisp/ChangeLog44
-rw-r--r--lisp/ChangeLog.142
-rw-r--r--lisp/ChangeLog.154
-rw-r--r--lisp/files.el6
-rw-r--r--lisp/ido.el25
-rw-r--r--lisp/info.el4
-rw-r--r--lisp/outline.el1
-rw-r--r--lisp/progmodes/etags.el9
-rw-r--r--lisp/progmodes/hideshow.el1
-rw-r--r--lisp/progmodes/ruby-mode.el11
-rw-r--r--lisp/window.el11
-rw-r--r--src/ChangeLog.112
12 files changed, 89 insertions, 31 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index d87c52a3e04..8601fb78b75 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -4,6 +4,50 @@
4 change. To avoid unwanted bidi reordering, use 4 change. To avoid unwanted bidi reordering, use
5 bidi-string-mark-left-to-right instead of inserting LRO and PDF. 5 bidi-string-mark-left-to-right instead of inserting LRO and PDF.
6 6
72012-03-21 Dmitry Gutov <dgutov@yandex.ru>
8
9 * progmodes/ruby-mode.el: Don't confuse "end:" for "end" (bug#10786).
10 (ruby-block-end-re, ruby-delimiter, ruby-parse-partial)
11 (ruby-beginning-of-indent): Be more careful with the difference
12 between word-boundary and symbol boundary.
13 (ruby-mode-syntax-table): Make : a symbol constituent.
14
152012-03-21 Andreas Politz <politza@fh-trier.de>
16
17 * outline.el (outline-flag-region): Evaporate overlays (bug#10789).
18
192012-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
20
21 * progmodes/etags.el (tags-completion-at-point-function):
22 Improve last fix.
23
24 * files.el (move-file-to-trash): Files aren't regexps (bug#11055).
25
262012-03-21 Sam Steingold <sds@gnu.org>
27
28 * progmodes/etags.el (tags-completion-at-point-function):
29 Avoid the error when point is inside the pattern.
30
312012-03-21 John Yates <john@yates-sheets.org> (tiny change)
32
33 * progmodes/hideshow.el (hs-inside-comment-p): Fix hiding of first
34 line (Bug#10855).
35
362012-03-21 Drew Adams <drew.adams@oracle.com>
37
38 * info.el (Info-menu): Handle string value of FORK arg (Bug#10858).
39
402012-03-21 Anmol Khirbat <anmol@khirbat.net> (tiny change)
41
42 * ido.el (ido-set-current-directory, ido-read-internal)
43 (ido-choose-completion-string, ido-completion-help): Handle nil
44 value of ido-completion-buffer (Bug#11008).
45
462012-03-21 Sam Steingold <sds@gnu.org>
47
48 * window.el (switch-to-prev-buffer): Do not switch to a visible
49 window previous buffer, just like with the frame previous buffers.
50
72012-03-21 Chong Yidong <cyd@gnu.org> 512012-03-21 Chong Yidong <cyd@gnu.org>
8 52
9 * faces.el (make-face, make-empty-face, copy-face): 53 * faces.el (make-face, make-empty-face, copy-face):
diff --git a/lisp/ChangeLog.14 b/lisp/ChangeLog.14
index 254e2863889..be50fc46672 100644
--- a/lisp/ChangeLog.14
+++ b/lisp/ChangeLog.14
@@ -7114,7 +7114,7 @@
7114 vc-default-mark-resolved. 7114 vc-default-mark-resolved.
7115 (vc-default-mark-resolved): Change to an alias for ignore. 7115 (vc-default-mark-resolved): Change to an alias for ignore.
7116 7116
71172008-09-24 Andreas Politz <politza@fh-trier.de> (tiny change) 71172008-09-24 Andreas Politz <politza@fh-trier.de>
7118 7118
7119 * term.el (term-emulate-terminal): Encode input string before 7119 * term.el (term-emulate-terminal): Encode input string before
7120 checking its length. 7120 checking its length.
diff --git a/lisp/ChangeLog.15 b/lisp/ChangeLog.15
index bf7a24a5b67..e3890b80ec4 100644
--- a/lisp/ChangeLog.15
+++ b/lisp/ChangeLog.15
@@ -14934,7 +14934,7 @@
14934 * woman.el (woman-make-bufname): Handle man-pages with "." in the 14934 * woman.el (woman-make-bufname): Handle man-pages with "." in the
14935 name. (Bug#5038) 14935 name. (Bug#5038)
14936 14936
149372009-12-02 Andreas Politz <politza@fh-trier.de> (tiny change) 149372009-12-02 Andreas Politz <politza@fh-trier.de>
14938 14938
14939 * ido.el (ido-file-internal): Handle filenames at point that do 14939 * ido.el (ido-file-internal): Handle filenames at point that do
14940 not have a directory part. (Bug#5049) 14940 not have a directory part. (Bug#5049)
@@ -19488,7 +19488,7 @@
19488 (elint-log-message): Add optional argument. Use elint-output. 19488 (elint-log-message): Add optional argument. Use elint-output.
19489 (elint-set-mode-line): New function. 19489 (elint-set-mode-line): New function.
19490 19490
194912009-09-12 Andreas Politz <politza@fh-trier.de> (tiny change) 194912009-09-12 Andreas Politz <politza@fh-trier.de>
19492 19492
19493 * emacs-lisp/elp.el (elp-not-profilable): Add more 19493 * emacs-lisp/elp.el (elp-not-profilable): Add more
19494 functions (Bug#4233). 19494 functions (Bug#4233).
diff --git a/lisp/files.el b/lisp/files.el
index cde15c5d0b1..8c61c288be9 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -6563,7 +6563,7 @@ Otherwise, trash FILENAME using the freedesktop.org conventions,
6563 (new-fn (expand-file-name (file-name-nondirectory fn) 6563 (new-fn (expand-file-name (file-name-nondirectory fn)
6564 trash-dir))) 6564 trash-dir)))
6565 ;; We can't trash a parent directory of trash-directory. 6565 ;; We can't trash a parent directory of trash-directory.
6566 (if (string-match fn trash-dir) 6566 (if (string-prefix-p fn trash-dir)
6567 (error "Trash directory `%s' is a subdirectory of `%s'" 6567 (error "Trash directory `%s' is a subdirectory of `%s'"
6568 trash-dir filename)) 6568 trash-dir filename))
6569 (unless (file-directory-p trash-dir) 6569 (unless (file-directory-p trash-dir)
@@ -6595,10 +6595,10 @@ Otherwise, trash FILENAME using the freedesktop.org conventions,
6595 (file-name-directory fn))) 6595 (file-name-directory fn)))
6596 (error "Cannot move %s to trash: Permission denied" filename)) 6596 (error "Cannot move %s to trash: Permission denied" filename))
6597 ;; The trashed file cannot be the trash dir or its parent. 6597 ;; The trashed file cannot be the trash dir or its parent.
6598 (if (string-match fn trash-files-dir) 6598 (if (string-prefix-p fn trash-files-dir)
6599 (error "The trash directory %s is a subdirectory of %s" 6599 (error "The trash directory %s is a subdirectory of %s"
6600 trash-files-dir filename)) 6600 trash-files-dir filename))
6601 (if (string-match fn trash-info-dir) 6601 (if (string-prefix-p fn trash-info-dir)
6602 (error "The trash directory %s is a subdirectory of %s" 6602 (error "The trash directory %s is a subdirectory of %s"
6603 trash-info-dir filename)) 6603 trash-info-dir filename))
6604 6604
diff --git a/lisp/ido.el b/lisp/ido.el
index 5813aff0f21..dcaa8f373ce 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1722,8 +1722,9 @@ This function also adds a hook to the minibuffer."
1722 (unless (and ido-enable-tramp-completion 1722 (unless (and ido-enable-tramp-completion
1723 (string-match "\\`/[^/]*@\\'" dir)) 1723 (string-match "\\`/[^/]*@\\'" dir))
1724 (setq dir (ido-final-slash dir t)))) 1724 (setq dir (ido-final-slash dir t))))
1725 (if (get-buffer ido-completion-buffer) 1725 (and ido-completion-buffer
1726 (kill-buffer ido-completion-buffer)) 1726 (get-buffer ido-completion-buffer)
1727 (kill-buffer ido-completion-buffer))
1727 (cond 1728 (cond
1728 ((equal dir ido-current-directory) 1729 ((equal dir ido-current-directory)
1729 nil) 1730 nil)
@@ -1736,8 +1737,9 @@ This function also adds a hook to the minibuffer."
1736 (t 1737 (t
1737 (ido-trace "cd" dir) 1738 (ido-trace "cd" dir)
1738 (setq ido-current-directory dir) 1739 (setq ido-current-directory dir)
1739 (if (get-buffer ido-completion-buffer) 1740 (and ido-completion-buffer
1740 (kill-buffer ido-completion-buffer)) 1741 (get-buffer ido-completion-buffer)
1742 (kill-buffer ido-completion-buffer))
1741 (setq ido-directory-nonreadable (ido-nonreadable-directory-p dir)) 1743 (setq ido-directory-nonreadable (ido-nonreadable-directory-p dir))
1742 (setq ido-directory-too-big (and (not ido-directory-nonreadable) 1744 (setq ido-directory-too-big (and (not ido-directory-nonreadable)
1743 (ido-directory-too-big-p dir))) 1745 (ido-directory-too-big-p dir)))
@@ -1982,8 +1984,9 @@ If INITIAL is non-nil, it specifies the initial input string."
1982 (setq ido-text-init nil)) 1984 (setq ido-text-init nil))
1983 ido-completion-map nil hist)))) 1985 ido-completion-map nil hist))))
1984 (ido-trace "read-from-minibuffer" ido-final-text) 1986 (ido-trace "read-from-minibuffer" ido-final-text)
1985 (if (get-buffer ido-completion-buffer) 1987 (and ido-completion-buffer
1986 (kill-buffer ido-completion-buffer)) 1988 (get-buffer ido-completion-buffer)
1989 (kill-buffer ido-completion-buffer))
1987 1990
1988 (ido-trace "\n_EXIT_" ido-exit) 1991 (ido-trace "\n_EXIT_" ido-exit)
1989 1992
@@ -3837,8 +3840,9 @@ This is to make them appear as if they were \"virtual buffers\"."
3837(defun ido-choose-completion-string (choice &rest ignored) 3840(defun ido-choose-completion-string (choice &rest ignored)
3838 (when (ido-active) 3841 (when (ido-active)
3839 ;; Insert the completion into the buffer where completion was requested. 3842 ;; Insert the completion into the buffer where completion was requested.
3840 (if (get-buffer ido-completion-buffer) 3843 (and ido-completion-buffer
3841 (kill-buffer ido-completion-buffer)) 3844 (get-buffer ido-completion-buffer)
3845 (kill-buffer ido-completion-buffer))
3842 (cond 3846 (cond
3843 ((ido-active t) ;; ido-use-merged-list 3847 ((ido-active t) ;; ido-use-merged-list
3844 (setq ido-current-directory "" 3848 (setq ido-current-directory ""
@@ -3857,7 +3861,8 @@ This is to make them appear as if they were \"virtual buffers\"."
3857 "Show possible completions in a *File Completions* buffer." 3861 "Show possible completions in a *File Completions* buffer."
3858 (interactive) 3862 (interactive)
3859 (setq ido-rescan nil) 3863 (setq ido-rescan nil)
3860 (let ((temp-buf (get-buffer ido-completion-buffer)) 3864 (let ((temp-buf (and ido-completion-buffer
3865 (get-buffer ido-completion-buffer)))
3861 display-it full-list) 3866 display-it full-list)
3862 (if (and (eq last-command this-command) temp-buf) 3867 (if (and (eq last-command this-command) temp-buf)
3863 ;; scroll buffer 3868 ;; scroll buffer
@@ -3876,7 +3881,7 @@ This is to make them appear as if they were \"virtual buffers\"."
3876 (scroll-other-window)) 3881 (scroll-other-window))
3877 (set-buffer buf)) 3882 (set-buffer buf))
3878 (setq display-it t)) 3883 (setq display-it t))
3879 (if display-it 3884 (if (and ido-completion-buffer display-it)
3880 (with-output-to-temp-buffer ido-completion-buffer 3885 (with-output-to-temp-buffer ido-completion-buffer
3881 (let ((completion-list (sort 3886 (let ((completion-list (sort
3882 (cond 3887 (cond
diff --git a/lisp/info.el b/lisp/info.el
index b7e2d1eedbe..042ff158362 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -2594,7 +2594,9 @@ new buffer."
2594 (list item current-prefix-arg)))) 2594 (list item current-prefix-arg))))
2595 ;; there is a problem here in that if several menu items have the same 2595 ;; there is a problem here in that if several menu items have the same
2596 ;; name you can only go to the node of the first with this command. 2596 ;; name you can only go to the node of the first with this command.
2597 (Info-goto-node (Info-extract-menu-item menu-item) (if fork menu-item))) 2597 (Info-goto-node (Info-extract-menu-item menu-item)
2598 (and fork
2599 (if (stringp fork) fork menu-item))))
2598 2600
2599(defun Info-extract-menu-item (menu-item) 2601(defun Info-extract-menu-item (menu-item)
2600 (setq menu-item (regexp-quote menu-item)) 2602 (setq menu-item (regexp-quote menu-item))
diff --git a/lisp/outline.el b/lisp/outline.el
index 15af855ff43..da5519f95eb 100644
--- a/lisp/outline.el
+++ b/lisp/outline.el
@@ -751,6 +751,7 @@ If FLAG is nil then text is shown, while if FLAG is t the text is hidden."
751 ;; very end of the heading, before the newline, so text inserted at FROM 751 ;; very end of the heading, before the newline, so text inserted at FROM
752 ;; belongs to the heading rather than to the entry. 752 ;; belongs to the heading rather than to the entry.
753 (let ((o (make-overlay from to nil 'front-advance))) 753 (let ((o (make-overlay from to nil 'front-advance)))
754 (overlay-put o 'evaporate t)
754 (overlay-put o 'invisible 'outline) 755 (overlay-put o 'invisible 'outline)
755 (overlay-put o 'isearch-open-invisible 756 (overlay-put o 'isearch-open-invisible
756 (or outline-isearch-open-invisible-function 757 (or outline-isearch-open-invisible-function
diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el
index cc5f0fef934..4b337e1c15c 100644
--- a/lisp/progmodes/etags.el
+++ b/lisp/progmodes/etags.el
@@ -809,10 +809,11 @@ If no tags table is loaded, do nothing and return nil."
809 beg) 809 beg)
810 (when pattern 810 (when pattern
811 (save-excursion 811 (save-excursion
812 (search-backward pattern) ;FIXME: will fail if we're inside pattern. 812 (forward-char (1- (length pattern)))
813 (setq beg (point)) 813 (search-backward pattern)
814 (forward-char (length pattern)) 814 (setq beg (point))
815 (list beg (point) (tags-lazy-completion-table) :exclusive 'no)))))) 815 (forward-char (length pattern))
816 (list beg (point) (tags-lazy-completion-table) :exclusive 'no))))))
816 817
817(defun find-tag-tag (string) 818(defun find-tag-tag (string)
818 "Read a tag name, with defaulting and completion." 819 "Read a tag name, with defaulting and completion."
diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el
index 104a8f96727..26db60ddbc2 100644
--- a/lisp/progmodes/hideshow.el
+++ b/lisp/progmodes/hideshow.el
@@ -607,6 +607,7 @@ as cdr."
607 ;; forward comment, and see if we are inside, then extend 607 ;; forward comment, and see if we are inside, then extend
608 ;; forward and backward as long as we have comments 608 ;; forward and backward as long as we have comments
609 (let ((q (point))) 609 (let ((q (point)))
610 (skip-chars-forward "[:blank:]")
610 (when (or (looking-at hs-c-start-regexp) 611 (when (or (looking-at hs-c-start-regexp)
611 (re-search-backward hs-c-start-regexp (point-min) t)) 612 (re-search-backward hs-c-start-regexp (point-min) t))
612 ;; first get to the beginning of this comment... 613 ;; first get to the beginning of this comment...
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index bf264972940..66aa256f947 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -96,7 +96,7 @@
96 (regexp-opt (append ruby-modifier-beg-keywords ruby-block-op-keywords)) 96 (regexp-opt (append ruby-modifier-beg-keywords ruby-block-op-keywords))
97 "Regexp to match hanging block modifiers.") 97 "Regexp to match hanging block modifiers.")
98 98
99(defconst ruby-block-end-re "\\<end\\>") 99(defconst ruby-block-end-re "\\_<end\\_>")
100 100
101(eval-and-compile 101(eval-and-compile
102 (defconst ruby-here-doc-beg-re 102 (defconst ruby-here-doc-beg-re
@@ -115,9 +115,9 @@ This should only be called after matching against `ruby-here-doc-beg-re'."
115 (match-string 6))))) 115 (match-string 6)))))
116 116
117(defconst ruby-delimiter 117(defconst ruby-delimiter
118 (concat "[?$/%(){}#\"'`.:]\\|<<\\|\\[\\|\\]\\|\\<\\(" 118 (concat "[?$/%(){}#\"'`.:]\\|<<\\|\\[\\|\\]\\|\\_<\\("
119 ruby-block-beg-re 119 ruby-block-beg-re
120 "\\)\\>\\|" ruby-block-end-re 120 "\\)\\_>\\|" ruby-block-end-re
121 "\\|^=begin\\|" ruby-here-doc-beg-re)) 121 "\\|^=begin\\|" ruby-here-doc-beg-re))
122 122
123(defconst ruby-negative 123(defconst ruby-negative
@@ -166,6 +166,7 @@ This should only be called after matching against `ruby-here-doc-beg-re'."
166 (modify-syntax-entry ?$ "." table) 166 (modify-syntax-entry ?$ "." table)
167 (modify-syntax-entry ?? "_" table) 167 (modify-syntax-entry ?? "_" table)
168 (modify-syntax-entry ?_ "_" table) 168 (modify-syntax-entry ?_ "_" table)
169 (modify-syntax-entry ?: "_" table)
169 (modify-syntax-entry ?< "." table) 170 (modify-syntax-entry ?< "." table)
170 (modify-syntax-entry ?> "." table) 171 (modify-syntax-entry ?> "." table)
171 (modify-syntax-entry ?& "." table) 172 (modify-syntax-entry ?& "." table)
@@ -565,7 +566,7 @@ and `\\' when preceded by `?'."
565 (setq nest (cons (cons nil pnt) nest)) 566 (setq nest (cons (cons nil pnt) nest))
566 (setq depth (1+ depth)))) 567 (setq depth (1+ depth))))
567 (goto-char (match-end 0))) 568 (goto-char (match-end 0)))
568 ((looking-at (concat "\\<\\(" ruby-block-beg-re "\\)\\>")) 569 ((looking-at (concat "\\_<\\(" ruby-block-beg-re "\\)\\_>"))
569 (and 570 (and
570 (save-match-data 571 (save-match-data
571 (or (not (looking-at (concat "do" ruby-keyword-end-re))) 572 (or (not (looking-at (concat "do" ruby-keyword-end-re)))
@@ -864,7 +865,7 @@ move backward."
864 ;; It seems like it should move to the line where indentation should deepen, 865 ;; It seems like it should move to the line where indentation should deepen,
865 ;; but ruby-indent-beg-re only accounts for whitespace before class, module and def, 866 ;; but ruby-indent-beg-re only accounts for whitespace before class, module and def,
866 ;; so this will only match other block beginners at the beginning of the line. 867 ;; so this will only match other block beginners at the beginning of the line.
867 (and (re-search-backward (concat "^\\(" ruby-indent-beg-re "\\)\\b") nil 'move) 868 (and (re-search-backward (concat "^\\(" ruby-indent-beg-re "\\)\\_>") nil 'move)
868 (beginning-of-line))) 869 (beginning-of-line)))
869 870
870(defun ruby-move-to-block (n) 871(defun ruby-move-to-block (n)
diff --git a/lisp/window.el b/lisp/window.el
index f79041e0e6c..894d113cdc7 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -2600,11 +2600,14 @@ shall not be switched to in future invocations of this command."
2600 (not (setq killed-buffers 2600 (not (setq killed-buffers
2601 (cons new-buffer killed-buffers)))) 2601 (cons new-buffer killed-buffers))))
2602 (not (eq new-buffer old-buffer)) 2602 (not (eq new-buffer old-buffer))
2603 (or bury-or-kill 2603 (or bury-or-kill
2604 (not (memq new-buffer next-buffers)))) 2604 (not (memq new-buffer next-buffers))))
2605 (set-window-buffer-start-and-point 2605 (if (get-buffer-window new-buffer)
2606 window new-buffer (nth 1 entry) (nth 2 entry)) 2606 ;; Try to avoid showing a buffer visible in some other window.
2607 (throw 'found t))) 2607 (setq visible new-buffer)
2608 (set-window-buffer-start-and-point
2609 window new-buffer (nth 1 entry) (nth 2 entry))
2610 (throw 'found t))))
2608 ;; Scan reverted buffer list of WINDOW's frame next, skipping 2611 ;; Scan reverted buffer list of WINDOW's frame next, skipping
2609 ;; entries of next buffers. Note that when we bury or kill a 2612 ;; entries of next buffers. Note that when we bury or kill a
2610 ;; buffer we don't reverse the global buffer list to avoid showing 2613 ;; buffer we don't reverse the global buffer list to avoid showing
diff --git a/src/ChangeLog.11 b/src/ChangeLog.11
index 2e5404779b1..97d5a65281a 100644
--- a/src/ChangeLog.11
+++ b/src/ChangeLog.11
@@ -9627,7 +9627,7 @@
9627 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars 9627 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
9628 on left. 9628 on left.
9629 9629
96302010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change) 96302010-03-13 Andreas Politz <politza@fh-trier.de>
9631 9631
9632 * editfns.c (Fformat): Account for string precision when computing 9632 * editfns.c (Fformat): Account for string precision when computing
9633 field width (Bug#5710). 9633 field width (Bug#5710).