diff options
| author | Chong Yidong | 2011-01-31 18:54:50 -0500 |
|---|---|---|
| committer | Chong Yidong | 2011-01-31 18:54:50 -0500 |
| commit | 14beddf4711854b01d400f36166dc71eb39435bb (patch) | |
| tree | 04fd96bb0f5dcf5f3aa4e9f39a537edc61038f83 /lisp | |
| parent | 2a4466ca2001c29fd654420b081b780981333dc5 (diff) | |
| parent | 113ef437f21c6ea1b65abe668feb86f1622a9f2e (diff) | |
| download | emacs-14beddf4711854b01d400f36166dc71eb39435bb.tar.gz emacs-14beddf4711854b01d400f36166dc71eb39435bb.zip | |
Merge changes from emacs-23 branch
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 48 | ||||
| -rw-r--r-- | lisp/emacs-lisp/shadow.el | 2 | ||||
| -rw-r--r-- | lisp/erc/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/erc/erc-track.el | 1 | ||||
| -rw-r--r-- | lisp/files.el | 41 | ||||
| -rw-r--r-- | lisp/image-dired.el | 18 | ||||
| -rw-r--r-- | lisp/international/quail.el | 2 | ||||
| -rw-r--r-- | lisp/mouse.el | 6 | ||||
| -rw-r--r-- | lisp/msb.el | 3 | ||||
| -rw-r--r-- | lisp/progmodes/cc-cmds.el | 33 | ||||
| -rw-r--r-- | lisp/progmodes/cc-engine.el | 13 | ||||
| -rw-r--r-- | lisp/term/ns-win.el | 4 |
12 files changed, 132 insertions, 44 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 00460741961..b2e5e98016e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,51 @@ | |||
| 1 | 2011-01-31 Alan Mackenzie <acm@muc.de> | ||
| 2 | |||
| 3 | * progmodes/cc-cmds.el (c-forward-over-illiterals): Continue | ||
| 4 | parsing if we encounter a naked # (Bug#7595). | ||
| 5 | (c-beginning-of-statement): Avoid loop in locating the beginning | ||
| 6 | of a macro. | ||
| 7 | |||
| 8 | 2011-01-31 Chong Yidong <cyd@stupidchicken.com> | ||
| 9 | |||
| 10 | * files.el (copy-directory): Fix arguments to recursive call. | ||
| 11 | |||
| 12 | 2011-01-31 Chong Yidong <cyd@stupidchicken.com> | ||
| 13 | |||
| 14 | * files.el (copy-directory): If destination is an existing | ||
| 15 | directory, copy into a subdirectory there. | ||
| 16 | |||
| 17 | 2011-01-31 Andreas Schwab <schwab@linux-m68k.org> | ||
| 18 | |||
| 19 | * emacs-lisp/shadow.el (load-path-shadows-find): Ignore leim-list | ||
| 20 | files. | ||
| 21 | |||
| 22 | 2011-01-31 Chong Yidong <cyd@stupidchicken.com> | ||
| 23 | |||
| 24 | * image-dired.el (image-dired-mouse-display-image): No-op if no | ||
| 25 | file is found (Bug#7817). | ||
| 26 | |||
| 27 | * mouse.el (mouse-menu-non-singleton): Doc fix (Bug#7801). | ||
| 28 | |||
| 29 | 2011-01-31 Kenichi Handa <handa@m17n.org> | ||
| 30 | |||
| 31 | * international/quail.el (quail-keyboard-layout-alist): Remove | ||
| 32 | superfluous SPC for "pc105-uk" (bug#7927). | ||
| 33 | |||
| 34 | 2011-01-31 Glenn Morris <rgm@gnu.org> | ||
| 35 | |||
| 36 | * msb.el (msb-menu-bar-update-buffers): Update for changed | ||
| 37 | argument handling of menu-bar-select-frame. (Bug#7902) | ||
| 38 | |||
| 39 | 2011-01-31 Chong Yidong <cyd@stupidchicken.com> | ||
| 40 | |||
| 41 | * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Set a limit | ||
| 42 | to the recursion depth (Bug#7722). | ||
| 43 | |||
| 44 | 2011-01-31 Roy Liu <carsomyr@gmail.com> (tiny change) | ||
| 45 | |||
| 46 | * term/ns-win.el (ns-find-file): Expand ns-input-file with | ||
| 47 | command-line-default-directory (Bug#7872). | ||
| 48 | |||
| 1 | 2011-01-31 Stefan Monnier <monnier@iro.umontreal.ca> | 49 | 2011-01-31 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 50 | ||
| 3 | * progmodes/compile.el (compilation--flush-directory-cache): | 51 | * progmodes/compile.el (compilation--flush-directory-cache): |
diff --git a/lisp/emacs-lisp/shadow.el b/lisp/emacs-lisp/shadow.el index c5bad3bd40f..d5bba20b1cd 100644 --- a/lisp/emacs-lisp/shadow.el +++ b/lisp/emacs-lisp/shadow.el | |||
| @@ -115,7 +115,7 @@ See the documentation for `list-load-path-shadows' for further information." | |||
| 115 | ;; FILE now contains the current file name, with no suffix. | 115 | ;; FILE now contains the current file name, with no suffix. |
| 116 | (unless (or (member file files-seen-this-dir) | 116 | (unless (or (member file files-seen-this-dir) |
| 117 | ;; Ignore these files. | 117 | ;; Ignore these files. |
| 118 | (member file '("subdirs"))) | 118 | (member file '("subdirs" "leim-list"))) |
| 119 | ;; File has not been seen yet in this directory. | 119 | ;; File has not been seen yet in this directory. |
| 120 | ;; This test prevents us declaring that XXX.el shadows | 120 | ;; This test prevents us declaring that XXX.el shadows |
| 121 | ;; XXX.elc (or vice-versa) when they are in the same directory. | 121 | ;; XXX.elc (or vice-versa) when they are in the same directory. |
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index 879dd228562..ee81bc48693 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2011-01-31 Antoine Levitt <antoine.levitt@gmail.com> (tiny change) | ||
| 2 | |||
| 3 | * erc-track.el (track): Don't reset erc-modified-channels-object | ||
| 4 | each time erc-track-mode is activated. | ||
| 5 | |||
| 1 | 2011-01-13 Stefan Monnier <monnier@iro.umontreal.ca> | 6 | 2011-01-13 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 7 | ||
| 3 | * erc.el (erc-mode): | 8 | * erc.el (erc-mode): |
diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el index b15cdb023a6..de920eb9c33 100644 --- a/lisp/erc/erc-track.el +++ b/lisp/erc/erc-track.el | |||
| @@ -648,7 +648,6 @@ module, otherwise the keybindings will not do anything useful." | |||
| 648 | (add-hook 'erc-send-completed-hook 'erc-user-is-active) | 648 | (add-hook 'erc-send-completed-hook 'erc-user-is-active) |
| 649 | (add-hook 'erc-server-001-functions 'erc-user-is-active)) | 649 | (add-hook 'erc-server-001-functions 'erc-user-is-active)) |
| 650 | (erc-track-add-to-mode-line erc-track-position-in-mode-line) | 650 | (erc-track-add-to-mode-line erc-track-position-in-mode-line) |
| 651 | (setq erc-modified-channels-object (erc-modified-channels-object nil)) | ||
| 652 | (erc-update-mode-line) | 651 | (erc-update-mode-line) |
| 653 | (if (featurep 'xemacs) | 652 | (if (featurep 'xemacs) |
| 654 | (defadvice switch-to-buffer (after erc-update (&rest args) activate) | 653 | (defadvice switch-to-buffer (after erc-update (&rest args) activate) |
diff --git a/lisp/files.el b/lisp/files.el index 7abf5361bb4..8b42eaaddb8 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -4855,22 +4855,35 @@ this happens by default." | |||
| 4855 | ;; Compute target name. | 4855 | ;; Compute target name. |
| 4856 | (setq directory (directory-file-name (expand-file-name directory)) | 4856 | (setq directory (directory-file-name (expand-file-name directory)) |
| 4857 | newname (directory-file-name (expand-file-name newname))) | 4857 | newname (directory-file-name (expand-file-name newname))) |
| 4858 | (if (not (file-directory-p newname)) (make-directory newname parents)) | 4858 | |
| 4859 | (if (not (file-directory-p newname)) | ||
| 4860 | ;; If NEWNAME is not an existing directory, create it; that | ||
| 4861 | ;; is where we will copy the files of DIRECTORY. | ||
| 4862 | (make-directory newname parents) | ||
| 4863 | ;; If NEWNAME is an existing directory, we will copy into | ||
| 4864 | ;; NEWNAME/[DIRECTORY-BASENAME]. | ||
| 4865 | (setq newname (expand-file-name | ||
| 4866 | (file-name-nondirectory | ||
| 4867 | (directory-file-name directory)) | ||
| 4868 | newname)) | ||
| 4869 | (and (file-exists-p newname) | ||
| 4870 | (not (file-directory-p newname)) | ||
| 4871 | (error "Cannot overwrite non-directory %s with a directory" | ||
| 4872 | newname)) | ||
| 4873 | (make-directory newname t)) | ||
| 4859 | 4874 | ||
| 4860 | ;; Copy recursively. | 4875 | ;; Copy recursively. |
| 4861 | (mapc | 4876 | (dolist (file |
| 4862 | (lambda (file) | 4877 | ;; We do not want to copy "." and "..". |
| 4863 | (let ((target (expand-file-name | 4878 | (directory-files directory 'full |
| 4864 | (file-name-nondirectory file) newname)) | 4879 | directory-files-no-dot-files-regexp)) |
| 4865 | (attrs (file-attributes file))) | 4880 | (if (file-directory-p file) |
| 4866 | (cond ((file-directory-p file) | 4881 | (copy-directory file newname keep-time parents) |
| 4867 | (copy-directory file target keep-time parents)) | 4882 | (let ((target (expand-file-name (file-name-nondirectory file) newname)) |
| 4868 | ((stringp (car attrs)) ; Symbolic link | 4883 | (attrs (file-attributes file))) |
| 4869 | (make-symbolic-link (car attrs) target t)) | 4884 | (if (stringp (car attrs)) ; Symbolic link |
| 4870 | (t | 4885 | (make-symbolic-link (car attrs) target t) |
| 4871 | (copy-file file target t keep-time))))) | 4886 | (copy-file file target t keep-time))))) |
| 4872 | ;; We do not want to copy "." and "..". | ||
| 4873 | (directory-files directory 'full directory-files-no-dot-files-regexp)) | ||
| 4874 | 4887 | ||
| 4875 | ;; Set directory attributes. | 4888 | ;; Set directory attributes. |
| 4876 | (set-file-modes newname (file-modes directory)) | 4889 | (set-file-modes newname (file-modes directory)) |
diff --git a/lisp/image-dired.el b/lisp/image-dired.el index 8c26b699568..8fa6963b3d7 100644 --- a/lisp/image-dired.el +++ b/lisp/image-dired.el | |||
| @@ -2194,15 +2194,15 @@ matching tag will be marked in the dired buffer." | |||
| 2194 | Track this in associated dired buffer if `image-dired-track-movement' is | 2194 | Track this in associated dired buffer if `image-dired-track-movement' is |
| 2195 | non-nil." | 2195 | non-nil." |
| 2196 | (interactive "e") | 2196 | (interactive "e") |
| 2197 | (let (file) | 2197 | (mouse-set-point event) |
| 2198 | (mouse-set-point event) | 2198 | (goto-char (posn-point (event-end event))) |
| 2199 | (goto-char (posn-point (event-end event))) | 2199 | (let ((file (image-dired-original-file-name))) |
| 2200 | (setq file (image-dired-original-file-name)) | 2200 | (when file |
| 2201 | (if image-dired-track-movement | 2201 | (if image-dired-track-movement |
| 2202 | (image-dired-track-original-file)) | 2202 | (image-dired-track-original-file)) |
| 2203 | (image-dired-create-display-image-buffer) | 2203 | (image-dired-create-display-image-buffer) |
| 2204 | (display-buffer image-dired-display-image-buffer) | 2204 | (display-buffer image-dired-display-image-buffer) |
| 2205 | (image-dired-display-image file))) | 2205 | (image-dired-display-image file)))) |
| 2206 | 2206 | ||
| 2207 | (defun image-dired-mouse-select-thumbnail (event) | 2207 | (defun image-dired-mouse-select-thumbnail (event) |
| 2208 | "Use mouse EVENT to select thumbnail image. | 2208 | "Use mouse EVENT to select thumbnail image. |
diff --git a/lisp/international/quail.el b/lisp/international/quail.el index c5842740dbf..2174beb19c9 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el | |||
| @@ -662,7 +662,7 @@ This layout is almost the same as that of VT100, | |||
| 662 | ") | 662 | ") |
| 663 | '("pc105-uk" . "\ | 663 | '("pc105-uk" . "\ |
| 664 | \ | 664 | \ |
| 665 | `\2541!2\"3\2434$5%6^7&8*9(0)-_=+ \ | 665 | `\2541!2\"3\2434$5%6^7&8*9(0)-_=+ \ |
| 666 | qQwWeErRtTyYuUiIoOpP[{]} \ | 666 | qQwWeErRtTyYuUiIoOpP[{]} \ |
| 667 | aAsSdDfFgGhHjJkKlL;:'@#~ \ | 667 | aAsSdDfFgGhHjJkKlL;:'@#~ \ |
| 668 | \\|zZxXcCvVbBnNmM,<.>/? \ | 668 | \\|zZxXcCvVbBnNmM,<.>/? \ |
diff --git a/lisp/mouse.el b/lisp/mouse.el index c572263f3ba..c0b86d45028 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el | |||
| @@ -201,9 +201,9 @@ items `Turn Off' and `Help'." | |||
| 201 | newmap)) | 201 | newmap)) |
| 202 | 202 | ||
| 203 | (defun mouse-menu-non-singleton (menubar) | 203 | (defun mouse-menu-non-singleton (menubar) |
| 204 | "Given menu keymap, | 204 | "Return menu keybar MENUBAR, or a lone submenu inside it. |
| 205 | if it defines exactly one submenu, return just that submenu. | 205 | If MENUBAR defines exactly one submenu, return just that submenu. |
| 206 | Otherwise return the whole menu." | 206 | Otherwise, return MENUBAR." |
| 207 | (if menubar | 207 | (if menubar |
| 208 | (let (submap) | 208 | (let (submap) |
| 209 | (map-keymap | 209 | (map-keymap |
diff --git a/lisp/msb.el b/lisp/msb.el index fb9de914abf..1f84ef78164 100644 --- a/lisp/msb.el +++ b/lisp/msb.el | |||
| @@ -1114,7 +1114,8 @@ variable `msb-menu-cond'." | |||
| 1114 | (list (frame-parameter frame 'name) | 1114 | (list (frame-parameter frame 'name) |
| 1115 | (frame-parameter frame 'name) | 1115 | (frame-parameter frame 'name) |
| 1116 | (cons nil nil)) | 1116 | (cons nil nil)) |
| 1117 | 'menu-bar-select-frame)) | 1117 | `(lambda () |
| 1118 | (interactive) (menu-bar-select-frame ,frame)))) | ||
| 1118 | frames))))) | 1119 | frames))))) |
| 1119 | (setcdr global-buffers-menu-map | 1120 | (setcdr global-buffers-menu-map |
| 1120 | (if (and buffers-menu frames-menu) | 1121 | (if (and buffers-menu frames-menu) |
diff --git a/lisp/progmodes/cc-cmds.el b/lisp/progmodes/cc-cmds.el index 327ebea40cc..ec913e05c7e 100644 --- a/lisp/progmodes/cc-cmds.el +++ b/lisp/progmodes/cc-cmds.el | |||
| @@ -2440,13 +2440,15 @@ function does not require the declaration to contain a brace block." | |||
| 2440 | (goto-char last) | 2440 | (goto-char last) |
| 2441 | (throw 'done '(nil . nil))) | 2441 | (throw 'done '(nil . nil))) |
| 2442 | 2442 | ||
| 2443 | ;; Stop if we encounter a preprocessor line. | 2443 | ;; Stop if we encounter a preprocessor line. Continue if we |
| 2444 | ((and (not macro-end) | 2444 | ;; hit a naked # |
| 2445 | ((and c-opt-cpp-prefix | ||
| 2446 | (not macro-end) | ||
| 2445 | (eq (char-after) ?#) | 2447 | (eq (char-after) ?#) |
| 2446 | (= (point) (c-point 'boi))) | 2448 | (= (point) (c-point 'boi))) |
| 2447 | (goto-char last) | 2449 | (if (= (point) here) ; Not a macro, therefore naked #. |
| 2448 | ;(throw 'done (cons (eq (point) here) 'macro-boundary))) ; Changed 2003/3/26 | 2450 | (forward-char) |
| 2449 | (throw 'done '(t . macro-boundary))) | 2451 | (throw 'done '(t . macro-boundary)))) |
| 2450 | 2452 | ||
| 2451 | ;; Stop after a ';', '}', or "};" | 2453 | ;; Stop after a ';', '}', or "};" |
| 2452 | ((looking-at ";\\|};?") | 2454 | ((looking-at ";\\|};?") |
| @@ -2560,14 +2562,21 @@ be more \"DWIM:ey\"." | |||
| 2560 | (c-backward-syntactic-ws)) | 2562 | (c-backward-syntactic-ws)) |
| 2561 | (or (bobp) (c-after-statement-terminator-p))))))) | 2563 | (or (bobp) (c-after-statement-terminator-p))))))) |
| 2562 | ;; Are we about to move backwards into or out of a | 2564 | ;; Are we about to move backwards into or out of a |
| 2563 | ;; preprocessor command? If so, locate it's beginning. | 2565 | ;; preprocessor command? If so, locate its beginning. |
| 2564 | (when (eq (cdr res) 'macro-boundary) | 2566 | (when (eq (cdr res) 'macro-boundary) |
| 2565 | (save-excursion | 2567 | (setq macro-fence |
| 2566 | (beginning-of-line) | 2568 | (save-excursion |
| 2567 | (setq macro-fence | 2569 | (if macro-fence |
| 2568 | (and (not (bobp)) | 2570 | (progn |
| 2569 | (progn (c-skip-ws-backward) (c-beginning-of-macro)) | 2571 | (end-of-line) |
| 2570 | (point))))) | 2572 | (and (not (eobp)) |
| 2573 | (progn (c-skip-ws-forward) | ||
| 2574 | (c-beginning-of-macro)) | ||
| 2575 | (progn (c-end-of-macro) | ||
| 2576 | (point)))) | ||
| 2577 | (and (not (eobp)) | ||
| 2578 | (c-beginning-of-macro) | ||
| 2579 | (progn (c-end-of-macro) (point))))))) | ||
| 2571 | ;; Are we about to move backwards into a literal? | 2580 | ;; Are we about to move backwards into a literal? |
| 2572 | (when (memq (cdr res) '(macro-boundary literal)) | 2581 | (when (memq (cdr res) '(macro-boundary literal)) |
| 2573 | (setq range (c-ascertain-preceding-literal))) | 2582 | (setq range (c-ascertain-preceding-literal))) |
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el index 406ee1a91d9..f90d29bf009 100644 --- a/lisp/progmodes/cc-engine.el +++ b/lisp/progmodes/cc-engine.el | |||
| @@ -5371,6 +5371,8 @@ comment at the start of cc-engine.el for more info." | |||
| 5371 | ;; cc-mode requires cc-fonts. | 5371 | ;; cc-mode requires cc-fonts. |
| 5372 | (declare-function c-fontify-recorded-types-and-refs "cc-fonts" ()) | 5372 | (declare-function c-fontify-recorded-types-and-refs "cc-fonts" ()) |
| 5373 | 5373 | ||
| 5374 | (defvar c-forward-<>-arglist-recur-depth) | ||
| 5375 | |||
| 5374 | (defun c-forward-<>-arglist (all-types) | 5376 | (defun c-forward-<>-arglist (all-types) |
| 5375 | ;; The point is assumed to be at a "<". Try to treat it as the open | 5377 | ;; The point is assumed to be at a "<". Try to treat it as the open |
| 5376 | ;; paren of an angle bracket arglist and move forward to the | 5378 | ;; paren of an angle bracket arglist and move forward to the |
| @@ -5396,7 +5398,8 @@ comment at the start of cc-engine.el for more info." | |||
| 5396 | ;; If `c-record-type-identifiers' is set then activate | 5398 | ;; If `c-record-type-identifiers' is set then activate |
| 5397 | ;; recording of any found types that constitute an argument in | 5399 | ;; recording of any found types that constitute an argument in |
| 5398 | ;; the arglist. | 5400 | ;; the arglist. |
| 5399 | (c-record-found-types (if c-record-type-identifiers t))) | 5401 | (c-record-found-types (if c-record-type-identifiers t)) |
| 5402 | (c-forward-<>-arglist-recur--depth 0)) | ||
| 5400 | (if (catch 'angle-bracket-arglist-escape | 5403 | (if (catch 'angle-bracket-arglist-escape |
| 5401 | (setq c-record-found-types | 5404 | (setq c-record-found-types |
| 5402 | (c-forward-<>-arglist-recur all-types))) | 5405 | (c-forward-<>-arglist-recur all-types))) |
| @@ -5413,6 +5416,14 @@ comment at the start of cc-engine.el for more info." | |||
| 5413 | nil))) | 5416 | nil))) |
| 5414 | 5417 | ||
| 5415 | (defun c-forward-<>-arglist-recur (all-types) | 5418 | (defun c-forward-<>-arglist-recur (all-types) |
| 5419 | |||
| 5420 | ;; Temporary workaround for Bug#7722. | ||
| 5421 | (when (boundp 'c-forward-<>-arglist-recur--depth) | ||
| 5422 | (if (> c-forward-<>-arglist-recur--depth 200) | ||
| 5423 | (error "Max recursion depth reached in <> arglist") | ||
| 5424 | (setq c-forward-<>-arglist-recur--depth | ||
| 5425 | (1+ c-forward-<>-arglist-recur--depth)))) | ||
| 5426 | |||
| 5416 | ;; Recursive part of `c-forward-<>-arglist'. | 5427 | ;; Recursive part of `c-forward-<>-arglist'. |
| 5417 | ;; | 5428 | ;; |
| 5418 | ;; This function might do hidden buffer changes. | 5429 | ;; This function might do hidden buffer changes. |
diff --git a/lisp/term/ns-win.el b/lisp/term/ns-win.el index 6286b83258b..712929ecec0 100644 --- a/lisp/term/ns-win.el +++ b/lisp/term/ns-win.el | |||
| @@ -487,7 +487,9 @@ unless the current buffer is a scratch buffer." | |||
| 487 | (defun ns-find-file () | 487 | (defun ns-find-file () |
| 488 | "Do a `find-file' with the `ns-input-file' as argument." | 488 | "Do a `find-file' with the `ns-input-file' as argument." |
| 489 | (interactive) | 489 | (interactive) |
| 490 | (let* ((f (file-truename (pop ns-input-file))) | 490 | (let* ((f (file-truename |
| 491 | (expand-file-name (pop ns-input-file) | ||
| 492 | command-line-default-directory))) | ||
| 491 | (file (find-file-noselect f)) | 493 | (file (find-file-noselect f)) |
| 492 | (bufwin1 (get-buffer-window file 'visible)) | 494 | (bufwin1 (get-buffer-window file 'visible)) |
| 493 | (bufwin2 (get-buffer-window "*scratch*" 'visibile))) | 495 | (bufwin2 (get-buffer-window "*scratch*" 'visibile))) |