diff options
| author | Eli Zaretskii | 2012-10-17 23:07:59 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2012-10-17 23:07:59 +0200 |
| commit | 8cd879af4a393715c1c7f44a174248e85f7810ab (patch) | |
| tree | f0779e2a9c855ccba82628f6bcda43ef0d800ff3 /lisp | |
| parent | 37a4dabe8aaa51e15cf63e43710ee4b8f35d434b (diff) | |
| parent | a68089e4a4dd41c9b838d82d1d96d971b01398c8 (diff) | |
| download | emacs-8cd879af4a393715c1c7f44a174248e85f7810ab.tar.gz emacs-8cd879af4a393715c1c7f44a174248e85f7810ab.zip | |
Merge from trunk.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 30 | ||||
| -rw-r--r-- | lisp/cedet/ChangeLog | 30 | ||||
| -rw-r--r-- | lisp/cedet/cedet.el | 2 | ||||
| -rw-r--r-- | lisp/cedet/semantic.el | 37 | ||||
| -rw-r--r-- | lisp/cedet/semantic/analyze/complete.el | 33 | ||||
| -rw-r--r-- | lisp/cedet/semantic/complete.el | 5 | ||||
| -rw-r--r-- | lisp/cedet/semantic/senator.el | 3 | ||||
| -rw-r--r-- | lisp/cedet/semantic/wisent/python.el | 27 | ||||
| -rw-r--r-- | lisp/emacs-lisp/byte-run.el | 3 | ||||
| -rw-r--r-- | lisp/erc/ChangeLog | 17 | ||||
| -rw-r--r-- | lisp/erc/erc-backend.el | 2 | ||||
| -rw-r--r-- | lisp/erc/erc.el | 18 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 4 | ||||
| -rw-r--r-- | lisp/gnus/starttls.el | 2 | ||||
| -rw-r--r-- | lisp/replace.el | 8 | ||||
| -rw-r--r-- | lisp/wdired.el | 16 | ||||
| -rw-r--r-- | lisp/window.el | 22 |
17 files changed, 177 insertions, 82 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 68b8a86a2d9..541cea5c7d4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,5 +1,23 @@ | |||
| 1 | 2012-10-17 Michael Heerdegen <michael_heerdegen@web.de> (tiny change) | ||
| 2 | |||
| 3 | * wdired.el (wdired-old-marks): New variable. | ||
| 4 | (wdired-change-to-wdired-mode): Locally set wdired-old-marks. | ||
| 5 | (wdired-do-renames): Move point with renamed file and don't lose | ||
| 6 | mark status (Bug#11795). | ||
| 7 | |||
| 8 | 2012-10-16 Juri Linkov <juri@jurta.org> | ||
| 9 | |||
| 10 | * replace.el (query-replace-help): Mention multi-buffer replacement | ||
| 11 | keys in the Help message. (Bug#12655) | ||
| 12 | |||
| 13 | 2012-10-15 Chong Yidong <cyd@gnu.org> | ||
| 14 | |||
| 15 | * emacs-lisp/byte-run.el (defsubst): Doc fix. | ||
| 16 | |||
| 1 | 2012-10-14 Eli Zaretskii <eliz@gnu.org> | 17 | 2012-10-14 Eli Zaretskii <eliz@gnu.org> |
| 2 | 18 | ||
| 19 | * window.el (display-buffer): Doc fix. | ||
| 20 | |||
| 3 | * progmodes/compile.el (compilation-error-regexp-alist-alist): | 21 | * progmodes/compile.el (compilation-error-regexp-alist-alist): |
| 4 | Adjust the msft regexp to the output of Studio 2010, and move msft | 22 | Adjust the msft regexp to the output of Studio 2010, and move msft |
| 5 | before edg-1. See the discussion on emacs-devel, | 23 | before edg-1. See the discussion on emacs-devel, |
| @@ -597,9 +615,9 @@ | |||
| 597 | * emacs-lisp/eieio-base.el (eieio-persistent-read): New input args | 615 | * emacs-lisp/eieio-base.el (eieio-persistent-read): New input args |
| 598 | specifying the expected class, and whether subclassing is allowed. | 616 | specifying the expected class, and whether subclassing is allowed. |
| 599 | (eieio-persistent-convert-list-to-object): | 617 | (eieio-persistent-convert-list-to-object): |
| 600 | (eieio-persistent-validate/fix-slot-value) | 618 | (eieio-persistent-validate/fix-slot-value) |
| 601 | (eieio-persistent-slot-type-is-class-p): New functions. | 619 | (eieio-persistent-slot-type-is-class-p): New functions. |
| 602 | (eieio-named::slot-missing): Doc fix. | 620 | (eieio-named::slot-missing): Doc fix. |
| 603 | 621 | ||
| 604 | * emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots): | 622 | * emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots): |
| 605 | Stop using unused publd variable. | 623 | Stop using unused publd variable. |
| @@ -2042,7 +2060,7 @@ | |||
| 2042 | 2060 | ||
| 2043 | * ses.el (ses-widen): | 2061 | * ses.el (ses-widen): |
| 2044 | * simple.el (count-words--buffer-message): | 2062 | * simple.el (count-words--buffer-message): |
| 2045 | * net/browse-url.el (browse-url-of-buffer): Use it | 2063 | * net/browse-url.el (browse-url-of-buffer): Use it. |
| 2046 | 2064 | ||
| 2047 | * simple.el (count-words-region): Don't signal an error if there | 2065 | * simple.el (count-words-region): Don't signal an error if there |
| 2048 | is a non-nil prefix arg and the mark is not set. | 2066 | is a non-nil prefix arg and the mark is not set. |
| @@ -16324,7 +16342,7 @@ | |||
| 16324 | 2011-06-22 Leo Liu <sdl.web@gmail.com> | 16342 | 2011-06-22 Leo Liu <sdl.web@gmail.com> |
| 16325 | 16343 | ||
| 16326 | * minibuffer.el (completing-read-function) | 16344 | * minibuffer.el (completing-read-function) |
| 16327 | (completing-read-default): Move from minibuf.c | 16345 | (completing-read-default): Move from minibuf.c. |
| 16328 | 16346 | ||
| 16329 | 2011-06-22 Richard Stallman <rms@gnu.org> | 16347 | 2011-06-22 Richard Stallman <rms@gnu.org> |
| 16330 | 16348 | ||
| @@ -18181,7 +18199,7 @@ | |||
| 18181 | Remove unnecessary and incorrect declarations. | 18199 | Remove unnecessary and incorrect declarations. |
| 18182 | 18200 | ||
| 18183 | * emacs-lisp/check-declare.el (check-declare-scan): | 18201 | * emacs-lisp/check-declare.el (check-declare-scan): |
| 18184 | Handle byte-compile-initial-macro-environment in bytecomp.el | 18202 | Handle byte-compile-initial-macro-environment in bytecomp.el. |
| 18185 | 18203 | ||
| 18186 | 2011-05-05 Stefan Monnier <monnier@iro.umontreal.ca> | 18204 | 2011-05-05 Stefan Monnier <monnier@iro.umontreal.ca> |
| 18187 | 18205 | ||
diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog index 14e8d6c1d64..e89e8ed258b 100644 --- a/lisp/cedet/ChangeLog +++ b/lisp/cedet/ChangeLog | |||
| @@ -1,4 +1,32 @@ | |||
| 1 | 2012-10-08 David Engster <deng@randomsample.de>> | 1 | 2012-10-14 David Engster <deng@randomsample.de> |
| 2 | |||
| 3 | * semantic.el (semantic-error-if-unparsed): New function. Raise | ||
| 4 | error if buffer was not parsed by Semantic (bug #12045). | ||
| 5 | (navigate-menu, edit-menu, cedet-menu-map): Enable Semantic items | ||
| 6 | only if buffer was parsed. Also, replace ':active' with ':enable' | ||
| 7 | where necessary. | ||
| 8 | |||
| 9 | * semantic/wisent/python.el | ||
| 10 | (semantic-python-get-system-include-path): Use | ||
| 11 | `python-shell-internal-send-string' if available to query Python | ||
| 12 | for system paths. | ||
| 13 | |||
| 14 | * semantic/senator.el (senator-next-tag, senator-previous-tag) | ||
| 15 | (senator-go-to-up-reference): Use `semantic-error-if-unparsed'. | ||
| 16 | |||
| 17 | * semantic/complete.el (semantic-complete-jump-local) | ||
| 18 | (semantic-complete-jump, semantic-complete-jump-local-members) | ||
| 19 | (semantic-complete-self-insert): Use `semantic-error-if-unparsed'. | ||
| 20 | (semantic-complete-inline-project): Fix autoload cookie. | ||
| 21 | |||
| 22 | * semantic/analyze/complete.el | ||
| 23 | (semantic-analyze-possible-completions): Check if buffer was | ||
| 24 | parsed. Only raise an error if function was called interactively, | ||
| 25 | otherwise silently return nil. | ||
| 26 | |||
| 27 | * cedet.el (cedet-menu-map): Fix copy&paste typo in menu creation. | ||
| 28 | |||
| 29 | 2012-10-08 David Engster <deng@randomsample.de> | ||
| 2 | 30 | ||
| 3 | * semantic/bovine/el.el: Add `semantic-default-elisp-setup' to | 31 | * semantic/bovine/el.el: Add `semantic-default-elisp-setup' to |
| 4 | `emacs-lisp-mode-hook'. This was accidentally removed during the | 32 | `emacs-lisp-mode-hook'. This was accidentally removed during the |
diff --git a/lisp/cedet/cedet.el b/lisp/cedet/cedet.el index 5c21e4ab538..327a72f9dc7 100644 --- a/lisp/cedet/cedet.el +++ b/lisp/cedet/cedet.el | |||
| @@ -59,7 +59,7 @@ | |||
| 59 | (define-key map [navigate-menu] 'undefined) | 59 | (define-key map [navigate-menu] 'undefined) |
| 60 | (define-key map [semantic-options-separator] 'undefined) | 60 | (define-key map [semantic-options-separator] 'undefined) |
| 61 | (define-key map [global-semantic-highlight-func-mode] 'undefined) | 61 | (define-key map [global-semantic-highlight-func-mode] 'undefined) |
| 62 | (define-key map [global-semantic-highlight-func-mode] 'undefined) | 62 | (define-key map [global-semantic-stickyfunc-mode] 'undefined) |
| 63 | (define-key map [global-semantic-decoration-mode] 'undefined) | 63 | (define-key map [global-semantic-decoration-mode] 'undefined) |
| 64 | (define-key map [global-semantic-idle-completions-mode] 'undefined) | 64 | (define-key map [global-semantic-idle-completions-mode] 'undefined) |
| 65 | (define-key map [global-semantic-idle-summary-mode] 'undefined) | 65 | (define-key map [global-semantic-idle-summary-mode] 'undefined) |
diff --git a/lisp/cedet/semantic.el b/lisp/cedet/semantic.el index e02790cbfa8..373864a43d5 100644 --- a/lisp/cedet/semantic.el +++ b/lisp/cedet/semantic.el | |||
| @@ -319,6 +319,11 @@ a parse of the buffer.") | |||
| 319 | "Return non-nil if the current buffer was set up for parsing." | 319 | "Return non-nil if the current buffer was set up for parsing." |
| 320 | semantic-new-buffer-fcn-was-run) | 320 | semantic-new-buffer-fcn-was-run) |
| 321 | 321 | ||
| 322 | (defsubst semantic-error-if-unparsed () | ||
| 323 | "Raise an error if current buffer was not parsed by Semantic." | ||
| 324 | (unless semantic-new-buffer-fcn-was-run | ||
| 325 | (error "Buffer was not parsed by Semantic."))) | ||
| 326 | |||
| 322 | (defsubst semantic--umatched-syntax-needs-refresh-p () | 327 | (defsubst semantic--umatched-syntax-needs-refresh-p () |
| 323 | "Return non-nil if the unmatched syntax cache needs a refresh. | 328 | "Return non-nil if the unmatched syntax cache needs a refresh. |
| 324 | That is, if it is dirty or if the current parse tree isn't up to date." | 329 | That is, if it is dirty or if the current parse tree isn't up to date." |
| @@ -907,75 +912,91 @@ Throw away all the old tags, and recreate the tag database." | |||
| 907 | ;; Edit Tags submenu: | 912 | ;; Edit Tags submenu: |
| 908 | (define-key edit-menu [semantic-analyze-possible-completions] | 913 | (define-key edit-menu [semantic-analyze-possible-completions] |
| 909 | '(menu-item "List Completions" semantic-analyze-possible-completions | 914 | '(menu-item "List Completions" semantic-analyze-possible-completions |
| 915 | :enable (semantic-active-p) | ||
| 910 | :help "Display a list of completions for the tag at point")) | 916 | :help "Display a list of completions for the tag at point")) |
| 911 | (define-key edit-menu [semantic-complete-analyze-inline] | 917 | (define-key edit-menu [semantic-complete-analyze-inline] |
| 912 | '(menu-item "Complete Tag Inline" semantic-complete-analyze-inline | 918 | '(menu-item "Complete Tag Inline" semantic-complete-analyze-inline |
| 919 | :enable (semantic-active-p) | ||
| 913 | :help "Display inline completion for the tag at point")) | 920 | :help "Display inline completion for the tag at point")) |
| 914 | (define-key edit-menu [semantic-completion-separator] | 921 | (define-key edit-menu [semantic-completion-separator] |
| 915 | '("--")) | 922 | '("--")) |
| 916 | (define-key edit-menu [senator-transpose-tags-down] | 923 | (define-key edit-menu [senator-transpose-tags-down] |
| 917 | '(menu-item "Transpose Tags Down" senator-transpose-tags-down | 924 | '(menu-item "Transpose Tags Down" senator-transpose-tags-down |
| 918 | :active (semantic-current-tag) | 925 | :enable (and (semantic-active-p) |
| 926 | (semantic-current-tag)) | ||
| 919 | :help "Transpose the current tag and the next tag")) | 927 | :help "Transpose the current tag and the next tag")) |
| 920 | (define-key edit-menu [senator-transpose-tags-up] | 928 | (define-key edit-menu [senator-transpose-tags-up] |
| 921 | '(menu-item "Transpose Tags Up" senator-transpose-tags-up | 929 | '(menu-item "Transpose Tags Up" senator-transpose-tags-up |
| 922 | :active (semantic-current-tag) | 930 | :enable (and (semantic-active-p) |
| 931 | (semantic-current-tag)) | ||
| 923 | :help "Transpose the current tag and the previous tag")) | 932 | :help "Transpose the current tag and the previous tag")) |
| 924 | (define-key edit-menu [semantic-edit-separator] | 933 | (define-key edit-menu [semantic-edit-separator] |
| 925 | '("--")) | 934 | '("--")) |
| 926 | (define-key edit-menu [senator-yank-tag] | 935 | (define-key edit-menu [senator-yank-tag] |
| 927 | '(menu-item "Yank Tag" senator-yank-tag | 936 | '(menu-item "Yank Tag" senator-yank-tag |
| 928 | :active (not (ring-empty-p senator-tag-ring)) | 937 | :enable (not (ring-empty-p senator-tag-ring)) |
| 929 | :help "Yank the head of the tag ring into the buffer")) | 938 | :help "Yank the head of the tag ring into the buffer")) |
| 930 | (define-key edit-menu [senator-copy-tag-to-register] | 939 | (define-key edit-menu [senator-copy-tag-to-register] |
| 931 | '(menu-item "Copy Tag To Register" senator-copy-tag-to-register | 940 | '(menu-item "Copy Tag To Register" senator-copy-tag-to-register |
| 932 | :active (semantic-current-tag) | 941 | :enable (and (semantic-active-p) |
| 942 | (semantic-current-tag)) | ||
| 933 | :help "Yank the head of the tag ring into the buffer")) | 943 | :help "Yank the head of the tag ring into the buffer")) |
| 934 | (define-key edit-menu [senator-copy-tag] | 944 | (define-key edit-menu [senator-copy-tag] |
| 935 | '(menu-item "Copy Tag" senator-copy-tag | 945 | '(menu-item "Copy Tag" senator-copy-tag |
| 936 | :active (semantic-current-tag) | 946 | :enable (and (semantic-active-p) |
| 947 | (semantic-current-tag)) | ||
| 937 | :help "Copy the current tag to the tag ring")) | 948 | :help "Copy the current tag to the tag ring")) |
| 938 | (define-key edit-menu [senator-kill-tag] | 949 | (define-key edit-menu [senator-kill-tag] |
| 939 | '(menu-item "Kill Tag" senator-kill-tag | 950 | '(menu-item "Kill Tag" senator-kill-tag |
| 940 | :active (semantic-current-tag) | 951 | :enable (and (semantic-active-p) |
| 952 | (semantic-current-tag)) | ||
| 941 | :help "Kill the current tag, and copy it to the tag ring")) | 953 | :help "Kill the current tag, and copy it to the tag ring")) |
| 942 | 954 | ||
| 943 | ;; Navigate Tags submenu: | 955 | ;; Navigate Tags submenu: |
| 944 | (define-key navigate-menu [senator-narrow-to-defun] | 956 | (define-key navigate-menu [senator-narrow-to-defun] |
| 945 | '(menu-item "Narrow to Tag" senator-narrow-to-defun | 957 | '(menu-item "Narrow to Tag" senator-narrow-to-defun |
| 946 | :active (semantic-current-tag) | 958 | :enable (and (semantic-active-p) |
| 959 | (semantic-current-tag)) | ||
| 947 | :help "Narrow the buffer to the bounds of the current tag")) | 960 | :help "Narrow the buffer to the bounds of the current tag")) |
| 948 | (define-key navigate-menu [semantic-narrow-to-defun-separator] | 961 | (define-key navigate-menu [semantic-narrow-to-defun-separator] |
| 949 | '("--")) | 962 | '("--")) |
| 950 | (define-key navigate-menu [semantic-symref-symbol] | 963 | (define-key navigate-menu [semantic-symref-symbol] |
| 951 | '(menu-item "Find Tag References..." semantic-symref-symbol | 964 | '(menu-item "Find Tag References..." semantic-symref-symbol |
| 965 | :enable (semantic-active-p) | ||
| 952 | :help "Read a tag and list the references to it")) | 966 | :help "Read a tag and list the references to it")) |
| 953 | (define-key navigate-menu [semantic-complete-jump] | 967 | (define-key navigate-menu [semantic-complete-jump] |
| 954 | '(menu-item "Find Tag Globally..." semantic-complete-jump | 968 | '(menu-item "Find Tag Globally..." semantic-complete-jump |
| 969 | :enable (semantic-active-p) | ||
| 955 | :help "Read a tag name and find it in the current project")) | 970 | :help "Read a tag name and find it in the current project")) |
| 956 | (define-key navigate-menu [semantic-complete-jump-local-members] | 971 | (define-key navigate-menu [semantic-complete-jump-local-members] |
| 957 | '(menu-item "Find Local Members ..." semantic-complete-jump-local-members | 972 | '(menu-item "Find Local Members ..." semantic-complete-jump-local-members |
| 973 | :enable (semantic-active-p) | ||
| 958 | :help "Read a tag name and find a local member with that name")) | 974 | :help "Read a tag name and find a local member with that name")) |
| 959 | (define-key navigate-menu [semantic-complete-jump-local] | 975 | (define-key navigate-menu [semantic-complete-jump-local] |
| 960 | '(menu-item "Find Tag in This Buffer..." semantic-complete-jump-local | 976 | '(menu-item "Find Tag in This Buffer..." semantic-complete-jump-local |
| 977 | :enable (semantic-active-p) | ||
| 961 | :help "Read a tag name and find it in this buffer")) | 978 | :help "Read a tag name and find it in this buffer")) |
| 962 | (define-key navigate-menu [semantic-navigation-separator] | 979 | (define-key navigate-menu [semantic-navigation-separator] |
| 963 | '("--")) | 980 | '("--")) |
| 964 | (define-key navigate-menu [senator-go-to-up-reference] | 981 | (define-key navigate-menu [senator-go-to-up-reference] |
| 965 | '(menu-item "Parent Tag" senator-go-to-up-reference | 982 | '(menu-item "Parent Tag" senator-go-to-up-reference |
| 983 | :enable (semantic-active-p) | ||
| 966 | :help "Navigate up one reference by tag")) | 984 | :help "Navigate up one reference by tag")) |
| 967 | (define-key navigate-menu [senator-next-tag] | 985 | (define-key navigate-menu [senator-next-tag] |
| 968 | '(menu-item "Next Tag" senator-next-tag | 986 | '(menu-item "Next Tag" senator-next-tag |
| 987 | :enable (semantic-active-p) | ||
| 969 | :help "Go to the next tag")) | 988 | :help "Go to the next tag")) |
| 970 | (define-key navigate-menu [senator-previous-tag] | 989 | (define-key navigate-menu [senator-previous-tag] |
| 971 | '(menu-item "Previous Tag" senator-previous-tag | 990 | '(menu-item "Previous Tag" senator-previous-tag |
| 991 | :enable (semantic-active-p) | ||
| 972 | :help "Go to the previous tag")) | 992 | :help "Go to the previous tag")) |
| 973 | 993 | ||
| 974 | ;; Top level menu items: | 994 | ;; Top level menu items: |
| 975 | (define-key cedet-menu-map [semantic-force-refresh] | 995 | (define-key cedet-menu-map [semantic-force-refresh] |
| 976 | '(menu-item "Reparse Buffer" semantic-force-refresh | 996 | '(menu-item "Reparse Buffer" semantic-force-refresh |
| 977 | :help "Force a full reparse of the current buffer" | 997 | :help "Force a full reparse of the current buffer" |
| 978 | :visible semantic-mode)) | 998 | :visible semantic-mode |
| 999 | :enable (semantic-active-p))) | ||
| 979 | (define-key cedet-menu-map [semantic-edit-menu] | 1000 | (define-key cedet-menu-map [semantic-edit-menu] |
| 980 | `(menu-item "Edit Tags" ,edit-menu | 1001 | `(menu-item "Edit Tags" ,edit-menu |
| 981 | :visible semantic-mode)) | 1002 | :visible semantic-mode)) |
diff --git a/lisp/cedet/semantic/analyze/complete.el b/lisp/cedet/semantic/analyze/complete.el index edc3cdc230c..a83f4ff0ac8 100644 --- a/lisp/cedet/semantic/analyze/complete.el +++ b/lisp/cedet/semantic/analyze/complete.el | |||
| @@ -87,20 +87,25 @@ in a buffer." | |||
| 87 | ;; In theory, we don't need the below since the context will | 87 | ;; In theory, we don't need the below since the context will |
| 88 | ;; do it for us. | 88 | ;; do it for us. |
| 89 | ;;(semantic-refresh-tags-safe) | 89 | ;;(semantic-refresh-tags-safe) |
| 90 | (with-syntax-table semantic-lex-syntax-table | 90 | (if (semantic-active-p) |
| 91 | (let* ((context (if (semantic-analyze-context-child-p context) | 91 | (with-syntax-table semantic-lex-syntax-table |
| 92 | context | 92 | (let* ((context (if (semantic-analyze-context-child-p context) |
| 93 | (semantic-analyze-current-context context))) | 93 | context |
| 94 | (ans (if (not context) | 94 | (semantic-analyze-current-context context))) |
| 95 | (error "Nothing to complete") | 95 | (ans (if (not context) |
| 96 | (:override)))) | 96 | (error "Nothing to complete") |
| 97 | ;; If interactive, display them. | 97 | (:override)))) |
| 98 | (when (called-interactively-p 'any) | 98 | ;; If interactive, display them. |
| 99 | (with-output-to-temp-buffer "*Possible Completions*" | 99 | (when (called-interactively-p 'any) |
| 100 | (semantic-analyze-princ-sequence ans "" (current-buffer))) | 100 | (with-output-to-temp-buffer "*Possible Completions*" |
| 101 | (shrink-window-if-larger-than-buffer | 101 | (semantic-analyze-princ-sequence ans "" (current-buffer))) |
| 102 | (get-buffer-window "*Possible Completions*"))) | 102 | (shrink-window-if-larger-than-buffer |
| 103 | ans))) | 103 | (get-buffer-window "*Possible Completions*"))) |
| 104 | ans)) | ||
| 105 | ;; Buffer was not parsed by Semantic. | ||
| 106 | ;; Raise error if called interactively. | ||
| 107 | (when (called-interactively-p 'any) | ||
| 108 | (error "Buffer was not parsed by Semantic.")))) | ||
| 104 | 109 | ||
| 105 | (defun semantic-analyze-possible-completions-default (context &optional flags) | 110 | (defun semantic-analyze-possible-completions-default (context &optional flags) |
| 106 | "Default method for producing smart completions. | 111 | "Default method for producing smart completions. |
diff --git a/lisp/cedet/semantic/complete.el b/lisp/cedet/semantic/complete.el index 9c2da9faefa..59d17f2f8bb 100644 --- a/lisp/cedet/semantic/complete.el +++ b/lisp/cedet/semantic/complete.el | |||
| @@ -2088,6 +2088,7 @@ completion works." | |||
| 2088 | (defun semantic-complete-jump-local () | 2088 | (defun semantic-complete-jump-local () |
| 2089 | "Jump to a local semantic symbol." | 2089 | "Jump to a local semantic symbol." |
| 2090 | (interactive) | 2090 | (interactive) |
| 2091 | (semantic-error-if-unparsed) | ||
| 2091 | (let ((tag (semantic-complete-read-tag-buffer-deep "Jump to symbol: "))) | 2092 | (let ((tag (semantic-complete-read-tag-buffer-deep "Jump to symbol: "))) |
| 2092 | (when (semantic-tag-p tag) | 2093 | (when (semantic-tag-p tag) |
| 2093 | (push-mark) | 2094 | (push-mark) |
| @@ -2101,6 +2102,7 @@ completion works." | |||
| 2101 | (defun semantic-complete-jump () | 2102 | (defun semantic-complete-jump () |
| 2102 | "Jump to a semantic symbol." | 2103 | "Jump to a semantic symbol." |
| 2103 | (interactive) | 2104 | (interactive) |
| 2105 | (semantic-error-if-unparsed) | ||
| 2104 | (let* ((tag (semantic-complete-read-tag-project "Jump to symbol: "))) | 2106 | (let* ((tag (semantic-complete-read-tag-project "Jump to symbol: "))) |
| 2105 | (when (semantic-tag-p tag) | 2107 | (when (semantic-tag-p tag) |
| 2106 | (push-mark) | 2108 | (push-mark) |
| @@ -2115,6 +2117,7 @@ completion works." | |||
| 2115 | (defun semantic-complete-jump-local-members () | 2117 | (defun semantic-complete-jump-local-members () |
| 2116 | "Jump to a semantic symbol." | 2118 | "Jump to a semantic symbol." |
| 2117 | (interactive) | 2119 | (interactive) |
| 2120 | (semantic-error-if-unparsed) | ||
| 2118 | (let* ((tag (semantic-complete-read-tag-local-members "Jump to symbol: "))) | 2121 | (let* ((tag (semantic-complete-read-tag-local-members "Jump to symbol: "))) |
| 2119 | (when (semantic-tag-p tag) | 2122 | (when (semantic-tag-p tag) |
| 2120 | (let ((start (condition-case nil (semantic-tag-start tag) | 2123 | (let ((start (condition-case nil (semantic-tag-start tag) |
| @@ -2216,7 +2219,7 @@ use `semantic-complete-analyze-inline' to complete." | |||
| 2216 | (error nil)) | 2219 | (error nil)) |
| 2217 | )) | 2220 | )) |
| 2218 | 2221 | ||
| 2219 | ;;;;###autoload | 2222 | ;;;###autoload |
| 2220 | (defun semantic-complete-inline-project () | 2223 | (defun semantic-complete-inline-project () |
| 2221 | "Perform inline completion for any symbol in the current project. | 2224 | "Perform inline completion for any symbol in the current project. |
| 2222 | `semantic-analyze-possible-completions' is used to determine the | 2225 | `semantic-analyze-possible-completions' is used to determine the |
diff --git a/lisp/cedet/semantic/senator.el b/lisp/cedet/semantic/senator.el index 64f99a8ad6f..1138c13096a 100644 --- a/lisp/cedet/semantic/senator.el +++ b/lisp/cedet/semantic/senator.el | |||
| @@ -255,6 +255,7 @@ TEXT, BOUND, NOERROR, and COUNT arguments are interpreted." | |||
| 255 | "Navigate to the next Semantic tag. | 255 | "Navigate to the next Semantic tag. |
| 256 | Return the tag or nil if at end of buffer." | 256 | Return the tag or nil if at end of buffer." |
| 257 | (interactive) | 257 | (interactive) |
| 258 | (semantic-error-if-unparsed) | ||
| 258 | (let ((pos (point)) | 259 | (let ((pos (point)) |
| 259 | (tag (semantic-current-tag)) | 260 | (tag (semantic-current-tag)) |
| 260 | where) | 261 | where) |
| @@ -294,6 +295,7 @@ Return the tag or nil if at end of buffer." | |||
| 294 | "Navigate to the previous Semantic tag. | 295 | "Navigate to the previous Semantic tag. |
| 295 | Return the tag or nil if at beginning of buffer." | 296 | Return the tag or nil if at beginning of buffer." |
| 296 | (interactive) | 297 | (interactive) |
| 298 | (semantic-error-if-unparsed) | ||
| 297 | (let ((pos (point)) | 299 | (let ((pos (point)) |
| 298 | (tag (semantic-current-tag)) | 300 | (tag (semantic-current-tag)) |
| 299 | where) | 301 | where) |
| @@ -519,6 +521,7 @@ If that parent which is only a reference in the function tag | |||
| 519 | is found, we can jump to it. | 521 | is found, we can jump to it. |
| 520 | Some tags such as includes have other reference features." | 522 | Some tags such as includes have other reference features." |
| 521 | (interactive) | 523 | (interactive) |
| 524 | (semantic-error-if-unparsed) | ||
| 522 | (let ((result (semantic-up-reference (or tag (semantic-current-tag))))) | 525 | (let ((result (semantic-up-reference (or tag (semantic-current-tag))))) |
| 523 | (if (not result) | 526 | (if (not result) |
| 524 | (error "No up reference found") | 527 | (error "No up reference found") |
diff --git a/lisp/cedet/semantic/wisent/python.el b/lisp/cedet/semantic/wisent/python.el index a0ea488f0fe..89c0499b7da 100644 --- a/lisp/cedet/semantic/wisent/python.el +++ b/lisp/cedet/semantic/wisent/python.el | |||
| @@ -48,24 +48,15 @@ | |||
| 48 | 48 | ||
| 49 | (defun semantic-python-get-system-include-path () | 49 | (defun semantic-python-get-system-include-path () |
| 50 | "Evaluate some Python code that determines the system include path." | 50 | "Evaluate some Python code that determines the system include path." |
| 51 | (python-proc) | 51 | (delq nil |
| 52 | (if python-buffer | 52 | (mapcar |
| 53 | (with-current-buffer python-buffer | 53 | (lambda (dir) |
| 54 | (set (make-local-variable 'python-preoutput-result) nil) | 54 | (when (file-directory-p dir) |
| 55 | (python-send-string | 55 | dir)) |
| 56 | "import sys; print '_emacs_out ' + '\\0'.join(sys.path)") | 56 | (split-string |
| 57 | (accept-process-output (python-proc) 2) | 57 | (python-shell-internal-send-string |
| 58 | (if python-preoutput-result | 58 | "import sys;print ('\\n'.join(sys.path))") |
| 59 | (split-string python-preoutput-result "[\0\n]" t) | 59 | "\n" t)))) |
| 60 | ;; Try a second, Python3k compatible shot | ||
| 61 | (python-send-string | ||
| 62 | "import sys; print('_emacs_out ' + '\\0'.join(sys.path))") | ||
| 63 | (accept-process-output (python-proc) 2) | ||
| 64 | (if python-preoutput-result | ||
| 65 | (split-string python-preoutput-result "[\0\n]" t) | ||
| 66 | (message "Timeout while querying Python for system include path.") | ||
| 67 | nil))) | ||
| 68 | (message "Python seems to be unavailable on this system."))) | ||
| 69 | 60 | ||
| 70 | (defcustom-mode-local-semantic-dependency-system-include-path | 61 | (defcustom-mode-local-semantic-dependency-system-include-path |
| 71 | python-mode semantic-python-dependency-system-include-path | 62 | python-mode semantic-python-dependency-system-include-path |
diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index d740574f1e4..462b4a25154 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el | |||
| @@ -232,7 +232,8 @@ The return value is undefined. | |||
| 232 | ;; fns))) | 232 | ;; fns))) |
| 233 | 233 | ||
| 234 | (defmacro defsubst (name arglist &rest body) | 234 | (defmacro defsubst (name arglist &rest body) |
| 235 | "Define an inline function. The syntax is just like that of `defun'." | 235 | "Define an inline function. The syntax is just like that of `defun'. |
| 236 | \(fn NAME ARGLIST &optional DOCSTRING DECL &rest BODY)" | ||
| 236 | (declare (debug defun) (doc-string 3)) | 237 | (declare (debug defun) (doc-string 3)) |
| 237 | (or (memq (get name 'byte-optimizer) | 238 | (or (memq (get name 'byte-optimizer) |
| 238 | '(nil byte-compile-inline-expand)) | 239 | '(nil byte-compile-inline-expand)) |
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index 8b4df6099bc..343a6655701 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2012-10-15 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * erc.el (erc-log): Make it into a defsubst. | ||
| 4 | (erc-with-server-buffer, define-erc-module, erc-with-buffer) | ||
| 5 | (erc-with-all-buffers-of-server): Use `declare'. | ||
| 6 | * erc-backend.el (erc-log): Adjust autoload accordingly. | ||
| 7 | |||
| 1 | 2012-10-07 Deniz Dogan <deniz@dogan.se> | 8 | 2012-10-07 Deniz Dogan <deniz@dogan.se> |
| 2 | 9 | ||
| 3 | * erc-log.el (erc-generate-log-file-name-function): | 10 | * erc-log.el (erc-generate-log-file-name-function): |
| @@ -42,8 +49,8 @@ | |||
| 42 | 49 | ||
| 43 | 2012-08-21 Julien Danjou <julien@danjou.info> | 50 | 2012-08-21 Julien Danjou <julien@danjou.info> |
| 44 | 51 | ||
| 45 | * erc-match.el (erc-match-message): Use | 52 | * erc-match.el (erc-match-message): |
| 46 | `erc-match-exclude-server-buffer' not | 53 | Use `erc-match-exclude-server-buffer' not |
| 47 | `erc-track-exclude-server-buffer'. | 54 | `erc-track-exclude-server-buffer'. |
| 48 | 55 | ||
| 49 | 2012-08-20 Josh Feinstein <jlf@foxtail.org> | 56 | 2012-08-20 Josh Feinstein <jlf@foxtail.org> |
| @@ -56,8 +63,8 @@ | |||
| 56 | (erc-lurker-threshold-time): New variables. | 63 | (erc-lurker-threshold-time): New variables. |
| 57 | (erc-lurker-maybe-trim, erc-lurker-initialize, erc-lurker-cleanup) | 64 | (erc-lurker-maybe-trim, erc-lurker-initialize, erc-lurker-cleanup) |
| 58 | (erc-hide-current-message-p, erc-canonicalize-server-name) | 65 | (erc-hide-current-message-p, erc-canonicalize-server-name) |
| 59 | (erc-lurker-update-status, erc-lurker-p): New functions. Together | 66 | (erc-lurker-update-status, erc-lurker-p): New functions. |
| 60 | they maintain state about which users have spoken in the last | 67 | Together they maintain state about which users have spoken in the last |
| 61 | erc-lurker-threshold-time, with all other users being considered | 68 | erc-lurker-threshold-time, with all other users being considered |
| 62 | lurkers whose messages of types in erc-lurker-hide-list will not | 69 | lurkers whose messages of types in erc-lurker-hide-list will not |
| 63 | be displayed by erc-display-message. | 70 | be displayed by erc-display-message. |
| @@ -192,7 +199,7 @@ | |||
| 192 | 199 | ||
| 193 | * erc.el (erc-ssl): Made into a synonym for erc-tls, which | 200 | * erc.el (erc-ssl): Made into a synonym for erc-tls, which |
| 194 | provides a superset of the same functionality. | 201 | provides a superset of the same functionality. |
| 195 | (erc-open-ssl-stream): Removed. | 202 | (erc-open-ssl-stream): Remove. |
| 196 | (erc-open-tls-stream): Use `open-network-stream' instead of | 203 | (erc-open-tls-stream): Use `open-network-stream' instead of |
| 197 | `open-tls-stream' directly to be able to use the built-in TLS | 204 | `open-tls-stream' directly to be able to use the built-in TLS |
| 198 | support. | 205 | support. |
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index 20ccd071b95..b8b5c90b596 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el | |||
| @@ -100,7 +100,7 @@ | |||
| 100 | (require 'erc-compat) | 100 | (require 'erc-compat) |
| 101 | (eval-when-compile (require 'cl)) | 101 | (eval-when-compile (require 'cl)) |
| 102 | (autoload 'erc-with-buffer "erc" nil nil 'macro) | 102 | (autoload 'erc-with-buffer "erc" nil nil 'macro) |
| 103 | (autoload 'erc-log "erc" nil nil 'macro) | 103 | (autoload 'erc-log "erc") |
| 104 | 104 | ||
| 105 | ;;;; Variables and options | 105 | ;;;; Variables and options |
| 106 | 106 | ||
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index bbd9dad4310..2e97131b603 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el | |||
| @@ -362,13 +362,12 @@ nicknames with erc-server-user struct instances.") | |||
| 362 | (defmacro erc-with-server-buffer (&rest body) | 362 | (defmacro erc-with-server-buffer (&rest body) |
| 363 | "Execute BODY in the current ERC server buffer. | 363 | "Execute BODY in the current ERC server buffer. |
| 364 | If no server buffer exists, return nil." | 364 | If no server buffer exists, return nil." |
| 365 | (declare (indent 0) (debug (body))) | ||
| 365 | (let ((buffer (make-symbol "buffer"))) | 366 | (let ((buffer (make-symbol "buffer"))) |
| 366 | `(let ((,buffer (erc-server-buffer))) | 367 | `(let ((,buffer (erc-server-buffer))) |
| 367 | (when (buffer-live-p ,buffer) | 368 | (when (buffer-live-p ,buffer) |
| 368 | (with-current-buffer ,buffer | 369 | (with-current-buffer ,buffer |
| 369 | ,@body))))) | 370 | ,@body))))) |
| 370 | (put 'erc-with-server-buffer 'lisp-indent-function 0) | ||
| 371 | (put 'erc-with-server-buffer 'edebug-form-spec '(body)) | ||
| 372 | 371 | ||
| 373 | (defstruct (erc-server-user (:type vector) :named) | 372 | (defstruct (erc-server-user (:type vector) :named) |
| 374 | ;; User data | 373 | ;; User data |
| @@ -1236,6 +1235,7 @@ Example: | |||
| 1236 | 'erc-replace-insert)) | 1235 | 'erc-replace-insert)) |
| 1237 | ((remove-hook 'erc-insert-modify-hook | 1236 | ((remove-hook 'erc-insert-modify-hook |
| 1238 | 'erc-replace-insert)))" | 1237 | 'erc-replace-insert)))" |
| 1238 | (declare (doc-string 3)) | ||
| 1239 | (let* ((sn (symbol-name name)) | 1239 | (let* ((sn (symbol-name name)) |
| 1240 | (mode (intern (format "erc-%s-mode" (downcase sn)))) | 1240 | (mode (intern (format "erc-%s-mode" (downcase sn)))) |
| 1241 | (group (intern (format "erc-%s" (downcase sn)))) | 1241 | (group (intern (format "erc-%s" (downcase sn)))) |
| @@ -1281,8 +1281,6 @@ if ARG is omitted or nil. | |||
| 1281 | (put ',enable 'definition-name ',name) | 1281 | (put ',enable 'definition-name ',name) |
| 1282 | (put ',disable 'definition-name ',name)))) | 1282 | (put ',disable 'definition-name ',name)))) |
| 1283 | 1283 | ||
| 1284 | (put 'define-erc-module 'doc-string-elt 3) | ||
| 1285 | |||
| 1286 | (defun erc-once-with-server-event (event &rest forms) | 1284 | (defun erc-once-with-server-event (event &rest forms) |
| 1287 | "Execute FORMS the next time EVENT occurs in the `current-buffer'. | 1285 | "Execute FORMS the next time EVENT occurs in the `current-buffer'. |
| 1288 | 1286 | ||
| @@ -1334,10 +1332,10 @@ connection over which the data was received that triggered EVENT." | |||
| 1334 | (add-hook hook fun nil nil) | 1332 | (add-hook hook fun nil nil) |
| 1335 | fun)) | 1333 | fun)) |
| 1336 | 1334 | ||
| 1337 | (defmacro erc-log (string) | 1335 | (defsubst erc-log (string) |
| 1338 | "Logs STRING if logging is on (see `erc-log-p')." | 1336 | "Logs STRING if logging is on (see `erc-log-p')." |
| 1339 | `(when erc-log-p | 1337 | (when erc-log-p |
| 1340 | (erc-log-aux ,string))) | 1338 | (erc-log-aux string))) |
| 1341 | 1339 | ||
| 1342 | (defun erc-server-buffer () | 1340 | (defun erc-server-buffer () |
| 1343 | "Return the server buffer for the current buffer's process. | 1341 | "Return the server buffer for the current buffer's process. |
| @@ -1621,6 +1619,7 @@ See `erc-get-buffer' for details. | |||
| 1621 | See also `with-current-buffer'. | 1619 | See also `with-current-buffer'. |
| 1622 | 1620 | ||
| 1623 | \(fn (TARGET [PROCESS]) BODY...)" | 1621 | \(fn (TARGET [PROCESS]) BODY...)" |
| 1622 | (declare (indent 1) (debug ((form &optional form) body))) | ||
| 1624 | (let ((buf (make-symbol "buf")) | 1623 | (let ((buf (make-symbol "buf")) |
| 1625 | (proc (make-symbol "proc")) | 1624 | (proc (make-symbol "proc")) |
| 1626 | (target (make-symbol "target")) | 1625 | (target (make-symbol "target")) |
| @@ -1637,8 +1636,6 @@ See also `with-current-buffer'. | |||
| 1637 | (when (buffer-live-p ,buf) | 1636 | (when (buffer-live-p ,buf) |
| 1638 | (with-current-buffer ,buf | 1637 | (with-current-buffer ,buf |
| 1639 | ,@body))))) | 1638 | ,@body))))) |
| 1640 | (put 'erc-with-buffer 'lisp-indent-function 1) | ||
| 1641 | (put 'erc-with-buffer 'edebug-form-spec '((form &optional form) body)) | ||
| 1642 | 1639 | ||
| 1643 | (defun erc-get-buffer (target &optional proc) | 1640 | (defun erc-get-buffer (target &optional proc) |
| 1644 | "Return the buffer matching TARGET in the process PROC. | 1641 | "Return the buffer matching TARGET in the process PROC. |
| @@ -1688,6 +1685,7 @@ needs to match PROC." | |||
| 1688 | FORMS will be evaluated in all buffers having the process PROCESS and | 1685 | FORMS will be evaluated in all buffers having the process PROCESS and |
| 1689 | where PRED matches or in all buffers of the server process if PRED is | 1686 | where PRED matches or in all buffers of the server process if PRED is |
| 1690 | nil." | 1687 | nil." |
| 1688 | (declare (indent 1) (debug (form form body))) | ||
| 1691 | ;; Make the evaluation have the correct order | 1689 | ;; Make the evaluation have the correct order |
| 1692 | (let ((pre (make-symbol "pre")) | 1690 | (let ((pre (make-symbol "pre")) |
| 1693 | (pro (make-symbol "pro"))) | 1691 | (pro (make-symbol "pro"))) |
| @@ -1701,8 +1699,6 @@ nil." | |||
| 1701 | ;; Silence the byte-compiler by binding the result of mapcar to | 1699 | ;; Silence the byte-compiler by binding the result of mapcar to |
| 1702 | ;; a variable. | 1700 | ;; a variable. |
| 1703 | res))) | 1701 | res))) |
| 1704 | (put 'erc-with-all-buffers-of-server 'lisp-indent-function 1) | ||
| 1705 | (put 'erc-with-all-buffers-of-server 'edebug-form-spec '(form form body)) | ||
| 1706 | 1702 | ||
| 1707 | ;; (iswitchb-mode) will autoload iswitchb.el | 1703 | ;; (iswitchb-mode) will autoload iswitchb.el |
| 1708 | (defvar iswitchb-temp-buflist) | 1704 | (defvar iswitchb-temp-buflist) |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index c6b2a4c37a7..dade2b4bbe5 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2012-10-17 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change) | ||
| 2 | |||
| 3 | * starttls.el (starttls-extra-arguments): Doc fix. | ||
| 4 | |||
| 1 | 2012-10-09 Lars Magne Ingebrigtsen <larsi@gnus.org> | 5 | 2012-10-09 Lars Magne Ingebrigtsen <larsi@gnus.org> |
| 2 | 6 | ||
| 3 | * shr.el (shr-insert): \r is also not inserted, so don't try to delete | 7 | * shr.el (shr-insert): \r is also not inserted, so don't try to delete |
diff --git a/lisp/gnus/starttls.el b/lisp/gnus/starttls.el index 2d403650533..346e76b2ccc 100644 --- a/lisp/gnus/starttls.el +++ b/lisp/gnus/starttls.el | |||
| @@ -149,7 +149,7 @@ These apply when the `starttls' command is used, i.e. when | |||
| 149 | :group 'starttls) | 149 | :group 'starttls) |
| 150 | 150 | ||
| 151 | (defcustom starttls-extra-arguments nil | 151 | (defcustom starttls-extra-arguments nil |
| 152 | "Extra arguments to `starttls-program'. | 152 | "Extra arguments to `starttls-gnutls-program'. |
| 153 | These apply when GnuTLS is used, i.e. when `starttls-use-gnutls' is non-nil. | 153 | These apply when GnuTLS is used, i.e. when `starttls-use-gnutls' is non-nil. |
| 154 | 154 | ||
| 155 | For example, non-TLS compliant servers may require | 155 | For example, non-TLS compliant servers may require |
diff --git a/lisp/replace.el b/lisp/replace.el index e714015fccf..4013e4e5df5 100644 --- a/lisp/replace.el +++ b/lisp/replace.el | |||
| @@ -1603,9 +1603,13 @@ Comma to replace but not move point immediately, | |||
| 1603 | C-r to enter recursive edit (\\[exit-recursive-edit] to get out again), | 1603 | C-r to enter recursive edit (\\[exit-recursive-edit] to get out again), |
| 1604 | C-w to delete match and recursive edit, | 1604 | C-w to delete match and recursive edit, |
| 1605 | C-l to clear the screen, redisplay, and offer same replacement again, | 1605 | C-l to clear the screen, redisplay, and offer same replacement again, |
| 1606 | ! to replace all remaining matches with no more questions, | 1606 | ! to replace all remaining matches in this buffer with no more questions, |
| 1607 | ^ to move point back to previous match, | 1607 | ^ to move point back to previous match, |
| 1608 | E to edit the replacement string" | 1608 | E to edit the replacement string. |
| 1609 | In multi-buffer replacements type `Y' to replace all remaining | ||
| 1610 | matches in all remaining buffers with no more questions, | ||
| 1611 | `N' to skip to the next buffer without replacing remaining matches | ||
| 1612 | in the current buffer." | ||
| 1609 | "Help message while in `query-replace'.") | 1613 | "Help message while in `query-replace'.") |
| 1610 | 1614 | ||
| 1611 | (defvar query-replace-map | 1615 | (defvar query-replace-map |
diff --git a/lisp/wdired.el b/lisp/wdired.el index b893e8f6f2b..266d1993389 100644 --- a/lisp/wdired.el +++ b/lisp/wdired.el | |||
| @@ -180,7 +180,7 @@ program `dired-chmod-program', which must exist." | |||
| 180 | (defvar wdired-col-perm) ;; Column where the permission bits start | 180 | (defvar wdired-col-perm) ;; Column where the permission bits start |
| 181 | (defvar wdired-old-content) | 181 | (defvar wdired-old-content) |
| 182 | (defvar wdired-old-point) | 182 | (defvar wdired-old-point) |
| 183 | 183 | (defvar wdired-old-marks) | |
| 184 | 184 | ||
| 185 | (defun wdired-mode () | 185 | (defun wdired-mode () |
| 186 | "Writable Dired (WDired) mode. | 186 | "Writable Dired (WDired) mode. |
| @@ -221,6 +221,8 @@ See `wdired-mode'." | |||
| 221 | (error "Not a Dired buffer")) | 221 | (error "Not a Dired buffer")) |
| 222 | (set (make-local-variable 'wdired-old-content) | 222 | (set (make-local-variable 'wdired-old-content) |
| 223 | (buffer-substring (point-min) (point-max))) | 223 | (buffer-substring (point-min) (point-max))) |
| 224 | (set (make-local-variable 'wdired-old-marks) | ||
| 225 | (dired-remember-marks (point-min) (point-max))) | ||
| 224 | (set (make-local-variable 'wdired-old-point) (point)) | 226 | (set (make-local-variable 'wdired-old-point) (point)) |
| 225 | (set (make-local-variable 'query-replace-skip-read-only) t) | 227 | (set (make-local-variable 'query-replace-skip-read-only) t) |
| 226 | (set (make-local-variable 'isearch-filter-predicate) | 228 | (set (make-local-variable 'isearch-filter-predicate) |
| @@ -455,7 +457,8 @@ non-nil means return old filename." | |||
| 455 | (push (cons tmp file-new) residue)))) | 457 | (push (cons tmp file-new) residue)))) |
| 456 | (t | 458 | (t |
| 457 | (setq progress t) | 459 | (setq progress t) |
| 458 | (let ((file-ori (car rename))) | 460 | (let* ((file-ori (car rename)) |
| 461 | (old-mark (cdr (assoc file-ori wdired-old-marks)))) | ||
| 459 | (if wdired-use-interactive-rename | 462 | (if wdired-use-interactive-rename |
| 460 | (wdired-search-and-rename file-ori file-new) | 463 | (wdired-search-and-rename file-ori file-new) |
| 461 | ;; If dired-rename-file autoloads dired-aux while | 464 | ;; If dired-rename-file autoloads dired-aux while |
| @@ -466,12 +469,17 @@ non-nil means return old filename." | |||
| 466 | (condition-case err | 469 | (condition-case err |
| 467 | (let ((dired-backup-overwrite nil)) | 470 | (let ((dired-backup-overwrite nil)) |
| 468 | (dired-rename-file file-ori file-new | 471 | (dired-rename-file file-ori file-new |
| 469 | overwrite)) | 472 | overwrite) |
| 473 | (dired-remove-file file-ori) | ||
| 474 | (dired-add-file file-new (if (integerp dired-keep-marker-rename) | ||
| 475 | dired-keep-marker-rename | ||
| 476 | old-mark))) | ||
| 470 | (error | 477 | (error |
| 471 | (setq errors (1+ errors)) | 478 | (setq errors (1+ errors)) |
| 472 | (dired-log (concat "Rename `" file-ori "' to `" | 479 | (dired-log (concat "Rename `" file-ori "' to `" |
| 473 | file-new "' failed:\n%s\n") | 480 | file-new "' failed:\n%s\n") |
| 474 | err))))))))) | 481 | err) |
| 482 | (dired-add-entry file-ori old-mark))))))))) | ||
| 475 | errors)) | 483 | errors)) |
| 476 | 484 | ||
| 477 | 485 | ||
diff --git a/lisp/window.el b/lisp/window.el index b033f9c26e3..a17e0adcdfe 100644 --- a/lisp/window.el +++ b/lisp/window.el | |||
| @@ -5361,8 +5361,16 @@ BUFFER-OR-NAME must be a buffer or the name of an existing | |||
| 5361 | buffer. Return the window chosen for displaying BUFFER-OR-NAME, | 5361 | buffer. Return the window chosen for displaying BUFFER-OR-NAME, |
| 5362 | or nil if no such window is found. | 5362 | or nil if no such window is found. |
| 5363 | 5363 | ||
| 5364 | Optional argument ACTION should have the form (FUNCTION . ALIST). | 5364 | Optional argument ACTION, if non-nil, should specify a display |
| 5365 | FUNCTION is either a function or a list of functions. | 5365 | action. Its form is described below. |
| 5366 | |||
| 5367 | Optional argument FRAME, if non-nil, acts like an additional | ||
| 5368 | ALIST entry (reusable-frames . FRAME) to the action list of ACTION, | ||
| 5369 | specifying the frame(s) to search for a window that is already | ||
| 5370 | displaying the buffer. See `display-buffer-reuse-window' | ||
| 5371 | |||
| 5372 | If ACTION is non-nil, it should have the form (FUNCTION . ALIST), | ||
| 5373 | where FUNCTION is either a function or a list of functions, and | ||
| 5366 | ALIST is an arbitrary association list (alist). | 5374 | ALIST is an arbitrary association list (alist). |
| 5367 | 5375 | ||
| 5368 | Each such FUNCTION should accept two arguments: the buffer to | 5376 | Each such FUNCTION should accept two arguments: the buffer to |
| @@ -5379,6 +5387,9 @@ function in the combined function list in turn, passing the | |||
| 5379 | buffer as the first argument and the combined alist as the second | 5387 | buffer as the first argument and the combined alist as the second |
| 5380 | argument, until one of the functions returns non-nil. | 5388 | argument, until one of the functions returns non-nil. |
| 5381 | 5389 | ||
| 5390 | If ACTION is nil, the function list and the alist are built using | ||
| 5391 | only the other variables mentioned above. | ||
| 5392 | |||
| 5382 | Available action functions include: | 5393 | Available action functions include: |
| 5383 | `display-buffer-same-window' | 5394 | `display-buffer-same-window' |
| 5384 | `display-buffer-reuse-window' | 5395 | `display-buffer-reuse-window' |
| @@ -5407,12 +5418,7 @@ The ACTION argument to `display-buffer' can also have a non-nil | |||
| 5407 | and non-list value. This means to display the buffer in a window | 5418 | and non-list value. This means to display the buffer in a window |
| 5408 | other than the selected one, even if it is already displayed in | 5419 | other than the selected one, even if it is already displayed in |
| 5409 | the selected window. If called interactively with a prefix | 5420 | the selected window. If called interactively with a prefix |
| 5410 | argument, ACTION is t. | 5421 | argument, ACTION is t." |
| 5411 | |||
| 5412 | Optional argument FRAME, if non-nil, acts like an additional | ||
| 5413 | ALIST entry (reusable-frames . FRAME), specifying the frame(s) to | ||
| 5414 | search for a window that is already displaying the buffer. See | ||
| 5415 | `display-buffer-reuse-window'." | ||
| 5416 | (interactive (list (read-buffer "Display buffer: " (other-buffer)) | 5422 | (interactive (list (read-buffer "Display buffer: " (other-buffer)) |
| 5417 | (if current-prefix-arg t))) | 5423 | (if current-prefix-arg t))) |
| 5418 | (let ((buffer (if (bufferp buffer-or-name) | 5424 | (let ((buffer (if (bufferp buffer-or-name) |