diff options
| -rw-r--r-- | lisp/dired.el | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/lisp/dired.el b/lisp/dired.el index c7cd894c1e1..e042bf6fc54 100644 --- a/lisp/dired.el +++ b/lisp/dired.el | |||
| @@ -33,6 +33,8 @@ | |||
| 33 | 33 | ||
| 34 | ;;; Code: | 34 | ;;; Code: |
| 35 | 35 | ||
| 36 | (eval-when-compile (require 'dired-aux)) | ||
| 37 | |||
| 36 | ;;; Customizable variables | 38 | ;;; Customizable variables |
| 37 | 39 | ||
| 38 | (defgroup dired nil | 40 | (defgroup dired nil |
| @@ -561,6 +563,12 @@ If DIRNAME is already in a dired buffer, that buffer is used without refresh." | |||
| 561 | (set-buffer old-buf) | 563 | (set-buffer old-buf) |
| 562 | buffer)) | 564 | buffer)) |
| 563 | 565 | ||
| 566 | (defvar dired-buffers nil | ||
| 567 | ;; Enlarged by dired-advertise | ||
| 568 | ;; Queried by function dired-buffers-for-dir. When this detects a | ||
| 569 | ;; killed buffer, it is removed from this list. | ||
| 570 | "Alist of expanded directories and their associated dired buffers.") | ||
| 571 | |||
| 564 | (defun dired-find-buffer-nocreate (dirname &optional mode) | 572 | (defun dired-find-buffer-nocreate (dirname &optional mode) |
| 565 | ;; This differs from dired-buffers-for-dir in that it does not consider | 573 | ;; This differs from dired-buffers-for-dir in that it does not consider |
| 566 | ;; subdirs of default-directory and searches for the first match only. | 574 | ;; subdirs of default-directory and searches for the first match only. |
| @@ -917,6 +925,7 @@ If DIRNAME is already in a dired buffer, that buffer is used without refresh." | |||
| 917 | (define-key map "*\C-p" 'dired-prev-marked-file) | 925 | (define-key map "*\C-p" 'dired-prev-marked-file) |
| 918 | (define-key map "*t" 'dired-do-toggle) | 926 | (define-key map "*t" 'dired-do-toggle) |
| 919 | ;; Lower keys for commands not operating on all the marked files | 927 | ;; Lower keys for commands not operating on all the marked files |
| 928 | (define-key map "a" 'dired-find-alternate-file) | ||
| 920 | (define-key map "d" 'dired-flag-file-deletion) | 929 | (define-key map "d" 'dired-flag-file-deletion) |
| 921 | (define-key map "e" 'dired-find-file) | 930 | (define-key map "e" 'dired-find-file) |
| 922 | (define-key map "f" 'dired-find-file) | 931 | (define-key map "f" 'dired-find-file) |
| @@ -1343,6 +1352,12 @@ Creates a buffer if necessary." | |||
| 1343 | (error "File is a symlink to a nonexistent target") | 1352 | (error "File is a symlink to a nonexistent target") |
| 1344 | (error "File no longer exists; type `g' to update Dired buffer"))))) | 1353 | (error "File no longer exists; type `g' to update Dired buffer"))))) |
| 1345 | 1354 | ||
| 1355 | (defun dired-find-alternate-file () | ||
| 1356 | "In dired, visit this file or directory instead of the dired buffer." | ||
| 1357 | (interactive) | ||
| 1358 | (set-buffer-modified-p nil) | ||
| 1359 | (find-alternate-file (dired-get-filename))) | ||
| 1360 | |||
| 1346 | (defun dired-mouse-find-file-other-window (event) | 1361 | (defun dired-mouse-find-file-other-window (event) |
| 1347 | "In dired, visit the file or directory name you click on." | 1362 | "In dired, visit the file or directory name you click on." |
| 1348 | (interactive "e") | 1363 | (interactive "e") |
| @@ -1585,12 +1600,6 @@ regardless of the language.") | |||
| 1585 | 1600 | ||
| 1586 | ;; Keeping Dired buffers in sync with the filesystem and with each other | 1601 | ;; Keeping Dired buffers in sync with the filesystem and with each other |
| 1587 | 1602 | ||
| 1588 | (defvar dired-buffers nil | ||
| 1589 | ;; Enlarged by dired-advertise | ||
| 1590 | ;; Queried by function dired-buffers-for-dir. When this detects a | ||
| 1591 | ;; killed buffer, it is removed from this list. | ||
| 1592 | "Alist of expanded directories and their associated dired buffers.") | ||
| 1593 | |||
| 1594 | (defun dired-buffers-for-dir (dir &optional file) | 1603 | (defun dired-buffers-for-dir (dir &optional file) |
| 1595 | ;; Return a list of buffers that dired DIR (top level or in-situ subdir). | 1604 | ;; Return a list of buffers that dired DIR (top level or in-situ subdir). |
| 1596 | ;; If FILE is non-nil, include only those whose wildcard pattern (if any) | 1605 | ;; If FILE is non-nil, include only those whose wildcard pattern (if any) |