Mercurial > emacs
annotate lisp/dired.el @ 110410:f2e111723c3a
Merge changes made in Gnus trunk.
Reimplement nnimap, and do tweaks to the rest of the code to support that.
* gnus-int.el (gnus-finish-retrieve-group-infos)
(gnus-retrieve-group-data-early): New functions.
* gnus-range.el (gnus-range-nconcat): New function.
* gnus-start.el (gnus-get-unread-articles): Support early retrieval of
data.
(gnus-read-active-for-groups): Support finishing the early retrieval of
data.
* gnus-sum.el (gnus-summary-move-article): Pass the move-to group name
if the move is internal, so that nnimap can do fast internal moves.
* gnus.el (gnus-article-special-mark-lists): Add uid/active tuples, for
nnimap usage.
* nnimap.el: Rewritten.
* nnmail.el (nnmail-inhibit-default-split-group): New internal variable
to allow the mail splitting to not return a default group. This is
useful for nnimap, which will leave unmatched mail in the inbox.
* utf7.el (utf7-encode): Autoload.
Implement shell connection.
* nnimap.el (nnimap-open-shell-stream): New function.
(nnimap-open-connection): Use it.
Get the number of lines by using BODYSTRUCTURE.
(nnimap-transform-headers): Get the number of lines in each message.
(nnimap-retrieve-headers): Query for BODYSTRUCTURE so that we get the
number of lines.
Not all servers return UIDNEXT. Work past this problem.
Remove junk from end of file.
Fix typo in "bogus" section.
Make capabilties be case-insensitive.
Require cl when compiling.
Don't bug out if the LIST command doesn't have any parameters.
2010-09-17 Knut Anders Hatlen <kahatlen@gmail.com> (tiny change)
* nnimap.el (nnimap-get-groups): Don't bug out if the LIST command
doesn't have any parameters.
(mm-text-html-renderer): Document gnus-article-html.
2010-09-17 Julien Danjou <julien@danjou.info> (tiny fix)
* mm-decode.el (mm-text-html-renderer): Document gnus-article-html.
* dgnushack.el: Define netrc-credentials.
If the user doesn't have a /etc/services, supply some sensible port defaults.
Have `unseen-or-unread' select an unread unseen article first.
(nntp-open-server): Return whether the open was successful or not.
Throughout all files, replace (save-excursion (set-buffer ...)) with (with-current-buffer ... ).
Save result so that it doesn't say "failed" all the time.
Add ~/.authinfo to the default, since that's probably most useful for users.
Don't use the "finish" method when we're reading from the agent.
Add some more nnimap-relevant agent stuff to nnagent.el.
* nnimap.el (nnimap-with-process-buffer): Removed.
Revert one line that was changed by mistake in the last checkin.
(nnimap-open-connection): Don't error out when we can't make a connection
nnimap-related changes to avoid bugging out if we can't contact a server.
* gnus-start.el (gnus-get-unread-articles): Don't try to scan groups
from methods that are denied.
* nnimap.el (nnimap-possibly-change-group): Return nil if we can't log
in.
(nnimap-finish-retrieve-group-infos): Make sure we're not waiting for
nothing.
* gnus-sum.el (gnus-select-newsgroup): Indent.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Sat, 18 Sep 2010 10:02:19 +0000 |
parents | f5e7d094d9d8 |
children | bec49af30c2f |
rev | line source |
---|---|
2229
bd3c525fa6fc
Added standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1755
diff
changeset
|
1 ;;; dired.el --- directory-browsing commands |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
2 |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
3 ;; Copyright (C) 1985, 1986, 1992, 1993, 1994, 1995, 1996, 1997, 2000, |
106815 | 4 ;; 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
101546 | 5 ;; Free Software Foundation, Inc. |
878
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
6 |
5803
4cd9bd412e4a
(dired-listing-switches): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
5483
diff
changeset
|
7 ;; Author: Sebastian Kremer <sk@thp.uni-koeln.de> |
4cd9bd412e4a
(dired-listing-switches): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
5483
diff
changeset
|
8 ;; Maintainer: FSF |
39015 | 9 ;; Keywords: files |
110015
280c8ae2476d
Add "Package:" file headers to denote built-in packages.
Chong Yidong <cyd@stupidchicken.com>
parents:
109553
diff
changeset
|
10 ;; Package: emacs |
661 | 11 |
12 ;; This file is part of GNU Emacs. | |
13 | |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94651
diff
changeset
|
14 ;; GNU Emacs is free software: you can redistribute it and/or modify |
661 | 15 ;; it under the terms of the GNU General Public License as published by |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94651
diff
changeset
|
16 ;; the Free Software Foundation, either version 3 of the License, or |
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94651
diff
changeset
|
17 ;; (at your option) any later version. |
661 | 18 |
19 ;; GNU Emacs is distributed in the hope that it will be useful, | |
20 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
21 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
22 ;; GNU General Public License for more details. | |
23 | |
24 ;; You should have received a copy of the GNU General Public License | |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94651
diff
changeset
|
25 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
661 | 26 |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
27 ;;; Commentary: |
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
28 |
2307
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2229
diff
changeset
|
29 ;; This is a major mode for directory browsing and editing. It is |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2229
diff
changeset
|
30 ;; documented in the Emacs manual. |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2229
diff
changeset
|
31 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
32 ;; Rewritten in 1990/1991 to add tree features, file marking and |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
33 ;; sorting by Sebastian Kremer <sk@thp.uni-koeln.de>. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
34 ;; Finished up by rms in 1992. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
35 |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
36 ;;; Code: |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
37 |
94485 | 38 (eval-when-compile (require 'cl)) |
39 | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
40 ;;; Customizable variables |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
41 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
42 (defgroup dired nil |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
43 "Directory editing." |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
44 :link '(custom-manual "(emacs)Dired") |
47181
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
45 :group 'files) |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
46 |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
47 (defgroup dired-mark nil |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
48 "Handling marks in Dired." |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
49 :prefix "dired-" |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
50 :group 'dired) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
51 |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
52 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
53 ;;;###autoload |
105939
a0f778f4a995
* term/x-win.el (x-gtk-stock-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
105933
diff
changeset
|
54 (defcustom dired-listing-switches (purecopy "-al") |
100171 | 55 "Switches passed to `ls' for Dired. MUST contain the `l' option. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
56 May contain all other options that don't contradict `-l'; |
5803
4cd9bd412e4a
(dired-listing-switches): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
5483
diff
changeset
|
57 may contain even `F', `b', `i' and `s'. See also the variable |
41307
db9182517100
(dired-listing-switches): Mention in the doc string
Eli Zaretskii <eliz@gnu.org>
parents:
41092
diff
changeset
|
58 `dired-ls-F-marks-symlinks' concerning the `F' switch. |
db9182517100
(dired-listing-switches): Mention in the doc string
Eli Zaretskii <eliz@gnu.org>
parents:
41092
diff
changeset
|
59 On systems such as MS-DOS and MS-Windows, which use `ls' emulation in Lisp, |
db9182517100
(dired-listing-switches): Mention in the doc string
Eli Zaretskii <eliz@gnu.org>
parents:
41092
diff
changeset
|
60 some of the `ls' switches are not supported; see the doc string of |
75450
d289216cf933
(dired-listing-switches): Fix doc typo.
Glenn Morris <rgm@gnu.org>
parents:
75347
diff
changeset
|
61 `insert-directory' in `ls-lisp.el' for more details." |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
62 :type 'string |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
63 :group 'dired) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
64 |
55937
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
65 (defvar dired-subdir-switches nil |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
66 "If non-nil, switches passed to `ls' for inserting subdirectories. |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
67 If nil, `dired-listing-switches' is used.") |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
68 |
49243 | 69 ; Don't use absolute file names as /bin should be in any PATH and people |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
70 ; may prefer /usr/local/gnu/bin or whatever. However, chown is |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
71 ; usually not in PATH. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
72 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
73 ;;;###autoload |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
74 (defvar dired-chown-program |
105939
a0f778f4a995
* term/x-win.el (x-gtk-stock-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
105933
diff
changeset
|
75 (purecopy |
87595
4c6c79916238
* configure.in: Remove references to unsupported systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
87139
diff
changeset
|
76 (if (memq system-type '(hpux usg-unix-v irix linux gnu/linux cygwin)) |
15348
8d78b06fbb46
(dired-chown-program): Try /usr/sbin/chown.
Richard M. Stallman <rms@gnu.org>
parents:
14947
diff
changeset
|
77 "chown" |
8d78b06fbb46
(dired-chown-program): Try /usr/sbin/chown.
Richard M. Stallman <rms@gnu.org>
parents:
14947
diff
changeset
|
78 (if (file-exists-p "/usr/sbin/chown") |
8d78b06fbb46
(dired-chown-program): Try /usr/sbin/chown.
Richard M. Stallman <rms@gnu.org>
parents:
14947
diff
changeset
|
79 "/usr/sbin/chown" |
105939
a0f778f4a995
* term/x-win.el (x-gtk-stock-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
105933
diff
changeset
|
80 "/etc/chown"))) |
3591
507f64624555
Apply typo patches from Paul Eggert.
Jim Blandy <jimb@redhat.com>
parents:
3580
diff
changeset
|
81 "Name of chown command (usually `chown' or `/etc/chown').") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
82 |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
83 (defvar dired-use-ls-dired (not (not (string-match "gnu" system-configuration))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
84 "Non-nil means Dired should use `ls --dired'.") |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
85 |
21743
8def83521606
(dired-chmod-program) [windows-nt]: Use chmod.
Geoff Voelker <voelker@cs.washington.edu>
parents:
21690
diff
changeset
|
86 (defvar dired-chmod-program "chmod" |
8def83521606
(dired-chmod-program) [windows-nt]: Use chmod.
Geoff Voelker <voelker@cs.washington.edu>
parents:
21690
diff
changeset
|
87 "Name of chmod command (usually `chmod').") |
11396
9c92e5ea420a
(dired-chmod-program): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
11151
diff
changeset
|
88 |
54663
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
89 (defvar dired-touch-program "touch" |
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
90 "Name of touch command (usually `touch').") |
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
91 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
92 (defcustom dired-ls-F-marks-symlinks nil |
100171 | 93 "Informs Dired about how `ls -lF' marks symbolic links. |
14146
36471d582fb2
(dired-ls-F-marks-symlinks): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
14107
diff
changeset
|
94 Set this to t if `ls' (or whatever program is specified by |
36471d582fb2
(dired-ls-F-marks-symlinks): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
14107
diff
changeset
|
95 `insert-directory-program') with `-lF' marks the symbolic link |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
96 itself with a trailing @ (usually the case under Ultrix). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
97 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
98 Example: if `ln -s foo bar; ls -F bar' gives `bar -> foo', set it to |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
99 nil (the default), if it gives `bar@ -> foo', set it to t. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
100 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
101 Dired checks if there is really a @ appended. Thus, if you have a |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
102 marking `ls' program on one host and a non-marking on another host, and |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
103 don't care about symbolic links which really end in a @, you can |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
104 always set this variable to t." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
105 :type 'boolean |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
106 :group 'dired-mark) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
107 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
108 ;;;###autoload |
105957
25e1d7e37015
* widget.el (define-widget): Purecopy the docstring.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
105939
diff
changeset
|
109 (defcustom dired-trivial-filenames (purecopy "^\\.\\.?$\\|^#") |
100171 | 110 "Regexp of files to skip when finding first file of a directory. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
111 A value of nil means move to the subdir line. |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
112 A value of t means move to first file." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
113 :type '(choice (const :tag "Move to subdir" nil) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
114 (const :tag "Move to first" t) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
115 regexp) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
116 :group 'dired) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
117 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
118 (defcustom dired-keep-marker-rename t |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
119 ;; Use t as default so that moved files "take their markers with them". |
100171 | 120 "Controls marking of renamed files. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
121 If t, files keep their previous marks when they are renamed. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
122 If a character, renamed files (whether previously marked or not) |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
123 are afterward marked with that character." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
124 :type '(choice (const :tag "Keep" t) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
125 (character :tag "Mark")) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
126 :group 'dired-mark) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
127 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
128 (defcustom dired-keep-marker-copy ?C |
100171 | 129 "Controls marking of copied files. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
130 If t, copied files are marked if and as the corresponding original files were. |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
131 If a character, copied files are unconditionally marked with that character." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
132 :type '(choice (const :tag "Keep" t) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
133 (character :tag "Mark")) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
134 :group 'dired-mark) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
135 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
136 (defcustom dired-keep-marker-hardlink ?H |
100171 | 137 "Controls marking of newly made hard links. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
138 If t, they are marked if and as the files linked to were marked. |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
139 If a character, new links are unconditionally marked with that character." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
140 :type '(choice (const :tag "Keep" t) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
141 (character :tag "Mark")) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
142 :group 'dired-mark) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
143 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
144 (defcustom dired-keep-marker-symlink ?Y |
100171 | 145 "Controls marking of newly made symbolic links. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
146 If t, they are marked if and as the files linked to were marked. |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
147 If a character, new links are unconditionally marked with that character." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
148 :type '(choice (const :tag "Keep" t) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
149 (character :tag "Mark")) |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
150 :group 'dired-mark) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
151 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
152 (defcustom dired-dwim-target nil |
100171 | 153 "If non-nil, Dired tries to guess a default target directory. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
154 This means: if there is a dired buffer displayed in the next window, |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
155 use its current subdir, instead of the current subdir of this dired buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
156 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
157 The target is used in the prompt for file copy, rename etc." |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
158 :type 'boolean |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
159 :group 'dired) |
661 | 160 |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
161 (defcustom dired-copy-preserve-time t |
100171 | 162 "If non-nil, Dired preserves the last-modified time in a file copy. |
17944
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
163 \(This works on only some systems.)" |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
164 :type 'boolean |
0714535d0e28
Use defgroup and defcustom.
Richard M. Stallman <rms@gnu.org>
parents:
17811
diff
changeset
|
165 :group 'dired) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
166 |
42245
30a233f73e77
(dired-free-space-program, dired-free-space-args):
Eli Zaretskii <eliz@gnu.org>
parents:
42206
diff
changeset
|
167 ; These variables were deleted and the replacements are on files.el. |
30a233f73e77
(dired-free-space-program, dired-free-space-args):
Eli Zaretskii <eliz@gnu.org>
parents:
42206
diff
changeset
|
168 ; We leave aliases behind for back-compatibility. |
30a233f73e77
(dired-free-space-program, dired-free-space-args):
Eli Zaretskii <eliz@gnu.org>
parents:
42206
diff
changeset
|
169 (defvaralias 'dired-free-space-program 'directory-free-space-program) |
30a233f73e77
(dired-free-space-program, dired-free-space-args):
Eli Zaretskii <eliz@gnu.org>
parents:
42206
diff
changeset
|
170 (defvaralias 'dired-free-space-args 'directory-free-space-args) |
30a233f73e77
(dired-free-space-program, dired-free-space-args):
Eli Zaretskii <eliz@gnu.org>
parents:
42206
diff
changeset
|
171 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
172 ;;; Hook variables |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
173 |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
174 (defcustom dired-load-hook nil |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
175 "Run after loading Dired. |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
176 You can customize key bindings or load extensions with this." |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
177 :group 'dired |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
178 :type 'hook) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
179 |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
180 (defcustom dired-mode-hook nil |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
181 "Run at the very end of `dired-mode'." |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
182 :group 'dired |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
183 :type 'hook) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
184 |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
185 (defcustom dired-before-readin-hook nil |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
186 "This hook is run before a dired buffer is read in (created or reverted)." |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
187 :group 'dired |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
188 :type 'hook) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
189 |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
190 (defcustom dired-after-readin-hook nil |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
191 "Hook run after each time a file or directory is read by Dired. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
192 After each listing of a file or directory, this hook is run |
43107
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
193 with the buffer narrowed to the listing." |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
194 :group 'dired |
60ed6d7abdfe
(dired-load-hook, dired-mode-hook)
Eli Zaretskii <eliz@gnu.org>
parents:
42690
diff
changeset
|
195 :type 'hook) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
196 ;; Note this can't simply be run inside function `dired-ls' as the hook |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
197 ;; functions probably depend on the dired-subdir-alist to be OK. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
198 |
62240
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
199 (defcustom dired-dnd-protocol-alist |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
200 '(("^file:///" . dired-dnd-handle-local-file) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
201 ("^file://" . dired-dnd-handle-file) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
202 ("^file:" . dired-dnd-handle-local-file)) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
203 "The functions to call when a drop in `dired-mode' is made. |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
204 See `dnd-protocol-alist' for more information. When nil, behave |
69783
d1bfd9018628
(dired-dnd-protocol-alist): Fix typo.
Romain Francoise <romain@orebokech.com>
parents:
69779
diff
changeset
|
205 as in other buffers. Changing this option is effective only for |
69779
865de55024d5
(dired-dnd-protocol-alist): Mention that change does
Reiner Steib <Reiner.Steib@gmx.de>
parents:
68816
diff
changeset
|
206 new dired buffers." |
62240
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
207 :type '(choice (repeat (cons (regexp) (function))) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
208 (const :tag "Behave as in other buffers" nil)) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
209 :version "22.1" |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
210 :group 'dired) |
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
211 |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
212 ;; Internal variables |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
213 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
214 (defvar dired-marker-char ?* ; the answer is 42 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
215 ;; so that you can write things like |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
216 ;; (let ((dired-marker-char ?X)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
217 ;; ;; great code using X markers ... |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
218 ;; ) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
219 ;; For example, commands operating on two sets of files, A and B. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
220 ;; Or marking files with digits 0-9. This could implicate |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
221 ;; concentric sets or an order for the marked files. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
222 ;; The code depends on dynamic scoping on the marker char. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
223 "In Dired, the current mark character. |
64193
7fc36b055c09
(dired-marker-char): Avoid quotations for `do' and `mark'
Juri Linkov <juri@jurta.org>
parents:
64091
diff
changeset
|
224 This is what the do-commands look for, and what the mark-commands store.") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
225 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
226 (defvar dired-del-marker ?D |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
227 "Character used to flag files for deletion.") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
228 |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
229 (defvar dired-shrink-to-fit t |
878
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
230 ;; I see no reason ever to make this nil -- rms. |
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
231 ;; (> baud-rate search-slow-speed) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
232 "Non-nil means Dired shrinks the display buffer to fit the marked files.") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
233 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
234 (defvar dired-flagging-regexp nil);; Last regexp used to flag files. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
235 |
878
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
236 (defvar dired-file-version-alist) |
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
237 |
49772
b774f5818dbd
(dired-directory): Add autoload cookie.
Markus Rost <rost@math.uni-bielefeld.de>
parents:
49625
diff
changeset
|
238 ;;;###autoload |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
239 (defvar dired-directory nil |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
240 "The directory name or wildcard spec that this dired directory lists. |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
241 Local to each dired buffer. May be a list, in which case the car is the |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
242 directory name and the cdr is the list of files to mention. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
243 The directory name must be absolute, but need not be fully expanded.") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
244 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
245 (defvar dired-actual-switches nil |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
246 "The value of `dired-listing-switches' used to make this buffer's text.") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
247 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
248 (defvar dired-re-inode-size "[0-9 \t]*" |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
249 "Regexp for optional initial inode and file size as made by `ls -i -s'.") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
250 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
251 ;; These regexps must be tested at beginning-of-line, but are also |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
252 ;; used to search for next matches, so neither omitting "^" nor |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
253 ;; replacing "^" by "\n" (to make it slightly faster) will work. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
254 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
255 (defvar dired-re-mark "^[^ \n]") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
256 ;; "Regexp matching a marked line. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
257 ;; Important: the match ends just after the marker." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
258 (defvar dired-re-maybe-mark "^. ") |
25558
76420959ca81
(dired-re-dir, dired-re-sym): Don't match DOS drive
Eli Zaretskii <eliz@gnu.org>
parents:
25415
diff
changeset
|
259 ;; The [^:] part after "d" and "l" is to avoid confusion with the |
76420959ca81
(dired-re-dir, dired-re-sym): Don't match DOS drive
Eli Zaretskii <eliz@gnu.org>
parents:
25415
diff
changeset
|
260 ;; DOS/Windows-style drive letters in directory names, like in "d:/foo". |
76420959ca81
(dired-re-dir, dired-re-sym): Don't match DOS drive
Eli Zaretskii <eliz@gnu.org>
parents:
25415
diff
changeset
|
261 (defvar dired-re-dir (concat dired-re-maybe-mark dired-re-inode-size "d[^:]")) |
76420959ca81
(dired-re-dir, dired-re-sym): Don't match DOS drive
Eli Zaretskii <eliz@gnu.org>
parents:
25415
diff
changeset
|
262 (defvar dired-re-sym (concat dired-re-maybe-mark dired-re-inode-size "l[^:]")) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
263 (defvar dired-re-exe;; match ls permission string of an executable file |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
264 (mapconcat (function |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
265 (lambda (x) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
266 (concat dired-re-maybe-mark dired-re-inode-size x))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
267 '("-[-r][-w][xs][-r][-w].[-r][-w]." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
268 "-[-r][-w].[-r][-w][xs][-r][-w]." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
269 "-[-r][-w].[-r][-w].[-r][-w][xst]") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
270 "\\|")) |
9098
d012275093c1
(dired-re-perms): Accept various file type letters.
Richard M. Stallman <rms@gnu.org>
parents:
9076
diff
changeset
|
271 (defvar dired-re-perms "[-bcdlps][-r][-w].[-r][-w].[-r][-w].") |
51539
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
272 (defvar dired-re-dot "^.* \\.\\.?/?$") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
273 |
55937
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
274 ;; The subdirectory names in the next two lists are expanded. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
275 (defvar dired-subdir-alist nil |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
276 "Association list of subdirectories and their buffer positions. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
277 Each subdirectory has an element: (DIRNAME . STARTMARKER). |
1170 | 278 The order of elements is the reverse of the order in the buffer. |
279 In simple cases, this list contains one element.") | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
280 |
55937
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
281 (defvar dired-switches-alist nil |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
282 "Keeps track of which switches to use for inserted subdirectories. |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
283 This is an alist of the form (SUBDIR . SWITCHES).") |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
284 (make-variable-buffer-local 'dired-switches-alist) |
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
285 |
68267
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
286 (defvaralias 'dired-move-to-filename-regexp |
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
287 'directory-listing-before-filename-regexp) |
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
288 |
6864
7c689b8065bd
(dired-subdir-regexp): Allow a space in dir name.
Richard M. Stallman <rms@gnu.org>
parents:
6817
diff
changeset
|
289 (defvar dired-subdir-regexp "^. \\([^\n\r]+\\)\\(:\\)[\n\r]" |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
290 "Regexp matching a maybe hidden subdirectory line in `ls -lR' output. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
291 Subexpression 1 is the subdirectory proper, no trailing colon. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
292 The match starts at the beginning of the line and ends after the end |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
293 of the line (\\n or \\r). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
294 Subexpression 2 must end right before the \\n or \\r.") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
295 |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
296 (defgroup dired-faces nil |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
297 "Faces used by Dired." |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
298 :group 'dired |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
299 :group 'faces) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
300 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
301 (defface dired-header |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
302 '((t (:inherit font-lock-type-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
303 "Face used for directory headers." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
304 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
305 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
306 (defvar dired-header-face 'dired-header |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
307 "Face name used for directory headers.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
308 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
309 (defface dired-mark |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
310 '((t (:inherit font-lock-constant-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
311 "Face used for dired marks." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
312 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
313 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
314 (defvar dired-mark-face 'dired-mark |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
315 "Face name used for dired marks.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
316 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
317 (defface dired-marked |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
318 '((t (:inherit font-lock-warning-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
319 "Face used for marked files." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
320 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
321 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
322 (defvar dired-marked-face 'dired-marked |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
323 "Face name used for marked files.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
324 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
325 (defface dired-flagged |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
326 '((t (:inherit font-lock-warning-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
327 "Face used for flagged files." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
328 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
329 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
330 (defvar dired-flagged-face 'dired-flagged |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
331 "Face name used for flagged files.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
332 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
333 (defface dired-warning |
78759
f85317d85f18
(dired-warning): Inherit from font-lock-warning-face to
Martin Rudalics <rudalics@gmx.at>
parents:
78462
diff
changeset
|
334 ;; Inherit from font-lock-warning-face since with min-colors 8 |
f85317d85f18
(dired-warning): Inherit from font-lock-warning-face to
Martin Rudalics <rudalics@gmx.at>
parents:
78462
diff
changeset
|
335 ;; font-lock-comment-face is not colored any more. |
f85317d85f18
(dired-warning): Inherit from font-lock-warning-face to
Martin Rudalics <rudalics@gmx.at>
parents:
78462
diff
changeset
|
336 '((t (:inherit font-lock-warning-face))) |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
337 "Face used to highlight a part of a buffer that needs user attention." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
338 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
339 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
340 (defvar dired-warning-face 'dired-warning |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
341 "Face name used for a part of a buffer that needs user attention.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
342 |
80336
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
343 (defface dired-perm-write |
79074
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
344 '((((type w32 pc)) :inherit default) ;; These default to rw-rw-rw. |
80336
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
345 ;; Inherit from font-lock-comment-delimiter-face since with min-colors 8 |
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
346 ;; font-lock-comment-face is not colored any more. |
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
347 (t (:inherit font-lock-comment-delimiter-face))) |
79074
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
348 "Face used to highlight permissions of group- and world-writable files." |
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
349 :group 'dired-faces |
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
350 :version "22.2") |
80336
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
351 (defvar dired-perm-write-face 'dired-perm-write |
79074
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
352 "Face name used for permissions of group- and world-writable files.") |
6b97f0761688
(dired-warn-writable): New face.
Eli Zaretskii <eliz@gnu.org>
parents:
78759
diff
changeset
|
353 |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
354 (defface dired-directory |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
355 '((t (:inherit font-lock-function-name-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
356 "Face used for subdirectories." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
357 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
358 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
359 (defvar dired-directory-face 'dired-directory |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
360 "Face name used for subdirectories.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
361 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
362 (defface dired-symlink |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
363 '((t (:inherit font-lock-keyword-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
364 "Face used for symbolic links." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
365 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
366 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
367 (defvar dired-symlink-face 'dired-symlink |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
368 "Face name used for symbolic links.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
369 |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
370 (defface dired-ignored |
63052
ac4dcbb00c51
* dired.el (dired-ignored): Inherit from `shadow' face.
Juri Linkov <juri@jurta.org>
parents:
62658
diff
changeset
|
371 '((t (:inherit shadow))) |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
372 "Face used for files suffixed with `completion-ignored-extensions'." |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
373 :group 'dired-faces |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
59786
diff
changeset
|
374 :version "22.1") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
375 (defvar dired-ignored-face 'dired-ignored |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
376 "Face name used for files suffixed with `completion-ignored-extensions'.") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
377 |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
378 (defvar dired-font-lock-keywords |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
379 (list |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
380 ;; |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
381 ;; Dired marks. |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
382 (list dired-re-mark '(0 dired-mark-face)) |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
383 ;; |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
384 ;; We make heavy use of MATCH-ANCHORED, since the regexps don't identify the |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
385 ;; file name itself. We search for Dired defined regexps, and then use the |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
386 ;; Dired defined function `dired-move-to-filename' before searching for the |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
387 ;; simple regexp ".+". It is that regexp which matches the file name. |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
388 ;; |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
389 ;; Marked files. |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
390 (list (concat "^[" (char-to-string dired-marker-char) "]") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
391 '(".+" (dired-move-to-filename) nil (0 dired-marked-face))) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
392 ;; |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
393 ;; Flagged files. |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
394 (list (concat "^[" (char-to-string dired-del-marker) "]") |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
395 '(".+" (dired-move-to-filename) nil (0 dired-flagged-face))) |
19320
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
396 ;; People who are paranoid about security would consider this more |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
397 ;; important than other things such as whether it is a directory. |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
398 ;; But we don't want to encourage paranoia, so our default |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
399 ;; should be what's most useful for non-paranoids. -- rms. |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
400 ;;; ;; |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
401 ;;; ;; Files that are group or world writable. |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
402 ;;; (list (concat dired-re-maybe-mark dired-re-inode-size |
2e448d41aa55
(dired-font-lock-keywords): Don't specially highlight
Richard M. Stallman <rms@gnu.org>
parents:
18824
diff
changeset
|
403 ;;; "\\([-d]\\(....w....\\|.......w.\\)\\)") |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
404 ;;; '(1 dired-warning-face) |
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
405 ;;; '(".+" (dired-move-to-filename) nil (0 dired-warning-face))) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
406 ;; However, we don't need to highlight the file name, only the |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
407 ;; permissions, to win generally. -- fx. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
408 ;; Fixme: we could also put text properties on the permission |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
409 ;; fields with keymaps to frob the permissions, somewhat a la XEmacs. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
410 (list (concat dired-re-maybe-mark dired-re-inode-size |
54685
06ef8e8088f4
(dired-font-lock-keywords): Fix permission regexps.
Juri Linkov <juri@jurta.org>
parents:
54663
diff
changeset
|
411 "[-d]....\\(w\\)....") ; group writable |
80336
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
412 '(1 dired-perm-write-face)) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
413 (list (concat dired-re-maybe-mark dired-re-inode-size |
54685
06ef8e8088f4
(dired-font-lock-keywords): Fix permission regexps.
Juri Linkov <juri@jurta.org>
parents:
54663
diff
changeset
|
414 "[-d].......\\(w\\).") ; world writable |
80336
3c2f95ff2ff3
(dired-warn-writable): Rename to `dired-perm-write'.
Juri Linkov <juri@jurta.org>
parents:
80177
diff
changeset
|
415 '(1 dired-perm-write-face)) |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
416 ;; |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
417 ;; Subdirectories. |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
418 (list dired-re-dir |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
419 '(".+" (dired-move-to-filename) nil (0 dired-directory-face))) |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
420 ;; |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
421 ;; Symbolic links. |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
422 (list dired-re-sym |
54780
1927e78ea49d
(dired-faces): New defgroup.
Juri Linkov <juri@jurta.org>
parents:
54685
diff
changeset
|
423 '(".+" (dired-move-to-filename) nil (0 dired-symlink-face))) |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
424 ;; |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
425 ;; Files suffixed with `completion-ignored-extensions'. |
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
426 '(eval . |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
427 ;; It is quicker to first find just an extension, then go back to the |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
428 ;; start of that file name. So we do this complex MATCH-ANCHORED form. |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
429 (list (concat "\\(" (regexp-opt completion-ignored-extensions) "\\|#\\)$") |
62616
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
430 '(".+" (dired-move-to-filename) nil (0 dired-ignored-face)))) |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
431 ;; |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
432 ;; Files suffixed with `completion-ignored-extensions' |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
433 ;; plus a character put in by -F. |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
434 '(eval . |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
435 (list (concat "\\(" (regexp-opt completion-ignored-extensions) |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
436 "\\|#\\)[*=|]$") |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
437 '(".+" (progn |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
438 (end-of-line) |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
439 ;; If the last character is not part of the filename, |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
440 ;; move back to the start of the filename |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
441 ;; so it can be fontified. |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
442 ;; Otherwise, leave point at the end of the line; |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
443 ;; that way, nothing is fontified. |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
444 (unless (get-text-property (1- (point)) 'mouse-face) |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
445 (dired-move-to-filename))) |
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
446 nil (0 dired-ignored-face)))) |
100098
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
447 ;; |
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
448 ;; Explicitly put the default face on file names ending in a colon to |
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
449 ;; avoid fontifying them as directory header. |
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
450 (list (concat dired-re-maybe-mark dired-re-inode-size dired-re-perms ".*:$") |
100241
1dccd11615ba
(dired-font-lock-keywords): Fix last change.
Andreas Schwab <schwab@suse.de>
parents:
100171
diff
changeset
|
451 '(".+" (dired-move-to-filename) nil (0 'default))) |
100098
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
452 ;; |
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
453 ;; Directory headers. |
2705d9a106f9
(dired-font-lock-keywords): Avoid fontifying file names
Andreas Schwab <schwab@suse.de>
parents:
99460
diff
changeset
|
454 (list dired-subdir-regexp '(1 dired-header-face)) |
62616
1f84b1fd2560
(dired-font-lock-keywords): Fontify files with junk extensions
Richard M. Stallman <rms@gnu.org>
parents:
62439
diff
changeset
|
455 ) |
16454
76b0d4d3371e
Tweak dired-font-lock-keywords.
Simon Marshall <simon@gnu.org>
parents:
16090
diff
changeset
|
456 "Additional expressions to highlight in Dired mode.") |
63934
44925622f813
(dnd-protocol-alist): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents:
63052
diff
changeset
|
457 |
44925622f813
(dnd-protocol-alist): Add defvar.
Richard M. Stallman <rms@gnu.org>
parents:
63052
diff
changeset
|
458 (defvar dnd-protocol-alist) |
35607 | 459 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
460 ;;; Macros must be defined before they are used, for the byte compiler. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
461 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
462 (defmacro dired-mark-if (predicate msg) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
463 "Mark all files for which PREDICATE evals to non-nil. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
464 PREDICATE is evaluated on each line, with point at beginning of line. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
465 MSG is a noun phrase for the type of files being marked. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
466 It should end with a noun that can be pluralized by adding `s'. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
467 Return value is the number of files marked, or nil if none were marked." |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
468 `(let ((inhibit-read-only t) count) |
41608
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
469 (save-excursion |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
470 (setq count 0) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
471 (if ,msg (message "Marking %ss..." ,msg)) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
472 (goto-char (point-min)) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
473 (while (not (eobp)) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
474 (if ,predicate |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
475 (progn |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
476 (delete-char 1) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
477 (insert dired-marker-char) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
478 (setq count (1+ count)))) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
479 (forward-line 1)) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
480 (if ,msg (message "%s %s%s %s%s." |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
481 count |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
482 ,msg |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
483 (dired-plural-s count) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
484 (if (eq dired-marker-char ?\040) "un" "") |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
485 (if (eq dired-marker-char dired-del-marker) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
486 "flagged" "marked")))) |
45db352a0971
Converted backquote to the new style.
Sam Steingold <sds@gnu.org>
parents:
41307
diff
changeset
|
487 (and (> count 0) count))) |
661 | 488 |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
489 (defmacro dired-map-over-marks (body arg &optional show-progress |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
490 distinguish-one-marked) |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
491 "Eval BODY with point on each marked line. Return a list of BODY's results. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
492 If no marked file could be found, execute BODY on the current line. |
99051
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
493 ARG, if non-nil, specifies the files to use instead of the marked files. |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
494 If ARG is an integer, use the next ARG (or previous -ARG, if |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
495 ARG<0) files. In that case, point is dragged along. This is |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
496 so that commands on the next ARG (instead of the marked) files |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
497 can be chained easily. |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
498 For any other non-nil value of ARG, use the current file. |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
499 If optional third arg SHOW-PROGRESS evaluates to non-nil, |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
500 redisplay the dired buffer after each file is processed. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
501 No guarantee is made about the position on the marked line. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
502 BODY must ensure this itself if it depends on this. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
503 Search starts at the beginning of the buffer, thus the car of the list |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
504 corresponds to the line nearest to the buffer's bottom. This |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
505 is also true for (positive and negative) integer values of ARG. |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
506 BODY should not be too long as it is expanded four times. |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
507 |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
508 If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file, |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
509 return (t FILENAME) instead of (FILENAME)." |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
510 ;; |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
511 ;;Warning: BODY must not add new lines before point - this may cause an |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
512 ;;endless loop. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
513 ;;This warning should not apply any longer, sk 2-Sep-1991 14:10. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
514 `(prog1 |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
515 (let ((inhibit-read-only t) case-fold-search found results) |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
516 (if ,arg |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
517 (if (integerp ,arg) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
518 (progn ;; no save-excursion, want to move point. |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
519 (dired-repeat-over-lines |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
520 ,arg |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
521 (function (lambda () |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
522 (if ,show-progress (sit-for 0)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
523 (setq results (cons ,body results))))) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
524 (if (< ,arg 0) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
525 (nreverse results) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
526 results)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
527 ;; non-nil, non-integer ARG means use current file: |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
528 (list ,body)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
529 (let ((regexp (dired-marker-regexp)) next-position) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
530 (save-excursion |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
531 (goto-char (point-min)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
532 ;; remember position of next marked file before BODY |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
533 ;; can insert lines before the just found file, |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
534 ;; confusing us by finding the same marked file again |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
535 ;; and again and... |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
536 (setq next-position (and (re-search-forward regexp nil t) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
537 (point-marker)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
538 found (not (null next-position))) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
539 (while next-position |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
540 (goto-char next-position) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
541 (if ,show-progress (sit-for 0)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
542 (setq results (cons ,body results)) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
543 ;; move after last match |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
544 (goto-char next-position) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
545 (forward-line 1) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
546 (set-marker next-position nil) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
547 (setq next-position (and (re-search-forward regexp nil t) |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
548 (point-marker))))) |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
549 (if (and ,distinguish-one-marked (= (length results) 1)) |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
550 (setq results (cons t results))) |
32027
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
551 (if found |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
552 results |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
553 (list ,body))))) |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
554 ;; save-excursion loses, again |
638a006b3c47
(dired-map-over-marks): Use modern backquotes and docstring.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
31762
diff
changeset
|
555 (dired-move-to-filename))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
556 |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
557 (defun dired-get-marked-files (&optional localp arg filter distinguish-one-marked) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
558 "Return the marked files' names as list of strings. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
559 The list is in the same order as the buffer, that is, the car is the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
560 first marked file. |
44234
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
561 Values returned are normally absolute file names. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
562 Optional arg LOCALP as in `dired-get-filename'. |
99051
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
563 Optional second argument ARG, if non-nil, specifies files near |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
564 point instead of marked files. It usually comes from the prefix |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
565 argument. |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
566 If ARG is an integer, use the next ARG files. |
23e2db0d1534
(dired-get-marked-files, dired-map-over-marks): Doc fixes.
Chong Yidong <cyd@stupidchicken.com>
parents:
98004
diff
changeset
|
567 Any other non-nil value means to use the current file instead. |
44234
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
568 Optional third argument FILTER, if non-nil, is a function to select |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
569 some of the files--those for which (funcall FILTER FILENAME) is non-nil. |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
570 |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
571 If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file, |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
572 return (t FILENAME) instead of (FILENAME). |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
573 Don't use that together with FILTER." |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
574 (let* ((all-of-them |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
575 (save-excursion |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
576 (dired-map-over-marks |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
577 (dired-get-filename localp) |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
578 arg nil distinguish-one-marked))) |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
579 result) |
44234
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
580 (if (not filter) |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
581 (if (and distinguish-one-marked (eq (car all-of-them) t)) |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
582 all-of-them |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
583 (nreverse all-of-them)) |
44234
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
584 (dolist (file all-of-them) |
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
585 (if (funcall filter file) |
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
586 (push file result))) |
acb1f97fda8f
(dired-get-marked-files): New arg FILTER allows selection of some files.
Richard M. Stallman <rms@gnu.org>
parents:
44212
diff
changeset
|
587 result))) |
35607 | 588 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
589 ;; The dired command |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
590 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
591 (defun dired-read-dir-and-switches (str) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
592 ;; For use in interactive. |
99460
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
593 (reverse (list |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
594 (if current-prefix-arg |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
595 (read-string "Dired listing switches: " |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
596 dired-listing-switches)) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
597 ;; If a dialog is about to be used, call read-directory-name so |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
598 ;; the dialog code knows we want directories. Some dialogs can |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
599 ;; only select directories or files when popped up, not both. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
600 (if (next-read-file-uses-dialog-p) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
601 (read-directory-name (format "Dired %s(directory): " str) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
602 nil default-directory nil) |
106239
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
603 (read-file-name (format "Dired %s(directory): " str) |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
604 nil default-directory nil))))) |
99460
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
605 |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
606 ;; We want to switch to a more sophisticated version of |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
607 ;; dired-read-dir-and-switches like the following, if there is a way |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
608 ;; to make it more intuitive. See bug#1285. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
609 |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
610 ;; (defun dired-read-dir-and-switches (str) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
611 ;; ;; For use in interactive. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
612 ;; (reverse |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
613 ;; (list |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
614 ;; (if current-prefix-arg |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
615 ;; (read-string "Dired listing switches: " |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
616 ;; dired-listing-switches)) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
617 ;; ;; If a dialog is about to be used, call read-directory-name so |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
618 ;; ;; the dialog code knows we want directories. Some dialogs can |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
619 ;; ;; only select directories or files when popped up, not both. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
620 ;; (if (next-read-file-uses-dialog-p) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
621 ;; (read-directory-name (format "Dired %s(directory): " str) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
622 ;; nil default-directory nil) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
623 ;; (let ((cie ())) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
624 ;; (dolist (ext completion-ignored-extensions) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
625 ;; (if (eq ?/ (aref ext (1- (length ext)))) (push ext cie))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
626 ;; (setq cie (concat (regexp-opt cie "\\(?:") "\\'")) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
627 ;; (lexical-let* ((default (and buffer-file-name |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
628 ;; (abbreviate-file-name buffer-file-name))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
629 ;; (cie cie) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
630 ;; (completion-table |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
631 ;; ;; We need a mix of read-file-name and |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
632 ;; ;; read-directory-name so that completion to directories |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
633 ;; ;; is preferred, but if the user wants to enter a global |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
634 ;; ;; pattern, he can still use completion on filenames to |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
635 ;; ;; help him write the pattern. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
636 ;; ;; Essentially, we want to use |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
637 ;; ;; (completion-table-with-predicate |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
638 ;; ;; 'read-file-name-internal 'file-directory-p nil) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
639 ;; ;; but that doesn't work because read-file-name-internal |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
640 ;; ;; does not obey its `predicate' argument. |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
641 ;; (completion-table-in-turn |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
642 ;; (lambda (str pred action) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
643 ;; (let ((read-file-name-predicate |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
644 ;; (lambda (f) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
645 ;; (and (not (member f '("./" "../"))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
646 ;; ;; Hack! Faster than file-directory-p! |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
647 ;; (eq (aref f (1- (length f))) ?/) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
648 ;; (not (string-match cie f)))))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
649 ;; (complete-with-action |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
650 ;; action 'read-file-name-internal str nil))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
651 ;; 'read-file-name-internal))) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
652 ;; (minibuffer-with-setup-hook |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
653 ;; (lambda () |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
654 ;; (setq minibuffer-default default) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
655 ;; (setq minibuffer-completion-table completion-table)) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
656 ;; (read-file-name (format "Dired %s(directory): " str) |
68e0d804e313
(dired-read-dir-and-switches): Revert to 2007-11-22 version
Chong Yidong <cyd@stupidchicken.com>
parents:
99051
diff
changeset
|
657 ;; nil default-directory nil)))))))) |
661 | 658 |
106239
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
659 (defun dired-file-name-at-point () |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
660 "Try to get a file name at point in the current dired buffer. |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
661 This hook is inteneded to be put in `file-name-at-point-functions'." |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
662 (let ((filename (dired-get-filename nil t))) |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
663 (when filename |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
664 (if (file-directory-p filename) |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
665 (file-name-as-directory (abbreviate-file-name filename)) |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
666 (abbreviate-file-name filename))))) |
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
667 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
668 ;;;###autoload (define-key ctl-x-map "d" 'dired) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
669 ;;;###autoload |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
670 (defun dired (dirname &optional switches) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
671 "\"Edit\" directory DIRNAME--delete, rename, print, etc. some files in it. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
672 Optional second argument SWITCHES specifies the `ls' options used. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
673 \(Interactively, use a prefix argument to be able to specify SWITCHES.) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
674 Dired displays a list of files in DIRNAME (which may also have |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
675 shell wildcards appended to select certain files). If DIRNAME is a cons, |
13888 | 676 its first element is taken as the directory name and the rest as an explicit |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
677 list of files to make directory entries for. |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
678 \\<dired-mode-map>\ |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
679 You can move around in it with the usual commands. |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
680 You can flag files for deletion with \\[dired-flag-file-deletion] and then |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
681 delete them by typing \\[dired-do-flagged-delete]. |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
682 Type \\[describe-mode] after entering Dired for more info. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
683 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
684 If DIRNAME is already in a dired buffer, that buffer is used without refresh." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
685 ;; Cannot use (interactive "D") because of wildcards. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
686 (interactive (dired-read-dir-and-switches "")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
687 (switch-to-buffer (dired-noselect dirname switches))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
688 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
689 ;;;###autoload (define-key ctl-x-4-map "d" 'dired-other-window) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
690 ;;;###autoload |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
691 (defun dired-other-window (dirname &optional switches) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
692 "\"Edit\" directory DIRNAME. Like `dired' but selects in another window." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
693 (interactive (dired-read-dir-and-switches "in other window ")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
694 (switch-to-buffer-other-window (dired-noselect dirname switches))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
695 |
3148
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
696 ;;;###autoload (define-key ctl-x-5-map "d" 'dired-other-frame) |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
697 ;;;###autoload |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
698 (defun dired-other-frame (dirname &optional switches) |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
699 "\"Edit\" directory DIRNAME. Like `dired' but makes a new frame." |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
700 (interactive (dired-read-dir-and-switches "in other frame ")) |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
701 (switch-to-buffer-other-frame (dired-noselect dirname switches))) |
a4c37b95f19f
(dired-other-frame): New function, with binding.
Richard M. Stallman <rms@gnu.org>
parents:
3102
diff
changeset
|
702 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
703 ;;;###autoload |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
704 (defun dired-noselect (dir-or-list &optional switches) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
705 "Like `dired' but returns the dired buffer as value, does not select it." |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
706 (or dir-or-list (setq dir-or-list default-directory)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
707 ;; This loses the distinction between "/foo/*/" and "/foo/*" that |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
708 ;; some shells make: |
17431
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
709 (let (dirname initially-was-dirname) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
710 (if (consp dir-or-list) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
711 (setq dirname (car dir-or-list)) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
712 (setq dirname dir-or-list)) |
17431
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
713 (setq initially-was-dirname |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
714 (string= (file-name-as-directory dirname) dirname)) |
8403
941432da0ff3
(dired-noselect): Call abbreviate-file-name here.
Richard M. Stallman <rms@gnu.org>
parents:
8321
diff
changeset
|
715 (setq dirname (abbreviate-file-name |
941432da0ff3
(dired-noselect): Call abbreviate-file-name here.
Richard M. Stallman <rms@gnu.org>
parents:
8321
diff
changeset
|
716 (expand-file-name (directory-file-name dirname)))) |
14947
dde6603e020f
(dired-noselect): Resolve symbolic links in argument.
Richard M. Stallman <rms@gnu.org>
parents:
14891
diff
changeset
|
717 (if find-file-visit-truename |
dde6603e020f
(dired-noselect): Resolve symbolic links in argument.
Richard M. Stallman <rms@gnu.org>
parents:
14891
diff
changeset
|
718 (setq dirname (file-truename dirname))) |
17431
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
719 ;; If the argument was syntactically a directory name not a file name, |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
720 ;; or if it happens to name a file that is a directory, |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
721 ;; convert it syntactically to a directory name. |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
722 ;; The reason for checking initially-was-dirname |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
723 ;; and not just file-directory-p |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
724 ;; is that file-directory-p is slow over ftp. |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
725 (if (or initially-was-dirname (file-directory-p dirname)) |
cc5b0995866f
(dired-noselect): Avoid calling file-directory-p
Richard M. Stallman <rms@gnu.org>
parents:
17206
diff
changeset
|
726 (setq dirname (file-name-as-directory dirname))) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
727 (if (consp dir-or-list) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
728 (setq dir-or-list (cons dirname (cdr dir-or-list))) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
729 (setq dir-or-list dirname)) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
730 (dired-internal-noselect dir-or-list switches))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
731 |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
732 ;; The following is an internal dired function. It returns non-nil if |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
733 ;; the directory visited by the current dired buffer has changed on |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
734 ;; disk. DIRNAME should be the directory name of that directory. |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
735 (defun dired-directory-changed-p (dirname) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
736 (not (let ((attributes (file-attributes dirname)) |
54542
0b174cfd1511
(dired-directory-changed-p): Reindent.
Luc Teirlinck <teirllm@auburn.edu>
parents:
54533
diff
changeset
|
737 (modtime (visited-file-modtime))) |
0b174cfd1511
(dired-directory-changed-p): Reindent.
Luc Teirlinck <teirllm@auburn.edu>
parents:
54533
diff
changeset
|
738 (or (eq modtime 0) |
0b174cfd1511
(dired-directory-changed-p): Reindent.
Luc Teirlinck <teirllm@auburn.edu>
parents:
54533
diff
changeset
|
739 (not (eq (car attributes) t)) |
56423
fb8b1f758f89
(dired-directory-changed-p): `visited-file-modtime' now returns a
Luc Teirlinck <teirllm@auburn.edu>
parents:
56035
diff
changeset
|
740 (equal (nth 5 attributes) modtime))))) |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
741 |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
742 (defun dired-buffer-stale-p (&optional noconfirm) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
743 "Return non-nil if current dired buffer needs updating. |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
744 If NOCONFIRM is non-nil, then this function always returns nil |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
745 for a remote directory. This feature is used by Auto Revert Mode." |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
746 (let ((dirname |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
747 (if (consp dired-directory) (car dired-directory) dired-directory))) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
748 (and (stringp dirname) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
749 (not (when noconfirm (file-remote-p dirname))) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
750 (file-readable-p dirname) |
97636
6fab4ff7571d
(dired-buffer-stale-p): Do not revert buffer that can be written.
Martin Rudalics <rudalics@gmx.at>
parents:
97422
diff
changeset
|
751 ;; Do not auto-revert when the dired buffer can be currently |
6fab4ff7571d
(dired-buffer-stale-p): Do not revert buffer that can be written.
Martin Rudalics <rudalics@gmx.at>
parents:
97422
diff
changeset
|
752 ;; written by the user as in `wdired-mode'. |
6fab4ff7571d
(dired-buffer-stale-p): Do not revert buffer that can be written.
Martin Rudalics <rudalics@gmx.at>
parents:
97422
diff
changeset
|
753 buffer-read-only |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
754 (dired-directory-changed-p dirname)))) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
755 |
106410
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
756 ;;;###autoload |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
757 (defcustom dired-auto-revert-buffer nil |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
758 "Automatically revert dired buffer on revisiting. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
759 If t, revisiting an existing dired buffer automatically reverts it. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
760 If its value is a function, call this function with the directory |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
761 name as single argument and revert the buffer if it returns non-nil. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
762 Otherwise, a message offering to revert the changed dired buffer |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
763 is displayed. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
764 Note that this is not the same as `auto-revert-mode' that |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
765 periodically reverts at specified time intervals." |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
766 :type '(choice |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
767 (const :tag "Don't revert" nil) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
768 (const :tag "Always revert visited dired buffer" t) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
769 (const :tag "Revert changed dired buffer" dired-directory-changed-p) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
770 (function :tag "Predicate function")) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
771 :group 'dired |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
772 :version "23.2") |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
773 |
12996
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
774 (defun dired-internal-noselect (dir-or-list &optional switches mode) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
775 ;; If there is an existing dired buffer for DIRNAME, just leave |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
776 ;; buffer as it is (don't even call dired-revert). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
777 ;; This saves time especially for deep trees or with ange-ftp. |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
778 ;; The user can type `g' easily, and it is more consistent with find-file. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
779 ;; But if SWITCHES are given they are probably different from the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
780 ;; buffer's old value, so call dired-sort-other, which does |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
781 ;; revert the buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
782 ;; A pity we can't possibly do "Directory has changed - refresh? " |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
783 ;; like find-file does. |
12996
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
784 ;; Optional argument MODE is passed to dired-find-buffer-nocreate, |
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
785 ;; see there. |
104681
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
786 (let* ((old-buf (current-buffer)) |
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
787 (dirname (if (consp dir-or-list) (car dir-or-list) dir-or-list)) |
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
788 ;; Look for an existing buffer. |
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
789 (buffer (dired-find-buffer-nocreate dirname mode)) |
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
790 ;; Note that buffer already is in dired-mode, if found. |
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
791 (new-buffer-p (null buffer))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
792 (or buffer |
104681
91afee51b252
* textmodes/ispell.el (ispell-check-version, ispell-send-string):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
103234
diff
changeset
|
793 (setq buffer (create-file-buffer (directory-file-name dirname)))) |
661 | 794 (set-buffer buffer) |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
795 (if (not new-buffer-p) ; existing buffer ... |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
796 (cond (switches ; ... but new switches |
13010
06f8e805121d
(dired-internal-noselect): Set dired-directory when refreshing a buffer
André Spiegel <spiegel@gnu.org>
parents:
12996
diff
changeset
|
797 ;; file list may have changed |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
798 (setq dired-directory dir-or-list) |
13010
06f8e805121d
(dired-internal-noselect): Set dired-directory when refreshing a buffer
André Spiegel <spiegel@gnu.org>
parents:
12996
diff
changeset
|
799 ;; this calls dired-revert |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
800 (dired-sort-other switches)) |
106410
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
801 ;; Always revert regardless of whether it has changed or not. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
802 ((eq dired-auto-revert-buffer t) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
803 (revert-buffer)) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
804 ;; Revert when predicate function returns non-nil. |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
805 ((functionp dired-auto-revert-buffer) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
806 (when (funcall dired-auto-revert-buffer dirname) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
807 (revert-buffer) |
c1162f7a37aa
(dired-auto-revert-buffer): New defcustom.
Juri Linkov <juri@jurta.org>
parents:
106403
diff
changeset
|
808 (message "Changed directory automatically updated"))) |
13010
06f8e805121d
(dired-internal-noselect): Set dired-directory when refreshing a buffer
André Spiegel <spiegel@gnu.org>
parents:
12996
diff
changeset
|
809 ;; If directory has changed on disk, offer to revert. |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
810 ((when (dired-directory-changed-p dirname) |
14309
d546dc4e0c0b
(dired-internal-noselect): Pass proper format string to message.
Karl Heuer <kwzh@gnu.org>
parents:
14169
diff
changeset
|
811 (message "%s" |
14361 | 812 (substitute-command-keys |
813 "Directory has changed on disk; type \\[revert-buffer] to update Dired"))))) | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
814 ;; Else a new buffer |
5113
193cd8b36b41
(dired-readin-insert): Expand default-directory and dirname
Richard M. Stallman <rms@gnu.org>
parents:
5112
diff
changeset
|
815 (setq default-directory |
17439
5d1881f8c7f1
(dired-internal-noselect): When setting default-directory,
Richard M. Stallman <rms@gnu.org>
parents:
17431
diff
changeset
|
816 ;; We can do this unconditionally |
5d1881f8c7f1
(dired-internal-noselect): When setting default-directory,
Richard M. Stallman <rms@gnu.org>
parents:
17431
diff
changeset
|
817 ;; because dired-noselect ensures that the name |
5d1881f8c7f1
(dired-internal-noselect): When setting default-directory,
Richard M. Stallman <rms@gnu.org>
parents:
17431
diff
changeset
|
818 ;; is passed in directory name syntax |
5d1881f8c7f1
(dired-internal-noselect): When setting default-directory,
Richard M. Stallman <rms@gnu.org>
parents:
17431
diff
changeset
|
819 ;; if it was the name of a directory at all. |
5d1881f8c7f1
(dired-internal-noselect): When setting default-directory,
Richard M. Stallman <rms@gnu.org>
parents:
17431
diff
changeset
|
820 (file-name-directory dirname)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
821 (or switches (setq switches dired-listing-switches)) |
22355
80bf6e97360b
(dired-internal-noselect): Call either dired-mode or MODE, but not both.
André Spiegel <spiegel@gnu.org>
parents:
22206
diff
changeset
|
822 (if mode (funcall mode) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
823 (dired-mode dir-or-list switches)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
824 ;; default-directory and dired-actual-switches are set now |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
825 ;; (buffer-local), so we can call dired-readin: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
826 (let ((failed t)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
827 (unwind-protect |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
828 (progn (dired-readin) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
829 (setq failed nil)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
830 ;; dired-readin can fail if parent directories are inaccessible. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
831 ;; Don't leave an empty buffer around in that case. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
832 (if failed (kill-buffer buffer)))) |
661 | 833 (goto-char (point-min)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
834 (dired-initial-position dirname)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
835 (set-buffer old-buf) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
836 buffer)) |
661 | 837 |
30108
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
838 (defvar dired-buffers nil |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
839 ;; Enlarged by dired-advertise |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
840 ;; Queried by function dired-buffers-for-dir. When this detects a |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
841 ;; killed buffer, it is removed from this list. |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
842 "Alist of expanded directories and their associated dired buffers.") |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
843 |
12996
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
844 (defun dired-find-buffer-nocreate (dirname &optional mode) |
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
845 ;; This differs from dired-buffers-for-dir in that it does not consider |
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
846 ;; subdirs of default-directory and searches for the first match only. |
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
847 ;; Also, the major mode must be MODE. |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
848 (setq dirname (expand-file-name dirname)) |
11970
a99407606405
(dired-find-buffer-nocreate): Check only buffers in
Karl Heuer <kwzh@gnu.org>
parents:
11587
diff
changeset
|
849 (let (found (blist dired-buffers)) ; was (buffer-list) |
12996
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
850 (or mode (setq mode 'dired-mode)) |
661 | 851 (while blist |
12045
ad681fd69905
(dired-find-buffer-nocreate): Ignore dead buffers.
Karl Heuer <kwzh@gnu.org>
parents:
12001
diff
changeset
|
852 (if (null (buffer-name (cdr (car blist)))) |
ad681fd69905
(dired-find-buffer-nocreate): Ignore dead buffers.
Karl Heuer <kwzh@gnu.org>
parents:
12001
diff
changeset
|
853 (setq blist (cdr blist)) |
105994
009383a57ce8
* x-dnd.el (x-dnd-maybe-call-test-function):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105968
diff
changeset
|
854 (with-current-buffer (cdr (car blist)) |
12996
59cb17f969d2
(dired-internal-noselect): New arg MODE.
Richard M. Stallman <rms@gnu.org>
parents:
12906
diff
changeset
|
855 (if (and (eq major-mode mode) |
49583
ffebff40964c
(dired-find-buffer-nocreate): Avoid error if dired-directory is nil.
Richard M. Stallman <rms@gnu.org>
parents:
49549
diff
changeset
|
856 dired-directory ;; nil during find-alternate-file |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
857 (equal dirname |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
858 (expand-file-name |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
859 (if (consp dired-directory) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
860 (car dired-directory) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
861 dired-directory)))) |
12045
ad681fd69905
(dired-find-buffer-nocreate): Ignore dead buffers.
Karl Heuer <kwzh@gnu.org>
parents:
12001
diff
changeset
|
862 (setq found (cdr (car blist)) |
ad681fd69905
(dired-find-buffer-nocreate): Ignore dead buffers.
Karl Heuer <kwzh@gnu.org>
parents:
12001
diff
changeset
|
863 blist nil) |
ad681fd69905
(dired-find-buffer-nocreate): Ignore dead buffers.
Karl Heuer <kwzh@gnu.org>
parents:
12001
diff
changeset
|
864 (setq blist (cdr blist)))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
865 found)) |
661 | 866 |
35607 | 867 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
868 ;; Read in a new dired buffer |
661 | 869 |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
870 (defun dired-readin () |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
871 "Read in a new dired buffer. |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
872 Differs from `dired-insert-subdir' in that it accepts |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
873 wildcards, erases the buffer, and builds the subdir-alist anew |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
874 \(including making it buffer-local and clearing it first)." |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
875 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
876 ;; default-directory and dired-actual-switches must be buffer-local |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
877 ;; and initialized by now. |
100637
6f8834a6d1b3
(dired-readin): Inhibit modification hooks.
Richard M. Stallman <rms@gnu.org>
parents:
100362
diff
changeset
|
878 (let (dirname |
6f8834a6d1b3
(dired-readin): Inhibit modification hooks.
Richard M. Stallman <rms@gnu.org>
parents:
100362
diff
changeset
|
879 ;; This makes readin much much faster. |
6f8834a6d1b3
(dired-readin): Inhibit modification hooks.
Richard M. Stallman <rms@gnu.org>
parents:
100362
diff
changeset
|
880 ;; In particular, it prevents the font lock hook from running |
6f8834a6d1b3
(dired-readin): Inhibit modification hooks.
Richard M. Stallman <rms@gnu.org>
parents:
100362
diff
changeset
|
881 ;; until the directory is all read in. |
6f8834a6d1b3
(dired-readin): Inhibit modification hooks.
Richard M. Stallman <rms@gnu.org>
parents:
100362
diff
changeset
|
882 (inhibit-modification-hooks t)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
883 (if (consp dired-directory) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
884 (setq dirname (car dired-directory)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
885 (setq dirname dired-directory)) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
886 (setq dirname (expand-file-name dirname)) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
887 (save-excursion |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
888 ;; This hook which may want to modify dired-actual-switches |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
889 ;; based on dired-directory, e.g. with ange-ftp to a SysV host |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
890 ;; where ls won't understand -Al switches. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
891 (run-hooks 'dired-before-readin-hook) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
892 (if (consp buffer-undo-list) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
893 (setq buffer-undo-list nil)) |
73775
5fbb36eba879
(dired-readin): Locally bind file-name-coding-system.
Richard M. Stallman <rms@gnu.org>
parents:
73211
diff
changeset
|
894 (make-local-variable 'file-name-coding-system) |
5fbb36eba879
(dired-readin): Locally bind file-name-coding-system.
Richard M. Stallman <rms@gnu.org>
parents:
73211
diff
changeset
|
895 (setq file-name-coding-system |
5fbb36eba879
(dired-readin): Locally bind file-name-coding-system.
Richard M. Stallman <rms@gnu.org>
parents:
73211
diff
changeset
|
896 (or coding-system-for-read file-name-coding-system)) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
897 (let ((inhibit-read-only t) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
898 ;; Don't make undo entries for readin. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
899 (buffer-undo-list t)) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
900 (widen) |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
901 (erase-buffer) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
902 (dired-readin-insert)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
903 (goto-char (point-min)) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
904 ;; Must first make alist buffer local and set it to nil because |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
905 ;; dired-build-subdir-alist will call dired-clear-alist first |
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
906 (set (make-local-variable 'dired-subdir-alist) nil) |
7598
cdde619af40c
(dired-readin): Clear modified flag at the very end.
Richard M. Stallman <rms@gnu.org>
parents:
7494
diff
changeset
|
907 (dired-build-subdir-alist) |
8073
6511fd7aaea4
(dired-readin): Record the directory's modtime.
Richard M. Stallman <rms@gnu.org>
parents:
7945
diff
changeset
|
908 (let ((attributes (file-attributes dirname))) |
6511fd7aaea4
(dired-readin): Record the directory's modtime.
Richard M. Stallman <rms@gnu.org>
parents:
7945
diff
changeset
|
909 (if (eq (car attributes) t) |
6511fd7aaea4
(dired-readin): Record the directory's modtime.
Richard M. Stallman <rms@gnu.org>
parents:
7945
diff
changeset
|
910 (set-visited-file-modtime (nth 5 attributes)))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
911 (set-buffer-modified-p nil) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
912 ;; No need to narrow since the whole buffer contains just |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
913 ;; dired-readin's output, nothing else. The hook can |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
914 ;; successfully use dired functions (e.g. dired-get-filename) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
915 ;; as the subdir-alist has been built in dired-readin. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
916 (run-hooks 'dired-after-readin-hook)))) |
661 | 917 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
918 ;; Subroutines of dired-readin |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
919 |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
920 (defun dired-readin-insert () |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
921 ;; Insert listing for the specified dir (and maybe file list) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
922 ;; already in dired-directory, assuming a clean buffer. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
923 (let (dir file-list) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
924 (if (consp dired-directory) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
925 (setq dir (car dired-directory) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
926 file-list (cdr dired-directory)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
927 (setq dir dired-directory |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
928 file-list nil)) |
47901
29357f0b7ba5
(dired-readin-insert): Expand dired-directory.
Andreas Schwab <schwab@suse.de>
parents:
47852
diff
changeset
|
929 (setq dir (expand-file-name dir)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
930 (if (and (equal "" (file-name-nondirectory dir)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
931 (not file-list)) |
4284
831da9ea9a95
(dired-readin-insert): If we got a list of files,
Richard M. Stallman <rms@gnu.org>
parents:
4191
diff
changeset
|
932 ;; If we are reading a whole single directory... |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
933 (dired-insert-directory dir dired-actual-switches nil nil t) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
934 (if (not (file-readable-p |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
935 (directory-file-name (file-name-directory dir)))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
936 (error "Directory %s inaccessible or nonexistent" dir) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
937 ;; Else treat it as a wildcard spec |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
938 ;; unless we have an explicit list of files. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
939 (dired-insert-directory dir dired-actual-switches |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
940 file-list (not file-list) t))))) |
2492
de8b66eb78cf
dired-noselect, dired-internal-noselect, dired-insert-directory:
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2466
diff
changeset
|
941 |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
942 (defun dired-align-file (beg end) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
943 "Align the fields of a file to the ones of surrounding lines. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
944 BEG..END is the line where the file info is located." |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
945 ;; Some versions of ls try to adjust the size of each field so as to just |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
946 ;; hold the largest element ("largest" in the current invocation, of |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
947 ;; course). So when a single line is output, the size of each field is |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
948 ;; just big enough for that one output. Thus when dired refreshes one |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
949 ;; line, the alignment if this line w.r.t the rest is messed up because |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
950 ;; the fields of that one line will generally be smaller. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
951 ;; |
66325
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
952 ;; To work around this problem, we here add spaces to try and |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
953 ;; re-align the fields as needed. Since this is purely aesthetic, |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
954 ;; it is of utmost importance that it doesn't mess up anything like |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
955 ;; `dired-move-to-filename'. To this end, we limit ourselves to |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
956 ;; adding spaces only, and to only add them at places where there |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
957 ;; was already at least one space. This way, as long as |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
958 ;; `directory-listing-before-filename-regexp' always matches spaces |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
959 ;; with "*" or "+", we know we haven't made anything worse. There |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
960 ;; is one spot where the exact number of spaces is important, which |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
961 ;; is just before the actual filename, so we refrain from adding |
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
962 ;; spaces there (and within the filename as well, of course). |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
963 (save-excursion |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
964 (let (file file-col other other-col) |
105424
098f8a47a308
Fix typos in comments.
Juanma Barranquero <lekktu@gmail.com>
parents:
105372
diff
changeset
|
965 ;; Check that there is indeed a file, and that there is anoter adjacent |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
966 ;; file with which to align, and that additional spaces are needed to |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
967 ;; align the filenames. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
968 (when (and (setq file (progn (goto-char beg) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
969 (dired-move-to-filename nil end))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
970 (setq file-col (current-column)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
971 (setq other |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
972 (or (and (goto-char beg) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
973 (zerop (forward-line -1)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
974 (dired-move-to-filename)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
975 (and (goto-char beg) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
976 (zerop (forward-line 1)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
977 (dired-move-to-filename)))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
978 (setq other-col (current-column)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
979 (/= file other) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
980 ;; Make sure there is some work left to do. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
981 (> other-col file-col)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
982 ;; If we've only looked at the line above, check to see if the line |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
983 ;; below exists as well and if so, align with the shorter one. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
984 (when (and (< other file) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
985 (goto-char beg) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
986 (zerop (forward-line 1)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
987 (dired-move-to-filename)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
988 (let ((alt-col (current-column))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
989 (when (< alt-col other-col) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
990 (setq other-col alt-col) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
991 (setq other (point))))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
992 ;; Keep positions uptodate when we insert stuff. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
993 (if (> other file) (setq other (copy-marker other))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
994 (setq file (copy-marker file)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
995 ;; Main loop. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
996 (goto-char beg) |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
997 (skip-chars-forward " ") ;Skip to the first field. |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
998 (while (and (> other-col file-col) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
999 ;; Don't touch anything just before (and after) the |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1000 ;; beginning of the filename. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1001 (> file (point))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1002 ;; We're now just in front of a field, with a space behind us. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1003 (let* ((curcol (current-column)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1004 ;; Nums are right-aligned. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1005 (num-align (looking-at "[0-9]")) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1006 ;; Let's look at the other line, in the same column: we |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1007 ;; should be either near the end of the previous field, or |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1008 ;; in the space between that field and the next. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1009 ;; [ Of course, it's also possible that we're already within |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1010 ;; the next field or even past it, but that's unlikely since |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1011 ;; other-col > file-col. ] |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1012 ;; Let's find the distance to the alignment-point (either |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1013 ;; the beginning or the end of the next field, depending on |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1014 ;; whether this field is left or right aligned). |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1015 (align-pt-offset |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1016 (save-excursion |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1017 (goto-char other) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1018 (move-to-column curcol) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1019 (when (looking-at |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1020 (concat |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1021 (if (eq (char-before) ?\s) " *" "[^ ]* *") |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1022 (if num-align "[0-9][^ ]*"))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1023 (- (match-end 0) (match-beginning 0))))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1024 ;; Now, the number of spaces to insert is align-pt-offset |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1025 ;; minus the distance to the equivalent point on the |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1026 ;; current line. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1027 (spaces |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1028 (if (not num-align) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1029 align-pt-offset |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1030 (and align-pt-offset |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1031 (save-excursion |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1032 (skip-chars-forward "^ ") |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1033 (- align-pt-offset (- (current-column) curcol))))))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1034 (when (and spaces (> spaces 0)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1035 (setq file-col (+ spaces file-col)) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1036 (if (> file-col other-col) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1037 (setq spaces (- spaces (- file-col other-col)))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1038 (insert-char ?\s spaces) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1039 ;; Let's just make really sure we did not mess up. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1040 (unless (save-excursion |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1041 (eq (dired-move-to-filename) (marker-position file))) |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1042 ;; Damn! We messed up: let's revert the change. |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1043 (delete-char (- spaces))))) |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1044 ;; Now skip to next field. |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1045 (skip-chars-forward "^ ") (skip-chars-forward " ")) |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1046 (set-marker file nil))))) |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1047 |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1048 |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1049 (defun dired-insert-directory (dir switches &optional file-list wildcard hdr) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1050 "Insert a directory listing of DIR, Dired style. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1051 Use SWITCHES to make the listings. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1052 If FILE-LIST is non-nil, list only those files. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1053 Otherwise, if WILDCARD is non-nil, expand wildcards; |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1054 in that case, DIR should be a file name that uses wildcards. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1055 In other cases, DIR should be a directory name or a directory filename. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1056 If HDR is non-nil, insert a header line with the directory name." |
10126
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
1057 (let ((opoint (point)) |
13929
490fe0437271
(dired-insert-directory): Force use of C locale.
Richard M. Stallman <rms@gnu.org>
parents:
13888
diff
changeset
|
1058 (process-environment (copy-sequence process-environment)) |
10126
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
1059 end) |
47575
4d9f899a5963
* dired.el (dired-insert-directory): Always add "--dired" to to
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
47544
diff
changeset
|
1060 (if (or dired-use-ls-dired (file-remote-p dir)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1061 (setq switches (concat "--dired " switches))) |
16773
7064fa2cb0d7
(dired-insert-directory): Don't override the user's locale.
Richard M. Stallman <rms@gnu.org>
parents:
16710
diff
changeset
|
1062 ;; We used to specify the C locale here, to force English month names; |
7064fa2cb0d7
(dired-insert-directory): Don't override the user's locale.
Richard M. Stallman <rms@gnu.org>
parents:
16710
diff
changeset
|
1063 ;; but this should not be necessary any more, |
66325
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
1064 ;; with the new value of `directory-listing-before-filename-regexp'. |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1065 (if file-list |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1066 (dolist (f file-list) |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1067 (let ((beg (point))) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1068 (insert-directory f switches nil nil) |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1069 ;; Re-align fields, if necessary. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
1070 (dired-align-file beg (point)))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1071 (insert-directory dir switches wildcard (not wildcard))) |
10126
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
1072 ;; Quote certain characters, unless ls quoted them for us. |
11151
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1073 (if (not (string-match "b" dired-actual-switches)) |
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1074 (save-excursion |
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1075 (setq end (point-marker)) |
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1076 (goto-char opoint) |
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1077 (while (search-forward "\\" end t) |
48903
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1078 (replace-match (apply #'propertize |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1079 "\\\\" |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1080 (text-properties-at (match-beginning 0))) |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1081 nil t)) |
11151
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1082 (goto-char opoint) |
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1083 (while (search-forward "\^m" end t) |
48903
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1084 (replace-match (apply #'propertize |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1085 "\\015" |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1086 (text-properties-at (match-beginning 0))) |
bcc54fecfcee
(dired-insert-directory): Preserve text properties when quoting.
Andreas Schwab <schwab@suse.de>
parents:
48491
diff
changeset
|
1087 nil t)) |
11151
ab55a16a92ce
Wrap filename character quoting code with save-excursion so following forms
Simon Marshall <simon@gnu.org>
parents:
10845
diff
changeset
|
1088 (set-marker end nil))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1089 (dired-insert-set-properties opoint (point)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1090 ;; If we used --dired and it worked, the lines are already indented. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1091 ;; Otherwise, indent them. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1092 (unless (save-excursion |
47852
d8b6eab7d77a
(dired-insert-directory): When looking for existing
Andreas Schwab <schwab@suse.de>
parents:
47831
diff
changeset
|
1093 (goto-char opoint) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1094 (looking-at " ")) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1095 (let ((indent-tabs-mode nil)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1096 (indent-rigidly opoint (point) 2))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1097 ;; Insert text at the beginning to standardize things. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1098 (save-excursion |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1099 (goto-char opoint) |
95783
4a429fae9256
(dired-insert-directory): Don't assume Unix-style dir names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94894
diff
changeset
|
1100 (if (and (or hdr wildcard) |
4a429fae9256
(dired-insert-directory): Don't assume Unix-style dir names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94894
diff
changeset
|
1101 (not (and (looking-at "^ \\(.*\\):$") |
4a429fae9256
(dired-insert-directory): Don't assume Unix-style dir names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94894
diff
changeset
|
1102 (file-name-absolute-p (match-string 1))))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1103 ;; Note that dired-build-subdir-alist will replace the name |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1104 ;; by its expansion, so it does not matter whether what we insert |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1105 ;; here is fully expanded, but it should be absolute. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1106 (insert " " (directory-file-name (file-name-directory dir)) ":\n")) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1107 (when wildcard |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1108 ;; Insert "wildcard" line where "total" line would be for a full dir. |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
1109 (insert " wildcard " (file-name-nondirectory dir) "\n"))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1110 |
6634
dc75f33163fb
(dired-insert-directory): Add mouse-face properties.
Richard M. Stallman <rms@gnu.org>
parents:
6594
diff
changeset
|
1111 (defun dired-insert-set-properties (beg end) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1112 "Make the file names highlight when the mouse is on them." |
6634
dc75f33163fb
(dired-insert-directory): Add mouse-face properties.
Richard M. Stallman <rms@gnu.org>
parents:
6594
diff
changeset
|
1113 (save-excursion |
dc75f33163fb
(dired-insert-directory): Add mouse-face properties.
Richard M. Stallman <rms@gnu.org>
parents:
6594
diff
changeset
|
1114 (goto-char beg) |
dc75f33163fb
(dired-insert-directory): Add mouse-face properties.
Richard M. Stallman <rms@gnu.org>
parents:
6594
diff
changeset
|
1115 (while (< (point) end) |
12736
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
1116 (condition-case nil |
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
1117 (if (dired-move-to-filename) |
38074
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1118 (add-text-properties |
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1119 (point) |
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1120 (save-excursion |
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1121 (dired-move-to-end-of-filename) |
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1122 (point)) |
38426
7c443908a552
(dired-insert-set-properties): Fix invalid mouse-face
Gerd Moellmann <gerd@gnu.org>
parents:
38214
diff
changeset
|
1123 '(mouse-face highlight |
97079
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1124 dired-filename t |
38074
7ca7def9af01
(dired-insert-set-properties): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents:
37547
diff
changeset
|
1125 help-echo "mouse-2: visit this file in other window"))) |
12736
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
1126 (error nil)) |
6634
dc75f33163fb
(dired-insert-directory): Add mouse-face properties.
Richard M. Stallman <rms@gnu.org>
parents:
6594
diff
changeset
|
1127 (forward-line 1)))) |
35607 | 1128 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1129 ;; Reverting a dired buffer |
661 | 1130 |
1131 (defun dired-revert (&optional arg noconfirm) | |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1132 "Reread the dired buffer. |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1133 Must also be called after `dired-actual-switches' have changed. |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1134 Should not fail even on completely garbaged buffers. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1135 Preserves old cursor, marks/flags, hidden-p." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1136 (widen) ; just in case user narrowed |
56035
e3ace501b5f4
(dired-revert): If buffer is marked unmodified before
Luc Teirlinck <teirllm@auburn.edu>
parents:
56015
diff
changeset
|
1137 (let ((modflag (buffer-modified-p)) |
105968
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1138 (positions (dired-save-positions)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1139 (mark-alist nil) ; save marked files |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1140 (hidden-subdirs (dired-remember-hidden)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1141 (old-subdir-alist (cdr (reverse dired-subdir-alist))) ; except pwd |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1142 (case-fold-search nil) ; we check for upper case ls flags |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
1143 (inhibit-read-only t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1144 (goto-char (point-min)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1145 (setq mark-alist;; only after dired-remember-hidden since this unhides: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1146 (dired-remember-marks (point-min) (point-max))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1147 ;; treat top level dir extra (it may contain wildcards) |
107085
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1148 (if (not (consp dired-directory)) |
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1149 (dired-uncache dired-directory) |
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1150 (dired-uncache (car dired-directory)) |
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1151 (dolist (dir (cdr dired-directory)) |
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1152 (if (file-name-absolute-p dir) |
d7831d04952b
* dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
Michael Albinus <michael.albinus@gmx.de>
parents:
106922
diff
changeset
|
1153 (dired-uncache dir)))) |
74385
fcc9e01e9e6d
(dired-revert): Turn off dired-after-readin-hook around call to dired-readin.
Richard M. Stallman <rms@gnu.org>
parents:
73775
diff
changeset
|
1154 ;; Run dired-after-readin-hook just once, below. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1155 (let ((dired-after-readin-hook nil)) |
74385
fcc9e01e9e6d
(dired-revert): Turn off dired-after-readin-hook around call to dired-readin.
Richard M. Stallman <rms@gnu.org>
parents:
73775
diff
changeset
|
1156 (dired-readin) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1157 (dired-insert-old-subdirs old-subdir-alist)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1158 (dired-mark-remembered mark-alist) ; mark files that were marked |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1159 ;; ... run the hook for the whole buffer, and only after markers |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1160 ;; have been reinserted (else omitting in dired-x would omit marked files) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1161 (run-hooks 'dired-after-readin-hook) ; no need to narrow |
105968
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1162 (dired-restore-positions positions) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1163 (save-excursion ; hide subdirs that were hidden |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1164 (dolist (dir hidden-subdirs) |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1165 (if (dired-goto-subdir dir) |
56035
e3ace501b5f4
(dired-revert): If buffer is marked unmodified before
Luc Teirlinck <teirllm@auburn.edu>
parents:
56015
diff
changeset
|
1166 (dired-hide-subdir 1)))) |
e3ace501b5f4
(dired-revert): If buffer is marked unmodified before
Luc Teirlinck <teirllm@auburn.edu>
parents:
56015
diff
changeset
|
1167 (unless modflag (restore-buffer-modified-p nil))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1168 ;; outside of the let scope |
56035
e3ace501b5f4
(dired-revert): If buffer is marked unmodified before
Luc Teirlinck <teirllm@auburn.edu>
parents:
56015
diff
changeset
|
1169 ;;; Might as well not override the user if the user changed this. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1170 ;;; (setq buffer-read-only t) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1171 ) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1172 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1173 ;; Subroutines of dired-revert |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1174 ;; Some of these are also used when inserting subdirs. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1175 |
105968
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1176 (defun dired-save-positions () |
106446
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1177 "Return current positions in the buffer and all windows with this directory. |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1178 The positions have the form (BUFFER-POSITION WINDOW-POSITIONS). |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1179 |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1180 BUFFER-POSITION is the point position in the current dired buffer. |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1181 The buffer position have the form (BUFFER DIRED-FILENAME BUFFER-POINT). |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1182 |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1183 WINDOW-POSITIONS are current positions in all windows displaying |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1184 this dired buffer. The window positions have the form (WINDOW |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1185 DIRED-FILENAME WINDOW-POINT)." |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1186 (list |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1187 (list (current-buffer) (dired-get-filename nil t) (point)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1188 (mapcar (lambda (w) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1189 (list w |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1190 (with-selected-window w |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1191 (dired-get-filename nil t)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1192 (window-point w))) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1193 (get-buffer-window-list nil 0 t)))) |
105968
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1194 |
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1195 (defun dired-restore-positions (positions) |
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1196 "Restore POSITIONS saved with `dired-save-positions'." |
106446
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1197 (let* ((buf-file-pos (nth 0 positions)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1198 (buffer (nth 0 buf-file-pos))) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1199 (unless (and (nth 1 buf-file-pos) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1200 (dired-goto-file (nth 1 buf-file-pos))) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1201 (goto-char (nth 2 buf-file-pos)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1202 (dired-move-to-filename)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1203 (dolist (win-file-pos (nth 1 positions)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1204 ;; Ensure that window still displays the original buffer. |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1205 (when (eq (window-buffer (nth 0 win-file-pos)) buffer) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1206 (with-selected-window (nth 0 win-file-pos) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1207 (unless (and (nth 1 win-file-pos) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1208 (dired-goto-file (nth 1 win-file-pos))) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1209 (goto-char (nth 2 win-file-pos)) |
56b9af7a1762
Save and restore dired buffer's point positions too. (Bug#4880)
Juri Linkov <juri@jurta.org>
parents:
106410
diff
changeset
|
1210 (dired-move-to-filename))))))) |
105968
f4dc8b8f20d2
(dired-save-positions, dired-restore-positions): New funs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
105957
diff
changeset
|
1211 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1212 (defun dired-remember-marks (beg end) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1213 "Return alist of files and their marks, from BEG to END." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1214 (if selective-display ; must unhide to make this work. |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
1215 (let ((inhibit-read-only t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1216 (subst-char-in-region beg end ?\r ?\n))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1217 (let (fil chr alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1218 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1219 (goto-char beg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1220 (while (re-search-forward dired-re-mark end t) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1221 (if (setq fil (dired-get-filename nil t)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1222 (setq chr (preceding-char) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1223 alist (cons (cons fil chr) alist))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1224 alist)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1225 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1226 (defun dired-mark-remembered (alist) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1227 "Mark all files remembered in ALIST. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1228 Each element of ALIST looks like (FILE . MARKERCHAR)." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1229 (let (elt fil chr) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1230 (while alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1231 (setq elt (car alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1232 alist (cdr alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1233 fil (car elt) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1234 chr (cdr elt)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1235 (if (dired-goto-file fil) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1236 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1237 (beginning-of-line) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1238 (delete-char 1) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1239 (insert chr)))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1240 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1241 (defun dired-remember-hidden () |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1242 "Return a list of names of subdirs currently hidden." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1243 (let ((l dired-subdir-alist) dir pos result) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1244 (while l |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1245 (setq dir (car (car l)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1246 pos (cdr (car l)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1247 l (cdr l)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1248 (goto-char pos) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1249 (skip-chars-forward "^\r\n") |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
1250 (if (eq (following-char) ?\r) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1251 (setq result (cons dir result)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1252 result)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1253 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1254 (defun dired-insert-old-subdirs (old-subdir-alist) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1255 "Try to insert all subdirs that were displayed before. |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1256 Do so according to the former subdir alist OLD-SUBDIR-ALIST." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1257 (or (string-match "R" dired-actual-switches) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1258 (let (elt dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1259 (while old-subdir-alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1260 (setq elt (car old-subdir-alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1261 old-subdir-alist (cdr old-subdir-alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1262 dir (car elt)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1263 (condition-case () |
1130
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1264 (progn |
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1265 (dired-uncache dir) |
56015
e7e7513282b4
(dired-insert-old-subdirs): Adapt to fact that the R switch is no
Luc Teirlinck <teirllm@auburn.edu>
parents:
55994
diff
changeset
|
1266 (dired-insert-subdir dir)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1267 (error nil)))))) |
1130
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1268 |
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1269 (defun dired-uncache (dir) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1270 "Remove directory DIR from any directory cache." |
7030
9e51b51e8595
Pass operation to find-file-name-handler.
Karl Heuer <kwzh@gnu.org>
parents:
6864
diff
changeset
|
1271 (let ((handler (find-file-name-handler dir 'dired-uncache))) |
1130
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1272 (if handler |
e18597ff3c95
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
1109
diff
changeset
|
1273 (funcall handler 'dired-uncache dir)))) |
35607 | 1274 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1275 ;; dired mode key bindings and initialization |
661 | 1276 |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1277 (defvar dired-mode-map |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1278 ;; This looks ugly when substitute-command-keys uses C-d instead d: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1279 ;; (define-key dired-mode-map "\C-d" 'dired-flag-file-deletion) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1280 (let ((map (make-keymap))) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1281 (suppress-keymap map) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1282 (define-key map [mouse-2] 'dired-mouse-find-file-other-window) |
59024
f71e5777b783
(dired-mode-map): Map follow-link to mouse-face.
Kim F. Storm <storm@cua.dk>
parents:
58426
diff
changeset
|
1283 (define-key map [follow-link] 'mouse-face) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1284 ;; Commands to mark or flag certain categories of files |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1285 (define-key map "#" 'dired-flag-auto-save-files) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1286 (define-key map "." 'dired-clean-directory) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1287 (define-key map "~" 'dired-flag-backup-files) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1288 ;; Upper case keys (except !) for operating on the marked files |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1289 (define-key map "A" 'dired-do-search) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1290 (define-key map "C" 'dired-do-copy) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1291 (define-key map "B" 'dired-do-byte-compile) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1292 (define-key map "D" 'dired-do-delete) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1293 (define-key map "G" 'dired-do-chgrp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1294 (define-key map "H" 'dired-do-hardlink) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1295 (define-key map "L" 'dired-do-load) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1296 (define-key map "M" 'dired-do-chmod) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1297 (define-key map "O" 'dired-do-chown) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1298 (define-key map "P" 'dired-do-print) |
28937
2d65f0ae4167
(dired-mode-map): Use dired-do-query-replace-regexp.
Gerd Moellmann <gerd@gnu.org>
parents:
28737
diff
changeset
|
1299 (define-key map "Q" 'dired-do-query-replace-regexp) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1300 (define-key map "R" 'dired-do-rename) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1301 (define-key map "S" 'dired-do-symlink) |
54663
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
1302 (define-key map "T" 'dired-do-touch) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1303 (define-key map "X" 'dired-do-shell-command) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1304 (define-key map "Z" 'dired-do-compress) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1305 (define-key map "!" 'dired-do-shell-command) |
97088
4656cbfe9954
(dired-mode-map): Rebind `dired-flag-garbage-files' from `&' to `%&'.
Juri Linkov <juri@jurta.org>
parents:
97079
diff
changeset
|
1306 (define-key map "&" 'dired-do-async-shell-command) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1307 ;; Comparison commands |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1308 (define-key map "=" 'dired-diff) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1309 (define-key map "\M-=" 'dired-backup-diff) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1310 ;; Tree Dired commands |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1311 (define-key map "\M-\C-?" 'dired-unmark-all-files) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1312 (define-key map "\M-\C-d" 'dired-tree-down) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1313 (define-key map "\M-\C-u" 'dired-tree-up) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1314 (define-key map "\M-\C-n" 'dired-next-subdir) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1315 (define-key map "\M-\C-p" 'dired-prev-subdir) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1316 ;; move to marked files |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1317 (define-key map "\M-{" 'dired-prev-marked-file) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1318 (define-key map "\M-}" 'dired-next-marked-file) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1319 ;; Make all regexp commands share a `%' prefix: |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1320 ;; We used to get to the submap via a symbol dired-regexp-prefix, |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1321 ;; but that seems to serve little purpose, and copy-keymap |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1322 ;; does a better job without it. |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1323 (define-key map "%" nil) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1324 (define-key map "%u" 'dired-upcase) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1325 (define-key map "%l" 'dired-downcase) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1326 (define-key map "%d" 'dired-flag-files-regexp) |
22206
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
1327 (define-key map "%g" 'dired-mark-files-containing-regexp) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1328 (define-key map "%m" 'dired-mark-files-regexp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1329 (define-key map "%r" 'dired-do-rename-regexp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1330 (define-key map "%C" 'dired-do-copy-regexp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1331 (define-key map "%H" 'dired-do-hardlink-regexp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1332 (define-key map "%R" 'dired-do-rename-regexp) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1333 (define-key map "%S" 'dired-do-symlink-regexp) |
97088
4656cbfe9954
(dired-mode-map): Rebind `dired-flag-garbage-files' from `&' to `%&'.
Juri Linkov <juri@jurta.org>
parents:
97079
diff
changeset
|
1334 (define-key map "%&" 'dired-flag-garbage-files) |
16500
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1335 ;; Commands for marking and unmarking. |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1336 (define-key map "*" nil) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1337 (define-key map "**" 'dired-mark-executables) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1338 (define-key map "*/" 'dired-mark-directories) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1339 (define-key map "*@" 'dired-mark-symlinks) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1340 (define-key map "*%" 'dired-mark-files-regexp) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1341 (define-key map "*c" 'dired-change-marks) |
16514
c270f12e9373
(dired-mode-map): Put dired-mark-subdir-files on *s.
Richard M. Stallman <rms@gnu.org>
parents:
16501
diff
changeset
|
1342 (define-key map "*s" 'dired-mark-subdir-files) |
16500
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1343 (define-key map "*m" 'dired-mark) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1344 (define-key map "*u" 'dired-unmark) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1345 (define-key map "*?" 'dired-unmark-all-files) |
18160
c64b7a17eea9
(dired-unmark-all-marks):
Richard M. Stallman <rms@gnu.org>
parents:
17988
diff
changeset
|
1346 (define-key map "*!" 'dired-unmark-all-marks) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1347 (define-key map "U" 'dired-unmark-all-marks) |
16500
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1348 (define-key map "*\177" 'dired-unmark-backward) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1349 (define-key map "*\C-n" 'dired-next-marked-file) |
707d6f8c6381
(dired-mode-map): Make * a prefix for mark commands.
Richard M. Stallman <rms@gnu.org>
parents:
16490
diff
changeset
|
1350 (define-key map "*\C-p" 'dired-prev-marked-file) |
44212
e87d819f2887
(dired-toggle-marks): Renamed from dired-do-toggle. Bindings changed.
Richard M. Stallman <rms@gnu.org>
parents:
44061
diff
changeset
|
1351 (define-key map "*t" 'dired-toggle-marks) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1352 ;; Lower keys for commands not operating on all the marked files |
30108
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
1353 (define-key map "a" 'dired-find-alternate-file) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1354 (define-key map "d" 'dired-flag-file-deletion) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1355 (define-key map "e" 'dired-find-file) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1356 (define-key map "f" 'dired-find-file) |
104922
c603ee2aac17
* keymap.c (QCadvertised_binding): New constant.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
104681
diff
changeset
|
1357 (define-key map "\C-m" 'dired-find-file) |
c603ee2aac17
* keymap.c (QCadvertised_binding): New constant.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
104681
diff
changeset
|
1358 (put 'dired-find-file :advertised-binding "\C-m") |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1359 (define-key map "g" 'revert-buffer) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1360 (define-key map "h" 'describe-mode) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1361 (define-key map "i" 'dired-maybe-insert-subdir) |
70802
e1bfa36494e2
(dired-mode-map): Put dired-goto-file on j, not M-g.
Richard M. Stallman <rms@gnu.org>
parents:
69783
diff
changeset
|
1362 (define-key map "j" 'dired-goto-file) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1363 (define-key map "k" 'dired-do-kill-lines) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1364 (define-key map "l" 'dired-do-redisplay) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1365 (define-key map "m" 'dired-mark) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1366 (define-key map "n" 'dired-next-line) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1367 (define-key map "o" 'dired-find-file-other-window) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1368 (define-key map "\C-o" 'dired-display-file) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1369 (define-key map "p" 'dired-previous-line) |
21095
f557f5e4137f
(dired-quit): Function deleted.
Richard M. Stallman <rms@gnu.org>
parents:
21047
diff
changeset
|
1370 (define-key map "q" 'quit-window) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1371 (define-key map "s" 'dired-sort-toggle-or-edit) |
44212
e87d819f2887
(dired-toggle-marks): Renamed from dired-do-toggle. Bindings changed.
Richard M. Stallman <rms@gnu.org>
parents:
44061
diff
changeset
|
1372 (define-key map "t" 'dired-toggle-marks) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1373 (define-key map "u" 'dired-unmark) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1374 (define-key map "v" 'dired-view-file) |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
1375 (define-key map "w" 'dired-copy-filename-as-kill) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1376 (define-key map "x" 'dired-do-flagged-delete) |
38990
8911bc85234c
(dired-mode-map): Bind `y' to dired-show-file-type
Gerd Moellmann <gerd@gnu.org>
parents:
38426
diff
changeset
|
1377 (define-key map "y" 'dired-show-file-type) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1378 (define-key map "+" 'dired-create-directory) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1379 ;; moving |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1380 (define-key map "<" 'dired-prev-dirline) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1381 (define-key map ">" 'dired-next-dirline) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1382 (define-key map "^" 'dired-up-directory) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1383 (define-key map " " 'dired-next-line) |
109487
2d68a79d5213
* dired.el (dired-mode-map): Use command remapping (bug#6632).
Juanma Barranquero <lekktu@gmail.com>
parents:
108806
diff
changeset
|
1384 (define-key map [remap next-line] 'dired-next-line) |
2d68a79d5213
* dired.el (dired-mode-map): Use command remapping (bug#6632).
Juanma Barranquero <lekktu@gmail.com>
parents:
108806
diff
changeset
|
1385 (define-key map [remap previous-line] 'dired-previous-line) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1386 ;; hiding |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1387 (define-key map "$" 'dired-hide-subdir) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1388 (define-key map "\M-$" 'dired-hide-all) |
97062
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1389 ;; isearch |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1390 (define-key map (kbd "M-s a C-s") 'dired-do-isearch) |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1391 (define-key map (kbd "M-s a M-C-s") 'dired-do-isearch-regexp) |
97079
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1392 (define-key map (kbd "M-s f C-s") 'dired-isearch-filenames) |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1393 (define-key map (kbd "M-s f M-C-s") 'dired-isearch-filenames-regexp) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1394 ;; misc |
109487
2d68a79d5213
* dired.el (dired-mode-map): Use command remapping (bug#6632).
Juanma Barranquero <lekktu@gmail.com>
parents:
108806
diff
changeset
|
1395 (define-key map [remap toggle-read-only] 'dired-toggle-read-only) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1396 (define-key map "?" 'dired-summary) |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1397 (define-key map "\177" 'dired-unmark-backward) |
59786
aa04ceecde25
(dired-mode-map): Remap `undo' and `advertised-undo'
Richard M. Stallman <rms@gnu.org>
parents:
59279
diff
changeset
|
1398 (define-key map [remap undo] 'dired-undo) |
aa04ceecde25
(dired-mode-map): Remap `undo' and `advertised-undo'
Richard M. Stallman <rms@gnu.org>
parents:
59279
diff
changeset
|
1399 (define-key map [remap advertised-undo] 'dired-undo) |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1400 ;; thumbnail manipulation (image-dired) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1401 (define-key map "\C-td" 'image-dired-display-thumbs) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1402 (define-key map "\C-tt" 'image-dired-tag-files) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1403 (define-key map "\C-tr" 'image-dired-delete-tag) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1404 (define-key map "\C-tj" 'image-dired-jump-thumbnail-buffer) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1405 (define-key map "\C-ti" 'image-dired-dired-display-image) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1406 (define-key map "\C-tx" 'image-dired-dired-display-external) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1407 (define-key map "\C-ta" 'image-dired-display-thumbs-append) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1408 (define-key map "\C-t." 'image-dired-display-thumb) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1409 (define-key map "\C-tc" 'image-dired-dired-comment-files) |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1410 (define-key map "\C-tf" 'image-dired-mark-tagged-files) |
108780
eccb3cdf5081
* dired.el (dired-mode-map): Rebind "\C-t\C-t" from
Juri Linkov <juri@jurta.org>
parents:
108715
diff
changeset
|
1411 (define-key map "\C-t\C-t" 'image-dired-dired-toggle-marked-thumbs) |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1412 (define-key map "\C-te" 'image-dired-dired-edit-comment-and-tags) |
94417
1a8916b995cf
* epa-file.el (auto-encryption-mode): Rename from epa-file-mode.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94145
diff
changeset
|
1413 ;; encryption and decryption (epa-dired) |
1a8916b995cf
* epa-file.el (auto-encryption-mode): Rename from epa-file-mode.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94145
diff
changeset
|
1414 (define-key map ":d" 'epa-dired-do-decrypt) |
1a8916b995cf
* epa-file.el (auto-encryption-mode): Rename from epa-file-mode.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94145
diff
changeset
|
1415 (define-key map ":v" 'epa-dired-do-verify) |
1a8916b995cf
* epa-file.el (auto-encryption-mode): Rename from epa-file-mode.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94145
diff
changeset
|
1416 (define-key map ":s" 'epa-dired-do-sign) |
1a8916b995cf
* epa-file.el (auto-encryption-mode): Rename from epa-file-mode.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94145
diff
changeset
|
1417 (define-key map ":e" 'epa-dired-do-encrypt) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1418 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1419 ;; Make menu bar items. |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1420 |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1421 ;; No need to fo this, now that top-level items are fewer. |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1422 ;;;; |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1423 ;; Get rid of the Edit menu bar item to save space. |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1424 ;(define-key map [menu-bar edit] 'undefined) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1425 |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1426 (define-key map [menu-bar subdir] |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1427 (cons "Subdir" (make-sparse-keymap "Subdir"))) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1428 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1429 (define-key map [menu-bar subdir hide-all] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1430 '(menu-item "Hide All" dired-hide-all |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1431 :help "Hide all subdirectories, leave only header lines")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1432 (define-key map [menu-bar subdir hide-subdir] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1433 '(menu-item "Hide/UnHide Subdir" dired-hide-subdir |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1434 :help "Hide or unhide current directory listing")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1435 (define-key map [menu-bar subdir tree-down] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1436 '(menu-item "Tree Down" dired-tree-down |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1437 :help "Go to first subdirectory header down the tree")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1438 (define-key map [menu-bar subdir tree-up] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1439 '(menu-item "Tree Up" dired-tree-up |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1440 :help "Go to first subdirectory header up the tree")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1441 (define-key map [menu-bar subdir up] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1442 '(menu-item "Up Directory" dired-up-directory |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1443 :help "Edit the parent directory")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1444 (define-key map [menu-bar subdir prev-subdir] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1445 '(menu-item "Prev Subdir" dired-prev-subdir |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1446 :help "Go to previous subdirectory header line")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1447 (define-key map [menu-bar subdir next-subdir] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1448 '(menu-item "Next Subdir" dired-next-subdir |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1449 :help "Go to next subdirectory header line")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1450 (define-key map [menu-bar subdir prev-dirline] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1451 '(menu-item "Prev Dirline" dired-prev-dirline |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1452 :help "Move to next directory-file line")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1453 (define-key map [menu-bar subdir next-dirline] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1454 '(menu-item "Next Dirline" dired-next-dirline |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1455 :help "Move to previous directory-file line")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1456 (define-key map [menu-bar subdir insert] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1457 '(menu-item "Insert This Subdir" dired-maybe-insert-subdir |
105904
f49caf3c20c7
* dired-aux.el (dired-query): Place cursor in echo area and allow
Chong Yidong <cyd@stupidchicken.com>
parents:
105647
diff
changeset
|
1458 :help "Insert contents of subdirectory" |
f49caf3c20c7
* dired-aux.el (dired-query): Place cursor in echo area and allow
Chong Yidong <cyd@stupidchicken.com>
parents:
105647
diff
changeset
|
1459 :enable (let ((f (dired-get-filename nil t))) |
f49caf3c20c7
* dired-aux.el (dired-query): Place cursor in echo area and allow
Chong Yidong <cyd@stupidchicken.com>
parents:
105647
diff
changeset
|
1460 (and f (file-directory-p f))))) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1461 (define-key map [menu-bar immediate] |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1462 (cons "Immediate" (make-sparse-keymap "Immediate"))) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1463 |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1464 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1465 [menu-bar immediate image-dired-dired-display-external] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1466 '(menu-item "Display Image Externally" image-dired-dired-display-external |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1467 :help "Display image in external viewer")) |
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1468 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1469 [menu-bar immediate image-dired-dired-display-image] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1470 '(menu-item "Display Image" image-dired-dired-display-image |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1471 :help "Display sized image in a separate window")) |
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1472 |
16090
cf84933860ed
(dired-mode-map): Add revert-buffer to Immediate menu.
Richard M. Stallman <rms@gnu.org>
parents:
15944
diff
changeset
|
1473 (define-key map [menu-bar immediate revert-buffer] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1474 '(menu-item "Refresh" revert-buffer |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1475 :help "Update contents of shown directories")) |
16090
cf84933860ed
(dired-mode-map): Add revert-buffer to Immediate menu.
Richard M. Stallman <rms@gnu.org>
parents:
15944
diff
changeset
|
1476 |
cf84933860ed
(dired-mode-map): Add revert-buffer to Immediate menu.
Richard M. Stallman <rms@gnu.org>
parents:
15944
diff
changeset
|
1477 (define-key map [menu-bar immediate dashes] |
cf84933860ed
(dired-mode-map): Add revert-buffer to Immediate menu.
Richard M. Stallman <rms@gnu.org>
parents:
15944
diff
changeset
|
1478 '("--")) |
cf84933860ed
(dired-mode-map): Add revert-buffer to Immediate menu.
Richard M. Stallman <rms@gnu.org>
parents:
15944
diff
changeset
|
1479 |
97079
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1480 (define-key map [menu-bar immediate isearch-filenames-regexp] |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1481 '(menu-item "Isearch Regexp in File Names..." dired-isearch-filenames-regexp |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1482 :help "Incrementally search for regexp in file names only")) |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1483 (define-key map [menu-bar immediate isearch-filenames] |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1484 '(menu-item "Isearch in File Names..." dired-isearch-filenames |
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1485 :help "Incrementally search for string in file names only.")) |
60893
a3d87fda9c16
(dired-mode-map): Add menu item "Compare directories"
Juri Linkov <juri@jurta.org>
parents:
60097
diff
changeset
|
1486 (define-key map [menu-bar immediate compare-directories] |
70984
2a033afe32cd
* dired.el (dired-mode-map): Change `tumme-tag-remove' to
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70981
diff
changeset
|
1487 '(menu-item "Compare Directories..." dired-compare-directories |
60893
a3d87fda9c16
(dired-mode-map): Add menu item "Compare directories"
Juri Linkov <juri@jurta.org>
parents:
60097
diff
changeset
|
1488 :help "Mark files with different attributes in two dired buffers")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1489 (define-key map [menu-bar immediate backup-diff] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1490 '(menu-item "Compare with Backup" dired-backup-diff |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1491 :help "Diff file at cursor with its latest backup")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1492 (define-key map [menu-bar immediate diff] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1493 '(menu-item "Diff..." dired-diff |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1494 :help "Compare file at cursor with another file")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1495 (define-key map [menu-bar immediate view] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1496 '(menu-item "View This File" dired-view-file |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1497 :help "Examine file at cursor in read-only mode")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1498 (define-key map [menu-bar immediate display] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1499 '(menu-item "Display in Other Window" dired-display-file |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1500 :help "Display file at cursor in other window")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1501 (define-key map [menu-bar immediate find-file-other-window] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1502 '(menu-item "Find in Other Window" dired-find-file-other-window |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1503 :help "Edit file at cursor in other window")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1504 (define-key map [menu-bar immediate find-file] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1505 '(menu-item "Find This File" dired-find-file |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1506 :help "Edit file at cursor")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1507 (define-key map [menu-bar immediate create-directory] |
94489
746622b8b8d4
(dired-mode-map): Add :help.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94485
diff
changeset
|
1508 '(menu-item "Create Directory..." dired-create-directory |
746622b8b8d4
(dired-mode-map): Add :help.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94485
diff
changeset
|
1509 :help "Create a directory")) |
55108
7b14aa2880ba
(dired-mode-map): Add a menu entry for wdired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55058
diff
changeset
|
1510 (define-key map [menu-bar immediate wdired-mode] |
82195
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1511 '(menu-item "Edit File Names" wdired-change-to-wdired-mode |
94489
746622b8b8d4
(dired-mode-map): Add :help.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
94485
diff
changeset
|
1512 :help "Put a dired buffer in a mode in which filenames are editable" |
96920
3aa8d40c3218
* dired.el (dired-mode-map): Show the key binding for wdired.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96821
diff
changeset
|
1513 :keys "C-x C-q" |
82195
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1514 :filter (lambda (x) (if (eq major-mode 'dired-mode) x)))) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1515 |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1516 (define-key map [menu-bar regexp] |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1517 (cons "Regexp" (make-sparse-keymap "Regexp"))) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1518 |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1519 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1520 [menu-bar regexp image-dired-mark-tagged-files] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1521 '(menu-item "Mark From Image Tag..." image-dired-mark-tagged-files |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
1522 :help "Mark files whose image tags matches regexp")) |
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
1523 |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1524 (define-key map [menu-bar regexp dashes-1] |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
1525 '("--")) |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1526 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1527 (define-key map [menu-bar regexp downcase] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1528 '(menu-item "Downcase" dired-downcase |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1529 ;; When running on plain MS-DOS, there's only one |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1530 ;; letter-case for file names. |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1531 :enable (or (not (fboundp 'msdos-long-file-names)) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1532 (msdos-long-file-names)) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1533 :help "Rename marked files to lower-case name")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1534 (define-key map [menu-bar regexp upcase] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1535 '(menu-item "Upcase" dired-upcase |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1536 :enable (or (not (fboundp 'msdos-long-file-names)) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1537 (msdos-long-file-names)) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1538 :help "Rename marked files to upper-case name")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1539 (define-key map [menu-bar regexp hardlink] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1540 '(menu-item "Hardlink..." dired-do-hardlink-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1541 :help "Make hard links for files matching regexp")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1542 (define-key map [menu-bar regexp symlink] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1543 '(menu-item "Symlink..." dired-do-symlink-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1544 :visible (fboundp 'make-symbolic-link) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1545 :help "Make symbolic links for files matching regexp")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1546 (define-key map [menu-bar regexp rename] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1547 '(menu-item "Rename..." dired-do-rename-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1548 :help "Rename marked files matching regexp")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1549 (define-key map [menu-bar regexp copy] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1550 '(menu-item "Copy..." dired-do-copy-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1551 :help "Copy marked files matching regexp")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1552 (define-key map [menu-bar regexp flag] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1553 '(menu-item "Flag..." dired-flag-files-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1554 :help "Flag files matching regexp for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1555 (define-key map [menu-bar regexp mark] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1556 '(menu-item "Mark..." dired-mark-files-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1557 :help "Mark files matching regexp for future operations")) |
24023
4d7de66c650e
(dired-mode-map): Fix duplicate [menu-bar regexp mark].
Dave Love <fx@gnu.org>
parents:
23230
diff
changeset
|
1558 (define-key map [menu-bar regexp mark-cont] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1559 '(menu-item "Mark Containing..." dired-mark-files-containing-regexp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1560 :help "Mark files whose contents matches regexp")) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1561 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1562 (define-key map [menu-bar mark] |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1563 (cons "Mark" (make-sparse-keymap "Mark"))) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1564 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1565 (define-key map [menu-bar mark prev] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1566 '(menu-item "Previous Marked" dired-prev-marked-file |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1567 :help "Move to previous marked file")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1568 (define-key map [menu-bar mark next] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1569 '(menu-item "Next Marked" dired-next-marked-file |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1570 :help "Move to next marked file")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1571 (define-key map [menu-bar mark marks] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1572 '(menu-item "Change Marks..." dired-change-marks |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1573 :help "Replace marker with another character")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1574 (define-key map [menu-bar mark unmark-all] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1575 '(menu-item "Unmark All" dired-unmark-all-marks)) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1576 (define-key map [menu-bar mark symlinks] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1577 '(menu-item "Mark Symlinks" dired-mark-symlinks |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1578 :visible (fboundp 'make-symbolic-link) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1579 :help "Mark all symbolic links")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1580 (define-key map [menu-bar mark directories] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1581 '(menu-item "Mark Directories" dired-mark-directories |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1582 :help "Mark all directories except `.' and `..'")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1583 (define-key map [menu-bar mark directory] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1584 '(menu-item "Mark Old Backups" dired-clean-directory |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1585 :help "Flag old numbered backups for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1586 (define-key map [menu-bar mark executables] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1587 '(menu-item "Mark Executables" dired-mark-executables |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1588 :help "Mark all executable files")) |
16825
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
1589 (define-key map [menu-bar mark garbage-files] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1590 '(menu-item "Flag Garbage Files" dired-flag-garbage-files |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1591 :help "Flag unneeded files for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1592 (define-key map [menu-bar mark backup-files] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1593 '(menu-item "Flag Backup Files" dired-flag-backup-files |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1594 :help "Flag all backup files for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1595 (define-key map [menu-bar mark auto-save-files] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1596 '(menu-item "Flag Auto-save Files" dired-flag-auto-save-files |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1597 :help "Flag auto-save files for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1598 (define-key map [menu-bar mark deletion] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1599 '(menu-item "Flag" dired-flag-file-deletion |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1600 :help "Flag current line's file for deletion")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1601 (define-key map [menu-bar mark unmark] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1602 '(menu-item "Unmark" dired-unmark |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1603 :help "Unmark or unflag current line's file")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1604 (define-key map [menu-bar mark mark] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1605 '(menu-item "Mark" dired-mark |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1606 :help "Mark current line's file for future operations")) |
20991
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1607 (define-key map [menu-bar mark toggle-marks] |
44212
e87d819f2887
(dired-toggle-marks): Renamed from dired-do-toggle. Bindings changed.
Richard M. Stallman <rms@gnu.org>
parents:
44061
diff
changeset
|
1608 '(menu-item "Toggle Marks" dired-toggle-marks |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1609 :help "Mark unmarked files, unmark marked ones")) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1610 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1611 (define-key map [menu-bar operate] |
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1612 (cons "Operate" (make-sparse-keymap "Operate"))) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1613 |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1614 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1615 [menu-bar operate image-dired-delete-tag] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1616 '(menu-item "Delete Image Tag..." image-dired-delete-tag |
70981
755bf4667ffb
* dired.el (dired-mode-map): Change `tumme-tag-remove' to
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70977
diff
changeset
|
1617 :help "Delete image tag from current or marked files")) |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1618 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1619 [menu-bar operate image-dired-tag-files] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1620 '(menu-item "Add Image Tags..." image-dired-tag-files |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1621 :help "Add image tags to current or marked files")) |
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1622 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1623 [menu-bar operate image-dired-dired-comment-files] |
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1624 '(menu-item "Add Image Comment..." image-dired-dired-comment-files |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1625 :help "Add image comment to current or marked files")) |
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1626 (define-key map |
77402
dd08291401af
Rename "thumbnails" to "image-dired".
Chong Yidong <cyd@stupidchicken.com>
parents:
77394
diff
changeset
|
1627 [menu-bar operate image-dired-display-thumbs] |
96821
e1156184215a
(dired-mode-map): Fix menu text of image-dired-display-thumbs.
Juri Linkov <juri@jurta.org>
parents:
95841
diff
changeset
|
1628 '(menu-item "Display image thumbnails" image-dired-display-thumbs |
e1156184215a
(dired-mode-map): Fix menu text of image-dired-display-thumbs.
Juri Linkov <juri@jurta.org>
parents:
95841
diff
changeset
|
1629 :help "Display image thumbnails for current or marked image files")) |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
1630 |
106031
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1631 (define-key map [menu-bar operate dashes-4] |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1632 '("--")) |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1633 |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1634 (define-key map |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1635 [menu-bar operate epa-dired-do-decrypt] |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1636 '(menu-item "Decrypt" epa-dired-do-decrypt |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1637 :help "Decrypt file at cursor")) |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1638 |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1639 (define-key map |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1640 [menu-bar operate epa-dired-do-verify] |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1641 '(menu-item "Verify" epa-dired-do-verify |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1642 :help "Verify digital signature of file at cursor")) |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1643 |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1644 (define-key map |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1645 [menu-bar operate epa-dired-do-sign] |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1646 '(menu-item "Sign" epa-dired-do-sign |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1647 :help "Create digital signature of file at cursor")) |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1648 |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1649 (define-key map |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1650 [menu-bar operate epa-dired-do-encrypt] |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1651 '(menu-item "Encrypt" epa-dired-do-encrypt |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1652 :help "Encrypt file at cursor")) |
01ca1d5c7d8a
* dired.el (dired-mode-map): Move encryption items to "Operate"
Chong Yidong <cyd@stupidchicken.com>
parents:
105994
diff
changeset
|
1653 |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1654 (define-key map [menu-bar operate dashes-3] |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
1655 '("--")) |
70977
88e8184b9f87
(dired-mode-map): Move tumme commands to Operate,
Mathias Dahl <mathias.dahl@gmail.com>
parents:
70920
diff
changeset
|
1656 |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1657 (define-key map [menu-bar operate query-replace] |
28937
2d65f0ae4167
(dired-mode-map): Use dired-do-query-replace-regexp.
Gerd Moellmann <gerd@gnu.org>
parents:
28737
diff
changeset
|
1658 '(menu-item "Query Replace in Files..." dired-do-query-replace-regexp |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1659 :help "Replace regexp in marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1660 (define-key map [menu-bar operate search] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1661 '(menu-item "Search Files..." dired-do-search |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1662 :help "Search marked files for regexp")) |
97062
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1663 (define-key map [menu-bar operate isearch-regexp] |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1664 '(menu-item "Isearch Regexp Files..." dired-do-isearch-regexp |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1665 :help "Incrementally search marked files for regexp")) |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1666 (define-key map [menu-bar operate isearch] |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1667 '(menu-item "Isearch Files..." dired-do-isearch |
a84502b647f0
(dired-mode-map): Bind dired-do-isearch to `M-s a C-s'
Juri Linkov <juri@jurta.org>
parents:
96920
diff
changeset
|
1668 :help "Incrementally search marked files for string")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1669 (define-key map [menu-bar operate chown] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1670 '(menu-item "Change Owner..." dired-do-chown |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1671 :visible (not (memq system-type '(ms-dos windows-nt))) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1672 :help "Change the owner of marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1673 (define-key map [menu-bar operate chgrp] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1674 '(menu-item "Change Group..." dired-do-chgrp |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1675 :visible (not (memq system-type '(ms-dos windows-nt))) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1676 :help "Change the group of marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1677 (define-key map [menu-bar operate chmod] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1678 '(menu-item "Change Mode..." dired-do-chmod |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1679 :help "Change mode (attributes) of marked files")) |
54663
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
1680 (define-key map [menu-bar operate touch] |
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
1681 '(menu-item "Change Timestamp..." dired-do-touch |
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
1682 :help "Change timestamp of marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1683 (define-key map [menu-bar operate load] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1684 '(menu-item "Load" dired-do-load |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1685 :help "Load marked Emacs Lisp files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1686 (define-key map [menu-bar operate compile] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1687 '(menu-item "Byte-compile" dired-do-byte-compile |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1688 :help "Byte-compile marked Emacs Lisp files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1689 (define-key map [menu-bar operate compress] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1690 '(menu-item "Compress" dired-do-compress |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1691 :help "Compress/uncompress marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1692 (define-key map [menu-bar operate print] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1693 '(menu-item "Print..." dired-do-print |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1694 :help "Ask for print command and print marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1695 (define-key map [menu-bar operate hardlink] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1696 '(menu-item "Hardlink to..." dired-do-hardlink |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1697 :help "Make hard links for current or marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1698 (define-key map [menu-bar operate symlink] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1699 '(menu-item "Symlink to..." dired-do-symlink |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1700 :visible (fboundp 'make-symbolic-link) |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1701 :help "Make symbolic links for current or marked files")) |
105024
3db1f3571655
(dired-mode-map): Add menu entry for async shell command.
Glenn Morris <rgm@gnu.org>
parents:
104944
diff
changeset
|
1702 (define-key map [menu-bar operate async-command] |
3db1f3571655
(dired-mode-map): Add menu entry for async shell command.
Glenn Morris <rgm@gnu.org>
parents:
104944
diff
changeset
|
1703 '(menu-item "Asynchronous Shell Command..." dired-do-async-shell-command |
3db1f3571655
(dired-mode-map): Add menu entry for async shell command.
Glenn Morris <rgm@gnu.org>
parents:
104944
diff
changeset
|
1704 :help "Run a shell command asynchronously on current or marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1705 (define-key map [menu-bar operate command] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1706 '(menu-item "Shell Command..." dired-do-shell-command |
105024
3db1f3571655
(dired-mode-map): Add menu entry for async shell command.
Glenn Morris <rgm@gnu.org>
parents:
104944
diff
changeset
|
1707 :help "Run a shell command on current or marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1708 (define-key map [menu-bar operate delete] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1709 '(menu-item "Delete" dired-do-delete |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1710 :help "Delete current file or all marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1711 (define-key map [menu-bar operate rename] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1712 '(menu-item "Rename to..." dired-do-rename |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1713 :help "Rename current file or move marked files")) |
12801
f4e3e478c1b1
(dired-mode-map): Set up the map completely
Richard M. Stallman <rms@gnu.org>
parents:
12736
diff
changeset
|
1714 (define-key map [menu-bar operate copy] |
27840
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1715 '(menu-item "Copy to..." dired-do-copy |
1e17908c52b8
(dired-mode-map): Don't remove "Edit" from the menu
Eli Zaretskii <eliz@gnu.org>
parents:
27784
diff
changeset
|
1716 :help "Copy current file or all marked files")) |
4099
b62687587309
(dired-mode-map): Add menu bar items.
Richard M. Stallman <rms@gnu.org>
parents:
3822
diff
changeset
|
1717 |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1718 map) |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1719 "Local keymap for `dired-mode' buffers.") |
35607 | 1720 |
661 | 1721 ;; Dired mode is suitable only for specially formatted data. |
1722 (put 'dired-mode 'mode-class 'special) | |
1723 | |
64894
aee8ba4e5b1a
Add handler to desktop-buffer-mode-handlers.
Lars Hansen <larsh@soem.dk>
parents:
64762
diff
changeset
|
1724 ;; Autoload cookie needed by desktop.el |
aee8ba4e5b1a
Add handler to desktop-buffer-mode-handlers.
Lars Hansen <larsh@soem.dk>
parents:
64762
diff
changeset
|
1725 ;;;###autoload |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1726 (defun dired-mode (&optional dirname switches) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1727 "\ |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1728 Mode for \"editing\" directory listings. |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1729 In Dired, you are \"editing\" a list of the files in a directory and |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1730 \(optionally) its subdirectories, in the format of `ls -lR'. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1731 Each directory is a page: use \\[backward-page] and \\[forward-page] to move pagewise. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1732 \"Editing\" means that you can run shell commands on files, visit, |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1733 compress, load or byte-compile them, change their file attributes |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1734 and insert subdirectories into the same buffer. You can \"mark\" |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1735 files for later commands or \"flag\" them for deletion, either file |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1736 by file or all files matching certain criteria. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1737 You can move using the usual cursor motion commands.\\<dired-mode-map> |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1738 Letters no longer insert themselves. Digits are prefix arguments. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1739 Instead, type \\[dired-flag-file-deletion] to flag a file for Deletion. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1740 Type \\[dired-mark] to Mark a file or subdirectory for later commands. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1741 Most commands operate on the marked files and use the current file |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1742 if no files are marked. Use a numeric prefix argument to operate on |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1743 the next ARG (or previous -ARG if ARG<0) files, or just `1' |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1744 to operate on the current file only. Prefix arguments override marks. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1745 Mark-using commands display a list of failures afterwards. Type \\[dired-summary] |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1746 to see why something went wrong. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1747 Type \\[dired-unmark] to Unmark a file or all files of a subdirectory. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1748 Type \\[dired-unmark-backward] to back up one line and unflag. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1749 Type \\[dired-do-flagged-delete] to eXecute the deletions requested. |
104922
c603ee2aac17
* keymap.c (QCadvertised_binding): New constant.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
104681
diff
changeset
|
1750 Type \\[dired-find-file] to Find the current line's file |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1751 (or dired it in another buffer, if it is a directory). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1752 Type \\[dired-find-file-other-window] to find file or dired directory in Other window. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1753 Type \\[dired-maybe-insert-subdir] to Insert a subdirectory in this buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1754 Type \\[dired-do-rename] to Rename a file or move the marked files to another directory. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1755 Type \\[dired-do-copy] to Copy files. |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1756 Type \\[dired-sort-toggle-or-edit] to toggle Sorting by name/date or change the `ls' switches. |
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1757 Type \\[revert-buffer] to read all currently expanded directories aGain. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1758 This retains all marks and hides subdirs again that were hidden before. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1759 SPC and DEL can be used to move down and up by lines. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1760 |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1761 If Dired ever gets confused, you can either type \\[revert-buffer] \ |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1762 to read the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1763 directories again, type \\[dired-do-redisplay] \ |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1764 to relist a single or the marked files or a |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1765 subdirectory, or type \\[dired-build-subdir-alist] to parse the buffer |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1766 again for the directory tree. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1767 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1768 Customization variables (rename this buffer and type \\[describe-variable] on each line |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1769 for more info): |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1770 |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1771 `dired-listing-switches' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1772 `dired-trivial-filenames' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1773 `dired-shrink-to-fit' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1774 `dired-marker-char' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1775 `dired-del-marker' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1776 `dired-keep-marker-rename' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1777 `dired-keep-marker-copy' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1778 `dired-keep-marker-hardlink' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1779 `dired-keep-marker-symlink' |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1780 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1781 Hooks (use \\[describe-variable] to see their documentation): |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1782 |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1783 `dired-before-readin-hook' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1784 `dired-after-readin-hook' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1785 `dired-mode-hook' |
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1786 `dired-load-hook' |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1787 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1788 Keybindings: |
661 | 1789 \\{dired-mode-map}" |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1790 ;; Not to be called interactively (e.g. dired-directory will be set |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1791 ;; to default-directory, which is wrong with wildcards). |
661 | 1792 (kill-all-local-variables) |
1793 (use-local-map dired-mode-map) | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1794 (dired-advertise) ; default-directory is already set |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1795 (setq major-mode 'dired-mode |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1796 mode-name "Dired" |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
1797 ;; case-fold-search nil |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1798 buffer-read-only t |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1799 selective-display t ; for subdirectory hiding |
27784
c27b002e4491
(dired-mode): Call propertized-buffer-identification to
Gerd Moellmann <gerd@gnu.org>
parents:
27051
diff
changeset
|
1800 mode-line-buffer-identification |
c27b002e4491
(dired-mode): Call propertized-buffer-identification to
Gerd Moellmann <gerd@gnu.org>
parents:
27051
diff
changeset
|
1801 (propertized-buffer-identification "%17b")) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1802 (set (make-local-variable 'revert-buffer-function) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1803 (function dired-revert)) |
54512
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
1804 (set (make-local-variable 'buffer-stale-function) |
1042cb3d696b
(dired-directory-changed-p, dired-buffer-stale-p): New functions.
Luc Teirlinck <teirllm@auburn.edu>
parents:
53789
diff
changeset
|
1805 (function dired-buffer-stale-p)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1806 (set (make-local-variable 'page-delimiter) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1807 "\n\n") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1808 (set (make-local-variable 'dired-directory) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1809 (or dirname default-directory)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1810 ;; list-buffers uses this to display the dir being edited in this buffer. |
105196
d991506f9286
* menu-bar.el (list-buffers-directory): Add docstring.
Juanma Barranquero <lekktu@gmail.com>
parents:
105170
diff
changeset
|
1811 (setq list-buffers-directory |
d991506f9286
* menu-bar.el (list-buffers-directory): Add docstring.
Juanma Barranquero <lekktu@gmail.com>
parents:
105170
diff
changeset
|
1812 (expand-file-name (if (listp dired-directory) |
d991506f9286
* menu-bar.el (list-buffers-directory): Add docstring.
Juanma Barranquero <lekktu@gmail.com>
parents:
105170
diff
changeset
|
1813 (car dired-directory) |
d991506f9286
* menu-bar.el (list-buffers-directory): Add docstring.
Juanma Barranquero <lekktu@gmail.com>
parents:
105170
diff
changeset
|
1814 dired-directory))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1815 (set (make-local-variable 'dired-actual-switches) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1816 (or switches dired-listing-switches)) |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1817 (set (make-local-variable 'font-lock-defaults) |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
1818 '(dired-font-lock-keywords t nil nil beginning-of-line)) |
55154
9752700e4860
(dired-mode): Rename desktop-buffer-misc-data-function to desktop-save-buffer.
Lars Hansen <larsh@soem.dk>
parents:
55108
diff
changeset
|
1819 (set (make-local-variable 'desktop-save-buffer) |
55058
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
1820 'dired-desktop-buffer-misc-data) |
55937
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
1821 (setq dired-switches-alist nil) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1822 (dired-sort-other dired-actual-switches t) |
61478
ca956f06ae9e
* dired.el (dired-mode): Use dnd-* instead of x-dnd-*
Jan Djärv <jan.h.d@swipnet.se>
parents:
61296
diff
changeset
|
1823 (when (featurep 'dnd) |
62439
af763a03ded2
(dired-mode): Simplify.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
62373
diff
changeset
|
1824 (set (make-local-variable 'dnd-protocol-alist) |
af763a03ded2
(dired-mode): Simplify.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
62373
diff
changeset
|
1825 (append dired-dnd-protocol-alist dnd-protocol-alist))) |
106239
0ac473df1bd1
Provide additional default values (file name at point or at the
Juri Linkov <juri@jurta.org>
parents:
106120
diff
changeset
|
1826 (add-hook 'file-name-at-point-functions 'dired-file-name-at-point nil t) |
97079
22b04404b5d5
(dired-insert-set-properties): Add new text property
Juri Linkov <juri@jurta.org>
parents:
97062
diff
changeset
|
1827 (add-hook 'isearch-mode-hook 'dired-isearch-filenames-setup nil t) |
62240
19d278c4224b
* dnd.el (dnd-protocol-alist): Improve custom type.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
61478
diff
changeset
|
1828 (run-mode-hooks 'dired-mode-hook)) |
35607 | 1829 |
3591
507f64624555
Apply typo patches from Paul Eggert.
Jim Blandy <jimb@redhat.com>
parents:
3580
diff
changeset
|
1830 ;; Idiosyncratic dired commands that don't deal with marks. |
661 | 1831 |
1832 (defun dired-summary () | |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1833 "Summarize basic Dired commands and show recent dired errors." |
661 | 1834 (interactive) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1835 (dired-why) |
661 | 1836 ;>> this should check the key-bindings and use substitute-command-keys if non-standard |
1837 (message | |
3822
242b72c42f33
* dired.el (dired-summary): dired-do-rename is on "R", not "r".
Jim Blandy <jimb@redhat.com>
parents:
3737
diff
changeset
|
1838 "d-elete, u-ndelete, x-punge, f-ind, o-ther window, R-ename, C-opy, h-elp")) |
661 | 1839 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1840 (defun dired-undo () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1841 "Undo in a dired buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1842 This doesn't recover lost files, it just undoes changes in the buffer itself. |
55970
58340ec919e5
(dired-undo): Call `dired-build-subdir-alist'.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55937
diff
changeset
|
1843 You can use it to recover marks, killed lines or subdirs." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1844 (interactive) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
1845 (let ((inhibit-read-only t)) |
55970
58340ec919e5
(dired-undo): Call `dired-build-subdir-alist'.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55937
diff
changeset
|
1846 (undo)) |
58340ec919e5
(dired-undo): Call `dired-build-subdir-alist'.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55937
diff
changeset
|
1847 (dired-build-subdir-alist) |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1848 (message "Change in dired buffer undone. |
55970
58340ec919e5
(dired-undo): Call `dired-build-subdir-alist'.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55937
diff
changeset
|
1849 Actual changes in files cannot be undone by Emacs.")) |
661 | 1850 |
82195
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1851 (defun dired-toggle-read-only () |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1852 "Edit dired buffer with Wdired, or set it read-only. |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1853 Call `wdired-change-to-wdired-mode' in dired buffers whose editing is |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1854 supported by Wdired (the major mode of the dired buffer is `dired-mode'). |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1855 Otherwise, for buffers inheriting from dired-mode, call `toggle-read-only'." |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1856 (interactive) |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1857 (if (eq major-mode 'dired-mode) |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1858 (wdired-change-to-wdired-mode) |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1859 (toggle-read-only))) |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
1860 |
661 | 1861 (defun dired-next-line (arg) |
1862 "Move down lines then position at filename. | |
1863 Optional prefix ARG says how many lines to move; default is one line." | |
1864 (interactive "p") | |
85406
25e29d02bb55
(dired-next-line, dired-previous-line): Use forward-line.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
85311
diff
changeset
|
1865 (forward-line arg) |
661 | 1866 (dired-move-to-filename)) |
1867 | |
1868 (defun dired-previous-line (arg) | |
1869 "Move up lines then position at filename. | |
1870 Optional prefix ARG says how many lines to move; default is one line." | |
1871 (interactive "p") | |
85406
25e29d02bb55
(dired-next-line, dired-previous-line): Use forward-line.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
85311
diff
changeset
|
1872 (forward-line (- arg)) |
661 | 1873 (dired-move-to-filename)) |
1874 | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1875 (defun dired-next-dirline (arg &optional opoint) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1876 "Goto ARG'th next directory file line." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1877 (interactive "p") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1878 (or opoint (setq opoint (point))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1879 (if (if (> arg 0) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1880 (re-search-forward dired-re-dir nil t arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1881 (beginning-of-line) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1882 (re-search-backward dired-re-dir nil t (- arg))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1883 (dired-move-to-filename) ; user may type `i' or `f' |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1884 (goto-char opoint) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1885 (error "No more subdirectories"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1886 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1887 (defun dired-prev-dirline (arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1888 "Goto ARG'th previous directory file line." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1889 (interactive "p") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1890 (dired-next-dirline (- arg))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1891 |
13033
216edf9576ea
(dired-up-directory): Add optional argument `other-window' to obviate
Erik Naggum <erik@naggum.no>
parents:
13010
diff
changeset
|
1892 (defun dired-up-directory (&optional other-window) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1893 "Run Dired on parent directory of current directory. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1894 Find the parent directory either in this buffer or another buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1895 Creates a buffer if necessary." |
13033
216edf9576ea
(dired-up-directory): Add optional argument `other-window' to obviate
Erik Naggum <erik@naggum.no>
parents:
13010
diff
changeset
|
1896 (interactive "P") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1897 (let* ((dir (dired-current-directory)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1898 (up (file-name-directory (directory-file-name dir)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1899 (or (dired-goto-file (directory-file-name dir)) |
1170 | 1900 ;; Only try dired-goto-subdir if buffer has more than one dir. |
1901 (and (cdr dired-subdir-alist) | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1902 (dired-goto-subdir up)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1903 (progn |
13033
216edf9576ea
(dired-up-directory): Add optional argument `other-window' to obviate
Erik Naggum <erik@naggum.no>
parents:
13010
diff
changeset
|
1904 (if other-window |
216edf9576ea
(dired-up-directory): Add optional argument `other-window' to obviate
Erik Naggum <erik@naggum.no>
parents:
13010
diff
changeset
|
1905 (dired-other-window up) |
216edf9576ea
(dired-up-directory): Add optional argument `other-window' to obviate
Erik Naggum <erik@naggum.no>
parents:
13010
diff
changeset
|
1906 (dired up)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1907 (dired-goto-file dir))))) |
661 | 1908 |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1909 (defun dired-get-file-for-visit () |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1910 "Get the current line's file name, with an error if file does not exist." |
17988
2e732d9d5b79
(dired-find-file): Likewise.
Kenichi Handa <handa@m17n.org>
parents:
17944
diff
changeset
|
1911 (interactive) |
51444
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1912 ;; We pass t for second arg so that we don't get error for `.' and `..'. |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1913 (let ((raw (dired-get-filename nil t)) |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1914 file-name) |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1915 (if (null raw) |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1916 (error "No file on this line")) |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
1917 (setq file-name (file-name-sans-versions raw t)) |
16490
92289a4265ed
(dired-find-file): Error if line's file does not exist.
Richard M. Stallman <rms@gnu.org>
parents:
16457
diff
changeset
|
1918 (if (file-exists-p file-name) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1919 file-name |
18824
41c3ad77f90a
(dired-find-file): Better error message
Richard M. Stallman <rms@gnu.org>
parents:
18160
diff
changeset
|
1920 (if (file-symlink-p file-name) |
41c3ad77f90a
(dired-find-file): Better error message
Richard M. Stallman <rms@gnu.org>
parents:
18160
diff
changeset
|
1921 (error "File is a symlink to a nonexistent target") |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1922 (error "File no longer exists; type `g' to update dired buffer"))))) |
661 | 1923 |
101546 | 1924 ;; Force C-m keybinding rather than `f' or `e' in the mode doc: |
104922
c603ee2aac17
* keymap.c (QCadvertised_binding): New constant.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
104681
diff
changeset
|
1925 (define-obsolete-function-alias 'dired-advertised-find-file 'dired-find-file "23.2") |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1926 (defun dired-find-file () |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1927 "In Dired, visit the file or directory named on this line." |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1928 (interactive) |
51498
031a70df49c9
(dired-get-filename): Don't err for . and .. for calls from dired-add-entry.
Juanma Barranquero <lekktu@gmail.com>
parents:
51444
diff
changeset
|
1929 ;; Bind `find-file-run-dired' so that the command works on directories |
50831
5565e45852d3
(dired-find-file): Bind find-file-run-dired around the call to find-file.
Richard M. Stallman <rms@gnu.org>
parents:
50464
diff
changeset
|
1930 ;; too, independent of the user's setting. |
5565e45852d3
(dired-find-file): Bind find-file-run-dired around the call to find-file.
Richard M. Stallman <rms@gnu.org>
parents:
50464
diff
changeset
|
1931 (let ((find-file-run-dired t)) |
5565e45852d3
(dired-find-file): Bind find-file-run-dired around the call to find-file.
Richard M. Stallman <rms@gnu.org>
parents:
50464
diff
changeset
|
1932 (find-file (dired-get-file-for-visit)))) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1933 |
30108
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
1934 (defun dired-find-alternate-file () |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1935 "In Dired, visit this file or directory instead of the dired buffer." |
30108
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
1936 (interactive) |
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
1937 (set-buffer-modified-p nil) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1938 (find-alternate-file (dired-get-file-for-visit))) |
46789
cf99f76fc3d4
Add comment for last change.
Andreas Schwab <schwab@suse.de>
parents:
46759
diff
changeset
|
1939 ;; Don't override the setting from .emacs. |
46759
6e0e9800f72c
Hide disabling of dired-find-alternate-file behind
Andreas Schwab <schwab@suse.de>
parents:
46086
diff
changeset
|
1940 ;;;###autoload (put 'dired-find-alternate-file 'disabled t) |
30108
d78375eda4e8
(dired-find-alternate-file): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
28966
diff
changeset
|
1941 |
6594
bca9e6c8a07f
(dired-mouse-find-file-other-window): New command.
Richard M. Stallman <rms@gnu.org>
parents:
6309
diff
changeset
|
1942 (defun dired-mouse-find-file-other-window (event) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1943 "In Dired, visit the file or directory name you click on." |
6594
bca9e6c8a07f
(dired-mouse-find-file-other-window): New command.
Richard M. Stallman <rms@gnu.org>
parents:
6309
diff
changeset
|
1944 (interactive "e") |
44764
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1945 (let (window pos file) |
6594
bca9e6c8a07f
(dired-mouse-find-file-other-window): New command.
Richard M. Stallman <rms@gnu.org>
parents:
6309
diff
changeset
|
1946 (save-excursion |
44764
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1947 (setq window (posn-window (event-end event)) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1948 pos (posn-point (event-end event))) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1949 (if (not (windowp window)) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1950 (error "No file chosen")) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1951 (set-buffer (window-buffer window)) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1952 (goto-char pos) |
2e019a1ff633
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
44475
diff
changeset
|
1953 (setq file (dired-get-file-for-visit))) |
52369
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1954 (if (file-directory-p file) |
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1955 (or (and (cdr dired-subdir-alist) |
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1956 (dired-goto-subdir file)) |
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1957 (progn |
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1958 (select-window window) |
5e02293b946b
(dired-mouse-find-file-other-window):
Richard M. Stallman <rms@gnu.org>
parents:
51846
diff
changeset
|
1959 (dired-other-window file))) |
59279
565c4724abdc
(dired-view-command-alist): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
59024
diff
changeset
|
1960 (select-window window) |
565c4724abdc
(dired-view-command-alist): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
59024
diff
changeset
|
1961 (find-file-other-window (file-name-sans-versions file t))))) |
44475
9cab12e7e72a
(dired-view-command-alist): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
44234
diff
changeset
|
1962 |
661 | 1963 (defun dired-view-file () |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
1964 "In Dired, examine a file in view mode, returning to Dired when done. |
44475
9cab12e7e72a
(dired-view-command-alist): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
44234
diff
changeset
|
1965 When file is a directory, show it in this buffer if it is inserted. |
59279
565c4724abdc
(dired-view-command-alist): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
59024
diff
changeset
|
1966 Otherwise, display it in another buffer." |
661 | 1967 (interactive) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1968 (let ((file (dired-get-file-for-visit))) |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1969 (if (file-directory-p file) |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1970 (or (and (cdr dired-subdir-alist) |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1971 (dired-goto-subdir file)) |
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1972 (dired file)) |
59279
565c4724abdc
(dired-view-command-alist): Variable deleted.
Richard M. Stallman <rms@gnu.org>
parents:
59024
diff
changeset
|
1973 (view-file file)))) |
661 | 1974 |
1975 (defun dired-find-file-other-window () | |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1976 "In Dired, visit this file or directory in another window." |
661 | 1977 (interactive) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1978 (find-file-other-window (dired-get-file-for-visit))) |
878
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
1979 |
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
1980 (defun dired-display-file () |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1981 "In Dired, display this file or directory in another window." |
878
5b1c5b4286e7
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
834
diff
changeset
|
1982 (interactive) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1983 (display-buffer (find-file-noselect (dired-get-file-for-visit)))) |
35607 | 1984 |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1985 ;;; Functions for extracting and manipulating file names in Dired buffers. |
661 | 1986 |
1987 (defun dired-get-filename (&optional localp no-error-if-not-filep) | |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
1988 "In Dired, return name of file mentioned on this line. |
661 | 1989 Value returned normally includes the directory name. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1990 Optional arg LOCALP with value `no-dir' means don't include directory |
51539
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1991 name in result. A value of `verbatim' means to return the name exactly as |
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1992 it occurs in the buffer, and a value of t means construct name relative to |
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1993 `default-directory', which still may contain slashes if in a subdirectory. |
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1994 Optional arg NO-ERROR-IF-NOT-FILEP means treat `.' and `..' as |
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1995 regular filenames and return nil if no filename on this line. |
244cba9fc534
(dired-re-dot): Make it handle trailing /.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51531
diff
changeset
|
1996 Otherwise, an error occurs in these cases." |
26914
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
1997 (let (case-fold-search file p1 p2 already-absolute) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1998 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
1999 (if (setq p1 (dired-move-to-filename (not no-error-if-not-filep))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2000 (setq p2 (dired-move-to-end-of-filename no-error-if-not-filep)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2001 ;; nil if no file on this line, but no-error-if-not-filep is t: |
10126
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
2002 (if (setq file (and p1 p2 (buffer-substring p1 p2))) |
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
2003 (progn |
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
2004 ;; Get rid of the mouse-face property that file names have. |
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
2005 (set-text-properties 0 (length file) nil file) |
b4262885826e
(dired-insert-directory): Quote certain chars with \.
Richard M. Stallman <rms@gnu.org>
parents:
9673
diff
changeset
|
2006 ;; Unquote names quoted by ls or by dired-insert-directory. |
102825
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2007 ;; This code was written using `read' to unquote, because |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2008 ;; it's faster than substituting \007 (4 chars) -> ^G (1 |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2009 ;; char) etc. in a lisp loop. Unfortunately, this decision |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2010 ;; has necessitated hacks such as dealing with filenames |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2011 ;; with quotation marks in their names. |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2012 (while (string-match "\\(?:[^\\]\\|\\`\\)\\(\"\\)" file) |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2013 (setq file (replace-match "\\\"" nil t file 1))) |
14923c394d62
* dired.el (dired-get-filename): Always pass filename through
Chong Yidong <cyd@stupidchicken.com>
parents:
101546
diff
changeset
|
2014 (setq file (read (concat "\"" file "\""))) |
50197
ecb46e1986f0
* dired.el (dired-get-filename): Pay attention to the case that
Kenichi Handa <handa@m17n.org>
parents:
49772
diff
changeset
|
2015 ;; The above `read' will return a unibyte string if FILE |
ecb46e1986f0
* dired.el (dired-get-filename): Pay attention to the case that
Kenichi Handa <handa@m17n.org>
parents:
49772
diff
changeset
|
2016 ;; contains eight-bit-control/graphic characters. |
ecb46e1986f0
* dired.el (dired-get-filename): Pay attention to the case that
Kenichi Handa <handa@m17n.org>
parents:
49772
diff
changeset
|
2017 (if (and enable-multibyte-characters |
ecb46e1986f0
* dired.el (dired-get-filename): Pay attention to the case that
Kenichi Handa <handa@m17n.org>
parents:
49772
diff
changeset
|
2018 (not (multibyte-string-p file))) |
ecb46e1986f0
* dired.el (dired-get-filename): Pay attention to the case that
Kenichi Handa <handa@m17n.org>
parents:
49772
diff
changeset
|
2019 (setq file (string-to-multibyte file))))) |
27051
66940eaf5c5c
(dired-get-filename): Don't call file-name-absolute-p with FILE if FILE is nil.
Richard M. Stallman <rms@gnu.org>
parents:
26914
diff
changeset
|
2020 (and file (file-name-absolute-p file) |
38214
a4de79556592
(dired-get-filename): A file name starting with ~
Richard M. Stallman <rms@gnu.org>
parents:
38091
diff
changeset
|
2021 ;; A relative file name can start with ~. |
a4de79556592
(dired-get-filename): A file name starting with ~
Richard M. Stallman <rms@gnu.org>
parents:
38091
diff
changeset
|
2022 ;; Don't treat it as absolute in this context. |
a4de79556592
(dired-get-filename): A file name starting with ~
Richard M. Stallman <rms@gnu.org>
parents:
38091
diff
changeset
|
2023 (not (eq (aref file 0) ?~)) |
26914
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2024 (setq already-absolute t)) |
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2025 (cond |
43131
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2026 ((null file) |
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2027 nil) |
51498
031a70df49c9
(dired-get-filename): Don't err for . and .. for calls from dired-add-entry.
Juanma Barranquero <lekktu@gmail.com>
parents:
51444
diff
changeset
|
2028 ((eq localp 'verbatim) |
031a70df49c9
(dired-get-filename): Don't err for . and .. for calls from dired-add-entry.
Juanma Barranquero <lekktu@gmail.com>
parents:
51444
diff
changeset
|
2029 file) |
51444
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
2030 ((and (not no-error-if-not-filep) |
55862
f1e403523e6d
(dired-get-filename): Don't use dired-re-dot.
Andreas Schwab <schwab@suse.de>
parents:
55154
diff
changeset
|
2031 (member file '("." ".."))) |
51444
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
2032 (error "Cannot operate on `.' or `..'")) |
26914
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2033 ((and (eq localp 'no-dir) already-absolute) |
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2034 (file-name-nondirectory file)) |
43131
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2035 (already-absolute |
47181
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2036 (let ((handler (find-file-name-handler file nil))) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2037 ;; check for safe-magic property so that we won't |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2038 ;; put /: for names that don't really need them. |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2039 ;; For instance, .gz files when auto-compression-mode is on. |
47181
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2040 (if (and handler (not (get handler 'safe-magic))) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2041 (concat "/:" file) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2042 file))) |
43131
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2043 ((eq localp 'no-dir) |
26914
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2044 file) |
43131
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2045 ((equal (dired-current-directory) "/") |
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2046 (setq file (concat (dired-current-directory localp) file)) |
47181
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2047 (let ((handler (find-file-name-handler file nil))) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2048 ;; check for safe-magic property so that we won't |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2049 ;; put /: for names that don't really need them. |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2050 ;; For instance, .gz files when auto-compression-mode is on. |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2051 (if (and handler (not (get handler 'safe-magic))) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2052 (concat "/:" file) |
e17812b1a993
(defgroup dired): Use `files' as parent.
Richard M. Stallman <rms@gnu.org>
parents:
46789
diff
changeset
|
2053 file))) |
26914
09c7b74fa57f
* ls-lisp.el (ls-lisp-insert-directory): Print an explicit message
Eli Zaretskii <eliz@gnu.org>
parents:
26120
diff
changeset
|
2054 (t |
43131
0c878a7e5de7
(dired-get-filename): Add /: when appropriate
Richard M. Stallman <rms@gnu.org>
parents:
43107
diff
changeset
|
2055 (concat (dired-current-directory localp) file))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2056 |
10214
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2057 (defun dired-string-replace-match (regexp string newtext |
51498
031a70df49c9
(dired-get-filename): Don't err for . and .. for calls from dired-add-entry.
Juanma Barranquero <lekktu@gmail.com>
parents:
51444
diff
changeset
|
2058 &optional literal global) |
10214
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2059 "Replace first match of REGEXP in STRING with NEWTEXT. |
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2060 If it does not match, nil is returned instead of the new string. |
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2061 Optional arg LITERAL means to take NEWTEXT literally. |
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2062 Optional arg GLOBAL means to replace all matches." |
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2063 (if global |
25415
862886e87cf5
(dired-string-replace-match): Return `nil' when no match
Richard M. Stallman <rms@gnu.org>
parents:
24456
diff
changeset
|
2064 (let ((start 0) ret) |
12906
28a8f63327fc
(dired-string-replace-match): Simplify using replace-match.
Richard M. Stallman <rms@gnu.org>
parents:
12801
diff
changeset
|
2065 (while (string-match regexp string start) |
28a8f63327fc
(dired-string-replace-match): Simplify using replace-match.
Richard M. Stallman <rms@gnu.org>
parents:
12801
diff
changeset
|
2066 (let ((from-end (- (length string) (match-end 0)))) |
25415
862886e87cf5
(dired-string-replace-match): Return `nil' when no match
Richard M. Stallman <rms@gnu.org>
parents:
24456
diff
changeset
|
2067 (setq ret (setq string (replace-match newtext t literal string))) |
12906
28a8f63327fc
(dired-string-replace-match): Simplify using replace-match.
Richard M. Stallman <rms@gnu.org>
parents:
12801
diff
changeset
|
2068 (setq start (- (length string) from-end)))) |
25415
862886e87cf5
(dired-string-replace-match): Return `nil' when no match
Richard M. Stallman <rms@gnu.org>
parents:
24456
diff
changeset
|
2069 ret) |
10214
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2070 (if (not (string-match regexp string 0)) |
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2071 nil |
12906
28a8f63327fc
(dired-string-replace-match): Simplify using replace-match.
Richard M. Stallman <rms@gnu.org>
parents:
12801
diff
changeset
|
2072 (replace-match newtext t literal string)))) |
10214
82e7df72b8a0
(dired-string-replace-match): Function moved here.
Richard M. Stallman <rms@gnu.org>
parents:
10126
diff
changeset
|
2073 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2074 (defun dired-make-absolute (file &optional dir) |
49243 | 2075 ;;"Convert FILE (a file name relative to DIR) to an absolute file name." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2076 ;; We can't always use expand-file-name as this would get rid of `.' |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2077 ;; or expand in / instead default-directory if DIR=="". |
97142 | 2078 ;; This should be good enough for ange-ftp. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2079 ;; It should be reasonably fast, though, as it is called in |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2080 ;; dired-get-filename. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2081 (concat (or dir default-directory) file)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2082 |
16794
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2083 (defun dired-make-relative (file &optional dir ignore) |
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2084 "Convert FILE (an absolute file name) to a name relative to DIR. |
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2085 If this is impossible, return FILE unchanged. |
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2086 DIR must be a directory name, not a file name." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2087 (or dir (setq dir default-directory)) |
5003
28ad14078b0e
(dired-chown-program): Check for irix, not silicon-graphic-unix.
Richard M. Stallman <rms@gnu.org>
parents:
4888
diff
changeset
|
2088 ;; This case comes into play if default-directory is set to |
28ad14078b0e
(dired-chown-program): Check for irix, not silicon-graphic-unix.
Richard M. Stallman <rms@gnu.org>
parents:
4888
diff
changeset
|
2089 ;; use ~. |
28ad14078b0e
(dired-chown-program): Check for irix, not silicon-graphic-unix.
Richard M. Stallman <rms@gnu.org>
parents:
4888
diff
changeset
|
2090 (if (and (> (length dir) 0) (= (aref dir 0) ?~)) |
28ad14078b0e
(dired-chown-program): Check for irix, not silicon-graphic-unix.
Richard M. Stallman <rms@gnu.org>
parents:
4888
diff
changeset
|
2091 (setq dir (expand-file-name dir))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2092 (if (string-match (concat "^" (regexp-quote dir)) file) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2093 (substring file (match-end 0)) |
56035
e3ace501b5f4
(dired-revert): If buffer is marked unmodified before
Luc Teirlinck <teirllm@auburn.edu>
parents:
56015
diff
changeset
|
2094 ;;; (or no-error |
16794
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2095 ;;; (error "%s: not in directory tree growing at %s" file dir)) |
2de3fd99ae88
(dired-make-relative): Ignore the third argument;
Richard M. Stallman <rms@gnu.org>
parents:
16782
diff
changeset
|
2096 file)) |
35607 | 2097 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2098 ;;; Functions for finding the file name in a dired buffer line. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2099 |
16782
97849649b875
(dired-permission-flags-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16773
diff
changeset
|
2100 (defvar dired-permission-flags-regexp |
97849649b875
(dired-permission-flags-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16773
diff
changeset
|
2101 "\\([^ ]\\)[-r][-w]\\([^ ]\\)[-r][-w]\\([^ ]\\)[-r][-w]\\([^ ]\\)" |
97849649b875
(dired-permission-flags-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16773
diff
changeset
|
2102 "Regular expression to match the permission flags in `ls -l'.") |
97849649b875
(dired-permission-flags-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16773
diff
changeset
|
2103 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2104 ;; Move to first char of filename on this line. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2105 ;; Returns position (point) or nil if no filename on this line." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2106 (defun dired-move-to-filename (&optional raise-error eol) |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
2107 "Move to the beginning of the filename on the current line. |
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
2108 Return the position of the beginning of the filename, or nil if none found." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2109 ;; This is the UNIX version. |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2110 (or eol (setq eol (line-end-position))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2111 (beginning-of-line) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2112 ;; First try assuming `ls --dired' was used. |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2113 (let ((change (next-single-property-change (point) 'dired-filename nil eol))) |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2114 (cond |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2115 ((and change (< change eol)) |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2116 (goto-char change)) |
66325
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
2117 ((re-search-forward directory-listing-before-filename-regexp eol t) |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2118 (goto-char (match-end 0))) |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2119 ((re-search-forward dired-permission-flags-regexp eol t) |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2120 ;; Ha! There *is* a file. Our regexp-from-hell just failed to find it. |
57228
445f56b6dc24
(dired-move-to-filename): Don't output a message if
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56423
diff
changeset
|
2121 (if raise-error |
66325
fda96ff4c7e5
* files.el (directory-listing-before-filename-regexp): New
Michael Albinus <michael.albinus@gmx.de>
parents:
65689
diff
changeset
|
2122 (error "Unrecognized line! Check directory-listing-before-filename-regexp")) |
57228
445f56b6dc24
(dired-move-to-filename): Don't output a message if
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56423
diff
changeset
|
2123 (beginning-of-line) |
445f56b6dc24
(dired-move-to-filename): Don't output a message if
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56423
diff
changeset
|
2124 nil) |
47507
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2125 (raise-error |
d03e0c2bb52c
(dired-font-lock-keywords): Use regexp-opt.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
47491
diff
changeset
|
2126 (error "No file on this line"))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2127 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2128 (defun dired-move-to-end-of-filename (&optional no-error) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2129 ;; Assumes point is at beginning of filename, |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2130 ;; thus the rwx bit re-search-backward below will succeed in *this* |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2131 ;; line if at all. So, it should be called only after |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2132 ;; (dired-move-to-filename t). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2133 ;; On failure, signals an error (with non-nil NO-ERROR just returns nil). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2134 ;; This is the UNIX version. |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2135 (if (get-text-property (point) 'dired-filename) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2136 (goto-char (next-single-property-change (point) 'dired-filename)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2137 (let (opoint file-type executable symlink hidden case-fold-search used-F eol) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2138 ;; case-fold-search is nil now, so we can test for capital F: |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2139 (setq used-F (string-match "F" dired-actual-switches) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2140 opoint (point) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2141 eol (save-excursion (end-of-line) (point)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2142 hidden (and selective-display |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2143 (save-excursion (search-forward "\r" eol t)))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2144 (if hidden |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2145 nil |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2146 (save-excursion ;; Find out what kind of file this is: |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2147 ;; Restrict perm bits to be non-blank, |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2148 ;; otherwise this matches one char to early (looking backward): |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2149 ;; "l---------" (some systems make symlinks that way) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2150 ;; "----------" (plain file with zero perms) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2151 (if (re-search-backward |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2152 dired-permission-flags-regexp nil t) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2153 (setq file-type (char-after (match-beginning 1)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2154 symlink (eq file-type ?l) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2155 ;; Only with -F we need to know whether it's an executable |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2156 executable (and |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2157 used-F |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2158 (string-match |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2159 "[xst]" ;; execute bit set anywhere? |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2160 (concat |
54577
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
2161 (match-string 2) |
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
2162 (match-string 3) |
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
2163 (match-string 4))))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2164 (or no-error (error "No file on this line")))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2165 ;; Move point to end of name: |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2166 (if symlink |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
2167 (if (search-forward " -> " eol t) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2168 (progn |
57264
fc40eb786614
(dired-view-command-alist): Use more efficient regexps. Remove dubious args.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57228
diff
changeset
|
2169 (forward-char -4) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2170 (and used-F |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2171 dired-ls-F-marks-symlinks |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2172 (eq (preceding-char) ?@) ;; did ls really mark the link? |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2173 (forward-char -1)))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2174 (goto-char eol) ;; else not a symbolic link |
65027
966abb81fa37
(dired-move-to-end-of-filename):
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64961
diff
changeset
|
2175 ;; ls -lF marks dirs, sockets, fifos and executables with exactly |
966abb81fa37
(dired-move-to-end-of-filename):
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64961
diff
changeset
|
2176 ;; one trailing character. (Executable bits on symlinks ain't mean |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2177 ;; a thing, even to ls, but we know it's not a symlink.) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2178 (and used-F |
65027
966abb81fa37
(dired-move-to-end-of-filename):
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64961
diff
changeset
|
2179 (or (memq file-type '(?d ?s ?p)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2180 executable) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2181 (forward-char -1)))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2182 (or no-error |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2183 (not (eq opoint (point))) |
87139
f358a2fd5895
Fix buggy calls to `error'.
Deepak Goel <deego@gnufans.org>
parents:
86356
diff
changeset
|
2184 (error "%s" (if hidden |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2185 (substitute-command-keys |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2186 "File line is hidden, type \\[dired-hide-subdir] to unhide") |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2187 "No file on this line"))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2188 (if (eq opoint (point)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2189 nil |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
2190 (point))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2191 |
35607 | 2192 |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2193 ;;; COPY NAMES OF MARKED FILES INTO KILL-RING. |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2194 |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2195 (defun dired-copy-filename-as-kill (&optional arg) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2196 "Copy names of marked (or next ARG) files into the kill ring. |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2197 The names are separated by a space. |
49243 | 2198 With a zero prefix arg, use the absolute file name of each marked file. |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
2199 With \\[universal-argument], use the file name relative to the dired buffer's |
61296
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2200 `default-directory'. (This still may contain slashes if in a subdirectory.) |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2201 |
61296
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2202 If on a subdir headerline, use absolute subdirname instead; |
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2203 prefix arg and marked files are ignored in this case. |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2204 |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2205 You can then feed the file name(s) to other commands with \\[yank]." |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2206 (interactive "P") |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2207 (let ((string |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2208 (or (dired-get-subdir) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2209 (mapconcat (function identity) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2210 (if arg |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2211 (cond ((zerop (prefix-numeric-value arg)) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2212 (dired-get-marked-files)) |
61296
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2213 ((consp arg) |
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2214 (dired-get-marked-files t)) |
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2215 (t |
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2216 (dired-get-marked-files |
8d1c64f52397
(dired-copy-filename-as-kill): Make `-' arg behave like `-1'. Doc fix.
Luc Teirlinck <teirllm@auburn.edu>
parents:
61023
diff
changeset
|
2217 'no-dir (prefix-numeric-value arg)))) |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2218 (dired-get-marked-files 'no-dir)) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2219 " ")))) |
42594
ec991a12a82f
(dired-copy-filename-as-kill): Call kill-append if following a kill command.
Richard M. Stallman <rms@gnu.org>
parents:
42245
diff
changeset
|
2220 (if (eq last-command 'kill-region) |
ec991a12a82f
(dired-copy-filename-as-kill): Call kill-append if following a kill command.
Richard M. Stallman <rms@gnu.org>
parents:
42245
diff
changeset
|
2221 (kill-append string nil) |
ec991a12a82f
(dired-copy-filename-as-kill): Call kill-append if following a kill command.
Richard M. Stallman <rms@gnu.org>
parents:
42245
diff
changeset
|
2222 (kill-new string)) |
42100
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2223 (message "%s" string))) |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2224 |
eb27208de620
(dired-copy-filename-as-kill): Moved from dired-x.el.
Richard M. Stallman <rms@gnu.org>
parents:
41608
diff
changeset
|
2225 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2226 ;; Keeping Dired buffers in sync with the filesystem and with each other |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2227 |
17206
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2228 (defun dired-buffers-for-dir (dir &optional file) |
109333
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2229 ;; Return a list of buffers for DIR (top level or in-situ subdir). |
17206
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2230 ;; If FILE is non-nil, include only those whose wildcard pattern (if any) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2231 ;; matches FILE. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2232 ;; The list is in reverse order of buffer creation, most recent last. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2233 ;; As a side effect, killed dired buffers for DIR are removed from |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2234 ;; dired-buffers. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2235 (setq dir (file-name-as-directory dir)) |
109333
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2236 (let (result buf) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2237 (dolist (elt dired-buffers) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2238 (setq buf (cdr elt)) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2239 (cond |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2240 ((null (buffer-name buf)) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2241 ;; Buffer is killed - clean up: |
8791
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2242 (setq dired-buffers (delq elt dired-buffers))) |
109333
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2243 ((dired-in-this-tree dir (car elt)) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2244 (with-current-buffer buf |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2245 (and (assoc dir dired-subdir-alist) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2246 (or (null file) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2247 (if (stringp dired-directory) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2248 (let ((wildcards (file-name-nondirectory |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2249 dired-directory))) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2250 (or (= 0 (length wildcards)) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2251 (string-match (dired-glob-regexp wildcards) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2252 file))) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2253 (member (expand-file-name file dir) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2254 (cdr dired-directory)))) |
a13166a76062
* lisp/dired.el (dired-buffers-for-dir): Handle list values of dired-directory (Bug#6636).
Chong Yidong <cyd@stupidchicken.com>
parents:
107085
diff
changeset
|
2255 (setq result (cons buf result))))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2256 result)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2257 |
17206
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2258 (defun dired-glob-regexp (pattern) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2259 "Convert glob-pattern PATTERN to a regular expression." |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2260 (let ((matched-in-pattern 0) ;; How many chars of PATTERN we've handled. |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2261 regexp) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2262 (while (string-match "[[?*]" pattern matched-in-pattern) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2263 (let ((op-end (match-end 0)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2264 (next-op (aref pattern (match-beginning 0)))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2265 (setq regexp (concat regexp |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2266 (regexp-quote |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2267 (substring pattern matched-in-pattern |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2268 (match-beginning 0))))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2269 (cond ((= next-op ??) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2270 (setq regexp (concat regexp ".")) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2271 (setq matched-in-pattern op-end)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2272 ((= next-op ?\[) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2273 ;; Fails to handle ^ yet ???? |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2274 (let* ((set-start (match-beginning 0)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2275 (set-cont |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2276 (if (= (aref pattern (1+ set-start)) ?^) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2277 (+ 3 set-start) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2278 (+ 2 set-start))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2279 (set-end (string-match "]" pattern set-cont)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2280 (set (substring pattern set-start (1+ set-end)))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2281 (setq regexp (concat regexp set)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2282 (setq matched-in-pattern (1+ set-end)))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2283 ((= next-op ?*) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2284 (setq regexp (concat regexp ".*")) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2285 (setq matched-in-pattern op-end))))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2286 (concat "\\`" |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2287 regexp |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2288 (regexp-quote |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2289 (substring pattern matched-in-pattern)) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2290 "\\'"))) |
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2291 |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
2292 |
17206
30a9faea2a54
(dired-glob-regexp): New function.
Richard M. Stallman <rms@gnu.org>
parents:
17198
diff
changeset
|
2293 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2294 (defun dired-advertise () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2295 ;;"Advertise in variable `dired-buffers' that we dired `default-directory'." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2296 ;; With wildcards we actually advertise too much. |
8791
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2297 (let ((expanded-default (expand-file-name default-directory))) |
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2298 (if (memq (current-buffer) (dired-buffers-for-dir expanded-default)) |
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2299 t ; we have already advertised ourselves |
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2300 (setq dired-buffers |
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2301 (cons (cons expanded-default (current-buffer)) |
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2302 dired-buffers))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2303 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2304 (defun dired-unadvertise (dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2305 ;; Remove DIR from the buffer alist in variable dired-buffers. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2306 ;; This has the effect of removing any buffer whose main directory is DIR. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2307 ;; It does not affect buffers in which DIR is a subdir. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2308 ;; Removing is also done as a side-effect in dired-buffer-for-dir. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2309 (setq dired-buffers |
8791
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2310 (delq (assoc (expand-file-name dir) dired-buffers) dired-buffers))) |
35607 | 2311 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2312 ;; Tree Dired |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2313 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2314 ;;; utility functions |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2315 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2316 (defun dired-in-this-tree (file dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2317 ;;"Is FILE part of the directory tree starting at DIR?" |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2318 (let (case-fold-search) |
8791
555762c754a6
(dired-buffers-for-dir): Assume dirs are preexpanded.
Richard M. Stallman <rms@gnu.org>
parents:
8438
diff
changeset
|
2319 (string-match (concat "^" (regexp-quote dir)) file))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2320 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2321 (defun dired-normalize-subdir (dir) |
49243 | 2322 ;; Prepend default-directory to DIR if relative file name. |
2323 ;; dired-get-filename must be able to make a valid file name from a | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2324 ;; file and its directory DIR. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2325 (file-name-as-directory |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2326 (if (file-name-absolute-p dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2327 dir |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2328 (expand-file-name dir default-directory)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2329 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2330 (defun dired-get-subdir () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2331 ;;"Return the subdir name on this line, or nil if not on a headerline." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2332 ;; Look up in the alist whether this is a headerline. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2333 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2334 (let ((cur-dir (dired-current-directory))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2335 (beginning-of-line) ; alist stores b-o-l positions |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2336 (and (zerop (- (point) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2337 (dired-get-subdir-min (assoc cur-dir |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2338 dired-subdir-alist)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2339 cur-dir)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2340 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2341 ;(defun dired-get-subdir-min (elt) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2342 ; (cdr elt)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2343 ;; can't use macro, must be redefinable for other alist format in dired-nstd. |
2584
55e18ce6e98a
Changed fsets to defaliases.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2492
diff
changeset
|
2344 (defalias 'dired-get-subdir-min 'cdr) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2345 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2346 (defun dired-get-subdir-max (elt) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2347 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2348 (goto-char (dired-get-subdir-min elt)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2349 (dired-subdir-max))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2350 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2351 (defun dired-clear-alist () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2352 (while dired-subdir-alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2353 (set-marker (dired-get-subdir-min (car dired-subdir-alist)) nil) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2354 (setq dired-subdir-alist (cdr dired-subdir-alist)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2355 |
1091
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2356 (defun dired-subdir-index (dir) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2357 ;; Return an index into alist for use with nth |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2358 ;; for the sake of subdir moving commands. |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2359 (let (found (index 0) (alist dired-subdir-alist)) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2360 (while alist |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2361 (if (string= dir (car (car alist))) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2362 (setq alist nil found t) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2363 (setq alist (cdr alist) index (1+ index)))) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2364 (if found index nil))) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2365 |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2366 (defun dired-next-subdir (arg &optional no-error-if-not-found no-skip) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2367 "Go to next subdirectory, regardless of level." |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2368 ;; Use 0 arg to go to this directory's header line. |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2369 ;; NO-SKIP prevents moving to end of header line, returning whatever |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2370 ;; position was found in dired-subdir-alist. |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2371 (interactive "p") |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2372 (let ((this-dir (dired-current-directory)) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2373 pos index) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2374 ;; nth with negative arg does not return nil but the first element |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2375 (setq index (- (dired-subdir-index this-dir) arg)) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2376 (setq pos (if (>= index 0) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2377 (dired-get-subdir-min (nth index dired-subdir-alist)))) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2378 (if pos |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2379 (progn |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2380 (goto-char pos) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2381 (or no-skip (skip-chars-forward "^\n\r")) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2382 (point)) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2383 (if no-error-if-not-found |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2384 nil ; return nil if not found |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2385 (error "%s directory" (if (> arg 0) "Last" "First")))))) |
3302f6e93ce5
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
910
diff
changeset
|
2386 |
39376
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2387 (defun dired-build-subdir-alist (&optional switches) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2388 "Build `dired-subdir-alist' by parsing the buffer. |
39376
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2389 Returns the new value of the alist. |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2390 If optional arg SWITCHES is non-nil, use its value |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2391 instead of `dired-actual-switches'." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2392 (interactive) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2393 (dired-clear-alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2394 (save-excursion |
39376
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2395 (let* ((count 0) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2396 (inhibit-read-only t) |
60097
031a5ac39eb7
(dired-build-subdir-alist): Bind buffer-undo-list to t.
Richard M. Stallman <rms@gnu.org>
parents:
59996
diff
changeset
|
2397 (buffer-undo-list t) |
39376
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2398 (switches (or switches dired-actual-switches)) |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2399 new-dir-name |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2400 (R-ftp-base-dir-regex |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2401 ;; Used to expand subdirectory names correctly in recursive |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2402 ;; ange-ftp listings. |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2403 (and (string-match "R" switches) |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2404 (string-match "\\`/.*:\\(/.*\\)" default-directory) |
7e0db9f5d524
(dired-build-subdir-alist): Accept optional arg SWITCHES.
Eli Zaretskii <eliz@gnu.org>
parents:
39325
diff
changeset
|
2405 (concat "\\`" (match-string 1 default-directory))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2406 (goto-char (point-min)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2407 (setq dired-subdir-alist nil) |
73099
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2408 (while (re-search-forward dired-subdir-regexp nil t) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2409 ;; Avoid taking a file name ending in a colon |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2410 ;; as a subdir name. |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2411 (unless (save-excursion |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2412 (goto-char (match-beginning 0)) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2413 (beginning-of-line) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2414 (forward-char 2) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2415 (save-match-data (looking-at dired-re-perms))) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2416 (save-excursion |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2417 (goto-char (match-beginning 1)) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2418 (setq new-dir-name |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2419 (buffer-substring-no-properties (point) (match-end 1)) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2420 new-dir-name |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2421 (save-match-data |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2422 (if (and R-ftp-base-dir-regex |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2423 (not (string= new-dir-name default-directory)) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2424 (string-match R-ftp-base-dir-regex new-dir-name)) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2425 (concat default-directory |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2426 (substring new-dir-name (match-end 0))) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2427 (expand-file-name new-dir-name)))) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2428 (delete-region (point) (match-end 1)) |
73211
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2429 (insert new-dir-name)) |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2430 (setq count (1+ count)) |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2431 (dired-alist-add-1 new-dir-name |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2432 ;; Place a sub directory boundary between lines. |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2433 (save-excursion |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2434 (goto-char (match-beginning 0)) |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2435 (beginning-of-line) |
dae82b8b0355
(dired-build-subdir-alist): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
73099
diff
changeset
|
2436 (point-marker))))) |
105372
bd2966850aac
Use `called-interactively-p' instead of `interactive-p'.
Juanma Barranquero <lekktu@gmail.com>
parents:
105346
diff
changeset
|
2437 (if (and (> count 1) (called-interactively-p 'interactive)) |
73099
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2438 (message "Buffer includes %d directories" count))) |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2439 ;; We don't need to sort it because it is in buffer order per |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2440 ;; constructionem. Return new alist: |
59243837a57a
(dired-build-subdir-alist): When file ends in colon,
Richard M. Stallman <rms@gnu.org>
parents:
72716
diff
changeset
|
2441 dired-subdir-alist)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2442 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2443 (defun dired-alist-add-1 (dir new-marker) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2444 ;; Add new DIR at NEW-MARKER. Don't sort. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2445 (setq dired-subdir-alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2446 (cons (cons (dired-normalize-subdir dir) new-marker) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2447 dired-subdir-alist))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2448 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2449 (defun dired-goto-next-nontrivial-file () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2450 ;; Position point on first nontrivial file after point. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2451 (dired-goto-next-file);; so there is a file to compare with |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2452 (if (stringp dired-trivial-filenames) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2453 (while (and (not (eobp)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2454 (string-match dired-trivial-filenames |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2455 (file-name-nondirectory |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2456 (or (dired-get-filename nil t) "")))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2457 (forward-line 1) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2458 (dired-move-to-filename)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2459 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2460 (defun dired-goto-next-file () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2461 (let ((max (1- (dired-subdir-max)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2462 (while (and (not (dired-move-to-filename)) (< (point) max)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2463 (forward-line 1)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2464 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2465 (defun dired-goto-file (file) |
70802
e1bfa36494e2
(dired-mode-map): Put dired-goto-file on j, not M-g.
Richard M. Stallman <rms@gnu.org>
parents:
69783
diff
changeset
|
2466 "Go to line describing file FILE in this dired buffer." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2467 ;; Return value of point on success, else nil. |
49243 | 2468 ;; FILE must be an absolute file name. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2469 ;; Loses if FILE contains control chars like "\007" for which ls |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2470 ;; either inserts "?" or "\\007" into the buffer, so we won't find |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2471 ;; it in the buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2472 (interactive |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2473 (prog1 ; let push-mark display its message |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2474 (list (expand-file-name |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2475 (read-file-name "Goto file: " |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2476 (dired-current-directory)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2477 (push-mark))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2478 (setq file (directory-file-name file)) ; does no harm if no directory |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2479 (let (found case-fold-search dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2480 (setq dir (or (file-name-directory file) |
48986
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2481 (error "File name `%s' is not absolute" file))) |
661 | 2482 (save-excursion |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2483 ;; The hair here is to get the result of dired-goto-subdir |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2484 ;; without really calling it if we don't have any subdirs. |
5299
883c241eed1b
(dired-in-this-tree): Call expand-file-name.
Richard M. Stallman <rms@gnu.org>
parents:
5115
diff
changeset
|
2485 (if (if (string= dir (expand-file-name default-directory)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2486 (goto-char (point-min)) |
1170 | 2487 (and (cdr dired-subdir-alist) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2488 (dired-goto-subdir dir))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2489 (let ((base (file-name-nondirectory file)) |
48986
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2490 search-string |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2491 (boundary (dired-subdir-max))) |
48986
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2492 (setq search-string |
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2493 (replace-regexp-in-string "\^m" "\\^m" base nil t)) |
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2494 (setq search-string |
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2495 (replace-regexp-in-string "\\\\" "\\\\" search-string nil t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2496 (while (and (not found) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2497 ;; filenames are preceded by SPC, this makes |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2498 ;; the search faster (e.g. for the filename "-"!). |
48986
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2499 (search-forward (concat " " search-string) |
5f0ef23b7e51
(dired-goto-file): Handle \ and ^M quoted by backslash. Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
48903
diff
changeset
|
2500 boundary 'move)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2501 ;; Match could have BASE just as initial substring or |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2502 ;; or in permission bits or date or |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2503 ;; not be a proper filename at all: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2504 (if (equal base (dired-get-filename 'no-dir t)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2505 ;; Must move to filename since an (actually |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2506 ;; correct) match could have been elsewhere on the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2507 ;; ;; line (e.g. "-" would match somewhere in the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2508 ;; permission bits). |
5115
da6f8aa6c0aa
(dired-goto-file): Don't try matching one line twice.
Richard M. Stallman <rms@gnu.org>
parents:
5113
diff
changeset
|
2509 (setq found (dired-move-to-filename)) |
da6f8aa6c0aa
(dired-goto-file): Don't try matching one line twice.
Richard M. Stallman <rms@gnu.org>
parents:
5113
diff
changeset
|
2510 ;; If this isn't the right line, move forward to avoid |
da6f8aa6c0aa
(dired-goto-file): Don't try matching one line twice.
Richard M. Stallman <rms@gnu.org>
parents:
5113
diff
changeset
|
2511 ;; trying this line again. |
da6f8aa6c0aa
(dired-goto-file): Don't try matching one line twice.
Richard M. Stallman <rms@gnu.org>
parents:
5113
diff
changeset
|
2512 (forward-line 1)))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2513 (and found |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2514 ;; return value of point (i.e., FOUND): |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2515 (goto-char found)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2516 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2517 (defun dired-initial-position (dirname) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2518 ;; Where point should go in a new listing of DIRNAME. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2519 ;; Point assumed at beginning of new subdir line. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2520 ;; You may redefine this function as you wish, e.g. like in dired-x.el. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2521 (end-of-line) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2522 (if dired-trivial-filenames (dired-goto-next-nontrivial-file))) |
35607 | 2523 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2524 ;; These are hooks which make tree dired work. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2525 ;; They are in this file because other parts of dired need to call them. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2526 ;; But they don't call the rest of tree dired unless there are subdirs loaded. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2527 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2528 ;; This function is called for each retrieved filename. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2529 ;; It could stand to be faster, though it's mostly function call |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2530 ;; overhead. Avoiding the function call seems to save about 10% in |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2531 ;; dired-get-filename. Make it a defsubst? |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2532 (defun dired-current-directory (&optional localp) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2533 "Return the name of the subdirectory to which this line belongs. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2534 This returns a string with trailing slash, like `default-directory'. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2535 Optional argument means return a file name relative to `default-directory'." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2536 (let ((here (point)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2537 (alist (or dired-subdir-alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2538 ;; probably because called in a non-dired buffer |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2539 (error "No subdir-alist in %s" (current-buffer)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2540 elt dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2541 (while alist |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2542 (setq elt (car alist) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2543 dir (car elt) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2544 ;; use `<=' (not `<') as subdir line is part of subdir |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2545 alist (if (<= (dired-get-subdir-min elt) here) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2546 nil ; found |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2547 (cdr alist)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2548 (if localp |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2549 (dired-make-relative dir default-directory) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2550 dir))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2551 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2552 ;; Subdirs start at the beginning of their header lines and end just |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2553 ;; before the beginning of the next header line (or end of buffer). |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2554 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2555 (defun dired-subdir-max () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2556 (save-excursion |
1170 | 2557 (if (or (null (cdr dired-subdir-alist)) (not (dired-next-subdir 1 t t))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2558 (point-max) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2559 (point)))) |
35607 | 2560 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2561 ;; Deleting files |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2562 |
77984
b4683039515d
(dired-recursive-deletes, dired-recursive-copies): Change default to
Chong Yidong <cyd@stupidchicken.com>
parents:
77982
diff
changeset
|
2563 (defcustom dired-recursive-deletes 'top |
100171 | 2564 "Decide whether recursive deletes are allowed. |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
2565 A value of nil means no recursive deletes. |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2566 `always' means delete recursively without asking. This is DANGEROUS! |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2567 `top' means ask for each directory at top level, but delete its subdirectories |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2568 without asking. |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2569 Anything else means ask for each directory." |
49068
a6b76c097634
(dired-recursive-deletes): Fix custom type.
Richard M. Stallman <rms@gnu.org>
parents:
48986
diff
changeset
|
2570 :type '(choice :tag "Delete non-empty directories" |
a6b76c097634
(dired-recursive-deletes): Fix custom type.
Richard M. Stallman <rms@gnu.org>
parents:
48986
diff
changeset
|
2571 (const :tag "Yes" always) |
a6b76c097634
(dired-recursive-deletes): Fix custom type.
Richard M. Stallman <rms@gnu.org>
parents:
48986
diff
changeset
|
2572 (const :tag "No--only delete empty directories" nil) |
a6b76c097634
(dired-recursive-deletes): Fix custom type.
Richard M. Stallman <rms@gnu.org>
parents:
48986
diff
changeset
|
2573 (const :tag "Confirm for each directory" t) |
a6b76c097634
(dired-recursive-deletes): Fix custom type.
Richard M. Stallman <rms@gnu.org>
parents:
48986
diff
changeset
|
2574 (const :tag "Confirm for each top directory only" top)) |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2575 :group 'dired) |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2576 |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
2577 ;; Match anything but `.' and `..'. |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2578 (defvar dired-re-no-dot "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*") |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2579 |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2580 ;; Delete file, possibly delete a directory and all its files. |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2581 ;; This function is usefull outside of dired. One could change it's name |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2582 ;; to e.g. recursive-delete-file and put it somewhere else. |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2583 (defun dired-delete-file (file &optional recursive trash) "\ |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2584 Delete FILE or directory (possibly recursively if optional RECURSIVE is true.) |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2585 RECURSIVE determines what to do with a non-empty directory. If RECURSIVE is: |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
2586 nil, do not delete. |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2587 `always', delete recursively without asking. |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2588 `top', ask for each directory at top level. |
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2589 Anything else, ask for each sub-directory." |
105346
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2590 ;; This test is equivalent to |
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2591 ;; (and (file-directory-p fn) (not (file-symlink-p fn))) |
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2592 ;; but more efficient |
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2593 (if (not (eq t (car (file-attributes file)))) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2594 (delete-file file trash) |
105346
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2595 (if (and recursive |
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2596 (directory-files file t dired-re-no-dot) ; Not empty. |
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2597 (or (eq recursive 'always) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2598 (yes-or-no-p (format "Recursively %s %s? " |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2599 (if (and trash |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2600 delete-by-moving-to-trash) |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2601 "trash" |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2602 "delete") |
105346
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2603 (dired-make-relative file))))) |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2604 (if (eq recursive 'top) (setq recursive 'always)) ; Don't ask again. |
105346
57afd13b64b9
*** empty log message ***
Michael Albinus <michael.albinus@gmx.de>
parents:
105196
diff
changeset
|
2605 (setq recursive nil)) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2606 (delete-directory file recursive trash))) |
25731
62a49653ef38
(dired-recursive-deletes): New custom variable.
Richard M. Stallman <rms@gnu.org>
parents:
25558
diff
changeset
|
2607 |
12736
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
2608 (defun dired-do-flagged-delete (&optional nomessage) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
2609 "In Dired, delete the files flagged for deletion. |
12736
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
2610 If NOMESSAGE is non-nil, we don't display any message |
77841
d582a9f8e632
(dired-do-delete, dired-do-flagged-delete): Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
77709
diff
changeset
|
2611 if there are no flagged files. |
82195
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
2612 `dired-recursive-deletes' controls whether deletion of |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
2613 non-empty directories is allowed." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2614 (interactive) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2615 (let* ((dired-marker-char dired-del-marker) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2616 (regexp (dired-marker-regexp)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2617 case-fold-search) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2618 (if (save-excursion (goto-char (point-min)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2619 (re-search-forward regexp nil t)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2620 (dired-internal-do-deletions |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2621 ;; this can't move point since ARG is nil |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2622 (dired-map-over-marks (cons (dired-get-filename) (point)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2623 nil) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2624 nil t) |
12736
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
2625 (or nomessage |
a7253dcf5f9d
(dired-insert-set-properties): Catch errors.
Richard M. Stallman <rms@gnu.org>
parents:
12211
diff
changeset
|
2626 (message "(No deletions requested)"))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2627 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2628 (defun dired-do-delete (&optional arg) |
77841
d582a9f8e632
(dired-do-delete, dired-do-flagged-delete): Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
77709
diff
changeset
|
2629 "Delete all marked (or next ARG) files. |
82195
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
2630 `dired-recursive-deletes' controls whether deletion of |
69abb81564e4
(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Juri Linkov <juri@jurta.org>
parents:
82140
diff
changeset
|
2631 non-empty directories is allowed." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2632 ;; This is more consistent with the file marking feature than |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2633 ;; dired-do-flagged-delete. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2634 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2635 (dired-internal-do-deletions |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2636 ;; this may move point if ARG is an integer |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2637 (dired-map-over-marks (cons (dired-get-filename) (point)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2638 arg) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2639 arg t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2640 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2641 (defvar dired-deletion-confirmer 'yes-or-no-p) ; or y-or-n-p? |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2642 |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2643 (defun dired-internal-do-deletions (l arg &optional trash) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2644 ;; L is an alist of files to delete, with their buffer positions. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2645 ;; ARG is the prefix arg. |
97142 | 2646 ;; Filenames are absolute. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2647 ;; (car L) *must* be the *last* (bottommost) file in the dired buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2648 ;; That way as changes are made in the buffer they do not shift the |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2649 ;; lines still to be changed, so the (point) values in L stay valid. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2650 ;; Also, for subdirs in natural order, a subdir's files are deleted |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2651 ;; before the subdir itself - the other way around would not work. |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2652 (let* ((files (mapcar (function car) l)) |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2653 (count (length l)) |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2654 (succ 0) |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2655 (trashing (and trash delete-by-moving-to-trash)) |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2656 (progress-reporter |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2657 (make-progress-reporter |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2658 (if trashing "Trashing..." "Deleting...") |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2659 succ count))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2660 ;; canonicalize file list for pop up |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2661 (setq files (nreverse (mapcar (function dired-make-relative) files))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2662 (if (dired-mark-pop-up |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2663 " *Deletions*" 'delete files dired-deletion-confirmer |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2664 (format "%s %s " |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2665 (if trashing "Trash" "Delete") |
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2666 (dired-mark-prompt arg files))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2667 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2668 (let (failures);; files better be in reverse order for this loop! |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2669 (while l |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2670 (goto-char (cdr (car l))) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2671 (let ((inhibit-read-only t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2672 (condition-case err |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2673 (let ((fn (car (car l)))) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2674 (dired-delete-file fn dired-recursive-deletes trash) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2675 ;; if we get here, removing worked |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2676 (setq succ (1+ succ)) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2677 (progress-reporter-update progress-reporter succ) |
43903
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2678 (dired-fun-in-all-buffers |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2679 (file-name-directory fn) (file-name-nondirectory fn) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2680 (function dired-delete-entry) fn)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2681 (error;; catch errors from failed deletions |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2682 (dired-log "%s\n" err) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2683 (setq failures (cons (car (car l)) failures))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2684 (setq l (cdr l))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2685 (if (not failures) |
108806
511da81b16c5
Change delete-by-moving-to-trash so Lisp calls explicitly request trashing.
Chong Yidong <cyd@stupidchicken.com>
parents:
108780
diff
changeset
|
2686 (progress-reporter-done progress-reporter) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2687 (dired-log-summary |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2688 (format "%d of %d deletion%s failed" |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2689 (length failures) count |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2690 (dired-plural-s count)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2691 failures)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2692 (message "(No deletions performed)"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2693 (dired-move-to-filename)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2694 |
43903
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2695 (defun dired-fun-in-all-buffers (directory file fun &rest args) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2696 ;; In all buffers dired'ing DIRECTORY, run FUN with ARGS. |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2697 ;; If the buffer has a wildcard pattern, check that it matches FILE. |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2698 ;; (FILE does not include a directory component.) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2699 ;; FILE may be nil, in which case ignore it. |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2700 ;; Return list of buffers where FUN succeeded (i.e., returned non-nil). |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2701 (let (success-list) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2702 (dolist (buf (dired-buffers-for-dir (expand-file-name directory) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2703 file)) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2704 (with-current-buffer buf |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2705 (if (apply fun args) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2706 (setq success-list (cons (buffer-name buf) success-list))))) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2707 success-list)) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2708 |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
2709 ;; Delete the entry for FILE from |
43903
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2710 (defun dired-delete-entry (file) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2711 (save-excursion |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2712 (and (dired-goto-file file) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2713 (let ((inhibit-read-only t)) |
43903
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2714 (delete-region (progn (beginning-of-line) (point)) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2715 (save-excursion (forward-line 1) (point)))))) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2716 (dired-clean-up-after-deletion file)) |
9978ea345d85
(dired-readin): Clear out undo list.
Richard M. Stallman <rms@gnu.org>
parents:
43131
diff
changeset
|
2717 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2718 ;; This is a separate function for the sake of dired-x.el. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2719 (defun dired-clean-up-after-deletion (fn) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2720 ;; Clean up after a deleted file or directory FN. |
1170 | 2721 (save-excursion (and (cdr dired-subdir-alist) |
2722 (dired-goto-subdir fn) | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2723 (dired-kill-subdir)))) |
35607 | 2724 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2725 ;; Confirmation |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2726 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2727 (defun dired-marker-regexp () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2728 (concat "^" (regexp-quote (char-to-string dired-marker-char)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2729 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2730 (defun dired-plural-s (count) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2731 (if (= 1 count) "" "s")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2732 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2733 (defun dired-mark-prompt (arg files) |
80177
8de8dd7c8cb4
(dired-mark-prompt): Don't count/display the t element.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
79721
diff
changeset
|
2734 "Return a string for use in a prompt, either the current file |
8de8dd7c8cb4
(dired-mark-prompt): Don't count/display the t element.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
79721
diff
changeset
|
2735 name, or the marker and a count of marked files." |
8de8dd7c8cb4
(dired-mark-prompt): Don't count/display the t element.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
79721
diff
changeset
|
2736 ;; distinguish-one-marked can cause the first element to be just t. |
8de8dd7c8cb4
(dired-mark-prompt): Don't count/display the t element.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
79721
diff
changeset
|
2737 (if (eq (car files) t) (setq files (cdr files))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2738 (let ((count (length files))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2739 (if (= count 1) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2740 (car files) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2741 ;; more than 1 file: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2742 (if (integerp arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2743 ;; abs(arg) = count |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2744 ;; Perhaps this is nicer, but it also takes more screen space: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2745 ;;(format "[%s %d files]" (if (> arg 0) "next" "previous") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2746 ;; count) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2747 (format "[next %d files]" arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2748 (format "%c [%d files]" dired-marker-char count))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2749 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2750 (defun dired-pop-to-buffer (buf) |
100939
09ea3896dab5
(dired-pop-to-buffer): Don't split windows horizontally. (Bug#1806)
Martin Rudalics <rudalics@gmx.at>
parents:
100908
diff
changeset
|
2751 "Pop up buffer BUF in a way suitable for Dired." |
103233
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2752 (let ((split-window-preferred-function |
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2753 (lambda (window) |
103234
5f8eb7ae3135
(dired-pop-to-buffer): Fix last fix.
Martin Rudalics <rudalics@gmx.at>
parents:
103233
diff
changeset
|
2754 (or (and (let ((split-height-threshold 0)) |
5f8eb7ae3135
(dired-pop-to-buffer): Fix last fix.
Martin Rudalics <rudalics@gmx.at>
parents:
103233
diff
changeset
|
2755 (window-splittable-p (selected-window))) |
103233
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2756 ;; Try to split the selected window vertically if |
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2757 ;; that's possible. (Bug#1806) |
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2758 (split-window-vertically)) |
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2759 ;; Otherwise, try to split WINDOW sensibly. |
8cc53b11f921
(dired-pop-to-buffer): Try to make this behave the
Martin Rudalics <rudalics@gmx.at>
parents:
102825
diff
changeset
|
2760 (split-window-sensibly window))))) |
100939
09ea3896dab5
(dired-pop-to-buffer): Don't split windows horizontally. (Bug#1806)
Martin Rudalics <rudalics@gmx.at>
parents:
100908
diff
changeset
|
2761 (pop-to-buffer (get-buffer-create buf))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2762 ;; If dired-shrink-to-fit is t, make its window fit its contents. |
100352
6c39d6f94891
(dired-pop-to-buffer): Use fit-window-to-buffer when
Martin Rudalics <rudalics@gmx.at>
parents:
100241
diff
changeset
|
2763 (when dired-shrink-to-fit |
100362
4150ab3a5845
(dired-pop-to-buffer): Call with min-height arg 1 to
Martin Rudalics <rudalics@gmx.at>
parents:
100352
diff
changeset
|
2764 ;; Try to not delete window when we want to display less than |
4150ab3a5845
(dired-pop-to-buffer): Call with min-height arg 1 to
Martin Rudalics <rudalics@gmx.at>
parents:
100352
diff
changeset
|
2765 ;; `window-min-height' lines. |
4150ab3a5845
(dired-pop-to-buffer): Call with min-height arg 1 to
Martin Rudalics <rudalics@gmx.at>
parents:
100352
diff
changeset
|
2766 (fit-window-to-buffer (get-buffer-window buf) nil 1))) |
661 | 2767 |
68267
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
2768 (defcustom dired-no-confirm nil |
109488
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2769 "A list of symbols for commands Dired should not confirm, or t. |
17198
471ce207330c
Doc dired-no-confirm and allow t value.
Simon Marshall <simon@gnu.org>
parents:
17079
diff
changeset
|
2770 Command symbols are `byte-compile', `chgrp', `chmod', `chown', `compress', |
54663
9b0161392fe1
Add autoload for `dired-do-touch'.
Juri Linkov <juri@jurta.org>
parents:
54661
diff
changeset
|
2771 `copy', `delete', `hardlink', `load', `move', `print', `shell', `symlink', |
109488
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2772 `touch' and `uncompress'. |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2773 If t, confirmation is never needed." |
68267
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
2774 :group 'dired |
109488
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2775 :type '(choice (const :tag "Confirmation never needed" t) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2776 (set (const byte-compile) (const chgrp) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2777 (const chmod) (const chown) (const compress) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2778 (const copy) (const delete) (const hardlink) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2779 (const load) (const move) (const print) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2780 (const shell) (const symlink) (const touch) |
ced3f5ab1023
* dired.el (dired-no-confirm): Document value t and fix defcustom (bug#6597).
Juanma Barranquero <lekktu@gmail.com>
parents:
109487
diff
changeset
|
2781 (const uncompress)))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2782 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2783 (defun dired-mark-pop-up (bufname op-symbol files function &rest args) |
47544
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2784 "Return FUNCTION's result on ARGS after showing which files are marked. |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2785 Displays the file names in a buffer named BUFNAME; |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2786 nil gives \" *Marked Files*\". |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2787 This uses function `dired-pop-to-buffer' to do that. |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2788 |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2789 FUNCTION should not manipulate files, just read input |
55087a54b990
(dired-mark-pop-up): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents:
47521
diff
changeset
|
2790 (an argument or confirmation). |
32149
504f15a7d36d
(dired-mark-pop-up): Turn comment into docstring. Use with-current-buffer.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
32027
diff
changeset
|
2791 The window is not shown if there is just one file or |
504f15a7d36d
(dired-mark-pop-up): Turn comment into docstring. Use with-current-buffer.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
32027
diff
changeset
|
2792 OP-SYMBOL is a member of the list in `dired-no-confirm'. |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2793 FILES is the list of marked files. It can also be (t FILENAME) |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2794 in the case of one marked file, to distinguish that from using |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2795 just the current file." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2796 (or bufname (setq bufname " *Marked Files*")) |
17198
471ce207330c
Doc dired-no-confirm and allow t value.
Simon Marshall <simon@gnu.org>
parents:
17079
diff
changeset
|
2797 (if (or (eq dired-no-confirm t) |
471ce207330c
Doc dired-no-confirm and allow t value.
Simon Marshall <simon@gnu.org>
parents:
17079
diff
changeset
|
2798 (memq op-symbol dired-no-confirm) |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2799 ;; If FILES defaulted to the current line's file. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2800 (= (length files) 1)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2801 (apply function args) |
32149
504f15a7d36d
(dired-mark-pop-up): Turn comment into docstring. Use with-current-buffer.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
32027
diff
changeset
|
2802 (with-current-buffer (get-buffer-create bufname) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2803 (erase-buffer) |
62373
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2804 ;; Handle (t FILE) just like (FILE), here. |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2805 ;; That value is used (only in some cases), to mean |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2806 ;; just one file that was marked, rather than the current line file. |
6b68d72075c1
(dired-map-over-marks): New arg distinguish-one-marked.
Richard M. Stallman <rms@gnu.org>
parents:
62298
diff
changeset
|
2807 (dired-format-columns-of-files (if (eq (car files) t) (cdr files) files)) |
38091
58a77e50831e
(dired-mark-pop-up): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
38074
diff
changeset
|
2808 (remove-text-properties (point-min) (point-max) |
58a77e50831e
(dired-mark-pop-up): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
38074
diff
changeset
|
2809 '(mouse-face nil help-echo nil))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2810 (save-window-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2811 (dired-pop-to-buffer bufname) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2812 (apply function args)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2813 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2814 (defun dired-format-columns-of-files (files) |
94562
46f178f2b009
(dired-format-columns-of-files): Use completion--insert-strings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94559
diff
changeset
|
2815 (let ((beg (point))) |
46f178f2b009
(dired-format-columns-of-files): Use completion--insert-strings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94559
diff
changeset
|
2816 (completion--insert-strings files) |
46f178f2b009
(dired-format-columns-of-files): Use completion--insert-strings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94559
diff
changeset
|
2817 (put-text-property beg (point) 'mouse-face nil))) |
35607 | 2818 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2819 ;; Commands to mark or flag file(s) at or near current line. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2820 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2821 (defun dired-repeat-over-lines (arg function) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2822 ;; This version skips non-file lines. |
3737
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2823 (let ((pos (make-marker))) |
661 | 2824 (beginning-of-line) |
3737
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2825 (while (and (> arg 0) (not (eobp))) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2826 (setq arg (1- arg)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2827 (beginning-of-line) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2828 (while (and (not (eobp)) (dired-between-files)) (forward-line 1)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2829 (save-excursion |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2830 (forward-line 1) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2831 (move-marker pos (1+ (point)))) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2832 (save-excursion (funcall function)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2833 ;; Advance to the next line--actually, to the line that *was* next. |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2834 ;; (If FUNCTION inserted some new lines in between, skip them.) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2835 (goto-char pos)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2836 (while (and (< arg 0) (not (bobp))) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2837 (setq arg (1+ arg)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2838 (forward-line -1) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2839 (while (and (not (bobp)) (dired-between-files)) (forward-line -1)) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2840 (beginning-of-line) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2841 (save-excursion (funcall function))) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2842 (move-marker pos nil) |
8a0b09b3a24c
(dired-repeat-over-lines): Going fwd, skip new lines
Richard M. Stallman <rms@gnu.org>
parents:
3633
diff
changeset
|
2843 (dired-move-to-filename))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2844 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2845 (defun dired-between-files () |
53224
f0eb34e60705
tag of miles@gnu.org--gnu-2003/emacs--cvs-trunk--0--patch-137
Karoly Lorentey <lorentey@elte.hu>
parents:
52973
diff
changeset
|
2846 ;; This used to be a regexp match of the `total ...' line output by |
f0eb34e60705
tag of miles@gnu.org--gnu-2003/emacs--cvs-trunk--0--patch-137
Karoly Lorentey <lorentey@elte.hu>
parents:
52973
diff
changeset
|
2847 ;; ls, which is slightly faster, but that is not very robust; notably, |
f0eb34e60705
tag of miles@gnu.org--gnu-2003/emacs--cvs-trunk--0--patch-137
Karoly Lorentey <lorentey@elte.hu>
parents:
52973
diff
changeset
|
2848 ;; it fails for non-english locales. |
f0eb34e60705
tag of miles@gnu.org--gnu-2003/emacs--cvs-trunk--0--patch-137
Karoly Lorentey <lorentey@elte.hu>
parents:
52973
diff
changeset
|
2849 (save-excursion (not (dired-move-to-filename)))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2850 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2851 (defun dired-next-marked-file (arg &optional wrap opoint) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2852 "Move to the next marked file, wrapping around the end of the buffer." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2853 (interactive "p\np") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2854 (or opoint (setq opoint (point)));; return to where interactively started |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2855 (if (if (> arg 0) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2856 (re-search-forward dired-re-mark nil t arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2857 (beginning-of-line) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2858 (re-search-backward dired-re-mark nil t (- arg))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2859 (dired-move-to-filename) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2860 (if (null wrap) |
661 | 2861 (progn |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2862 (goto-char opoint) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2863 (error "No next marked file")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2864 (message "(Wraparound for next marked file)") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2865 (goto-char (if (> arg 0) (point-min) (point-max))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2866 (dired-next-marked-file arg nil opoint)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2867 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2868 (defun dired-prev-marked-file (arg &optional wrap) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2869 "Move to the previous marked file, wrapping around the end of the buffer." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2870 (interactive "p\np") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2871 (dired-next-marked-file (- arg) wrap)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2872 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2873 (defun dired-file-marker (file) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2874 ;; Return FILE's marker, or nil if unmarked. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2875 (save-excursion |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2876 (and (dired-goto-file file) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2877 (progn |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2878 (beginning-of-line) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2879 (if (not (equal ?\040 (following-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2880 (following-char)))))) |
661 | 2881 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2882 (defun dired-mark-files-in-region (start end) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2883 (let ((inhibit-read-only t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2884 (if (> start end) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2885 (error "start > end")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2886 (goto-char start) ; assumed at beginning of line |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2887 (while (< (point) end) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2888 ;; Skip subdir line and following garbage like the `total' line: |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2889 (while (and (< (point) end) (dired-between-files)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2890 (forward-line 1)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2891 (if (and (not (looking-at dired-re-dot)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2892 (dired-get-filename nil t)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2893 (progn |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2894 (delete-char 1) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2895 (insert dired-marker-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2896 (forward-line 1)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2897 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2898 (defun dired-mark (arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2899 "Mark the current (or next ARG) files. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2900 If on a subdir headerline, mark all its files except `.' and `..'. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2901 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2902 Use \\[dired-unmark-all-files] to remove all marks |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2903 and \\[dired-unmark] on a subdir to remove the marks in |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2904 this subdir." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2905 (interactive "P") |
10710
d5d1393a26af
(dired-mark): If on dir header line, always mark
Richard M. Stallman <rms@gnu.org>
parents:
10658
diff
changeset
|
2906 (if (dired-get-subdir) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2907 (save-excursion (dired-mark-subdir-files)) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2908 (let ((inhibit-read-only t)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2909 (dired-repeat-over-lines |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
2910 (prefix-numeric-value arg) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2911 (function (lambda () (delete-char 1) (insert dired-marker-char))))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2912 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2913 (defun dired-unmark (arg) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2914 "Unmark the current (or next ARG) files. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2915 If looking at a subdir, unmark all its files except `.' and `..'." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2916 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2917 (let ((dired-marker-char ?\040)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2918 (dired-mark arg))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2919 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2920 (defun dired-flag-file-deletion (arg) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
2921 "In Dired, flag the current line's file for deletion. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2922 With prefix arg, repeat over several lines. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2923 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2924 If on a subdir headerline, mark all its files except `.' and `..'." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2925 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2926 (let ((dired-marker-char dired-del-marker)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2927 (dired-mark arg))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2928 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2929 (defun dired-unmark-backward (arg) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
2930 "In Dired, move up lines and remove deletion flag there. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2931 Optional prefix ARG says how many lines to unflag; default is one line." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2932 (interactive "p") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2933 (dired-unmark (- arg))) |
20991
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2934 |
44212
e87d819f2887
(dired-toggle-marks): Renamed from dired-do-toggle. Bindings changed.
Richard M. Stallman <rms@gnu.org>
parents:
44061
diff
changeset
|
2935 (defun dired-toggle-marks () |
e87d819f2887
(dired-toggle-marks): Renamed from dired-do-toggle. Bindings changed.
Richard M. Stallman <rms@gnu.org>
parents:
44061
diff
changeset
|
2936 "Toggle marks: marked files become unmarked, and vice versa. |
20991
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2937 Files marked with other flags (such as `D') are not affected. |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2938 `.' and `..' are never toggled. |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2939 As always, hidden subdirs are not affected." |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2940 (interactive) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2941 (save-excursion |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2942 (goto-char (point-min)) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
2943 (let ((inhibit-read-only t)) |
20991
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2944 (while (not (eobp)) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2945 (or (dired-between-files) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2946 (looking-at dired-re-dot) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2947 ;; use subst instead of insdel because it does not move |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2948 ;; the gap and thus should be faster and because |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2949 ;; other characters are left alone automatically |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2950 (apply 'subst-char-in-region |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2951 (point) (1+ (point)) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2952 (if (eq ?\040 (following-char)) ; SPC |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2953 (list ?\040 dired-marker-char) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2954 (list dired-marker-char ?\040)))) |
0cd10d49b777
(dired-do-toggle): Moved here from dired-x.el.
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2955 (forward-line 1))))) |
35607 | 2956 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2957 ;;; Commands to mark or flag files based on their characteristics or names. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2958 |
1755
83734c185e01
(dired-regexp-history): New history list.
Richard M. Stallman <rms@gnu.org>
parents:
1672
diff
changeset
|
2959 (defvar dired-regexp-history nil |
83734c185e01
(dired-regexp-history): New history list.
Richard M. Stallman <rms@gnu.org>
parents:
1672
diff
changeset
|
2960 "History list of regular expressions used in Dired commands.") |
83734c185e01
(dired-regexp-history): New history list.
Richard M. Stallman <rms@gnu.org>
parents:
1672
diff
changeset
|
2961 |
83734c185e01
(dired-regexp-history): New history list.
Richard M. Stallman <rms@gnu.org>
parents:
1672
diff
changeset
|
2962 (defun dired-read-regexp (prompt) |
83734c185e01
(dired-regexp-history): New history list.
Richard M. Stallman <rms@gnu.org>
parents:
1672
diff
changeset
|
2963 (read-from-minibuffer prompt nil nil nil 'dired-regexp-history)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2964 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2965 (defun dired-mark-files-regexp (regexp &optional marker-char) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2966 "Mark all files matching REGEXP for use in later commands. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2967 A prefix argument means to unmark them instead. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2968 `.' and `..' are never marked. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2969 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2970 REGEXP is an Emacs regexp, not a shell wildcard. Thus, use `\\.o$' for |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2971 object files--just `.o' will mark more than you might think." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2972 (interactive |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2973 (list (dired-read-regexp (concat (if current-prefix-arg "Unmark" "Mark") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2974 " files (regexp): ")) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2975 (if current-prefix-arg ?\040))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2976 (let ((dired-marker-char (or marker-char dired-marker-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2977 (dired-mark-if |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2978 (and (not (looking-at dired-re-dot)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2979 (not (eolp)) ; empty line |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2980 (let ((fn (dired-get-filename nil t))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2981 (and fn (string-match regexp (file-name-nondirectory fn))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2982 "matching file"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
2983 |
22206
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2984 (defun dired-mark-files-containing-regexp (regexp &optional marker-char) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2985 "Mark all files with contents containing REGEXP for use in later commands. |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2986 A prefix argument means to unmark them instead. |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2987 `.' and `..' are never marked." |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2988 (interactive |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2989 (list (dired-read-regexp (concat (if current-prefix-arg "Unmark" "Mark") |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2990 " files containing (regexp): ")) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2991 (if current-prefix-arg ?\040))) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2992 (let ((dired-marker-char (or marker-char dired-marker-char))) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2993 (dired-mark-if |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2994 (and (not (looking-at dired-re-dot)) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2995 (not (eolp)) ; empty line |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
2996 (let ((fn (dired-get-filename nil t))) |
23230
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
2997 (when (and fn (file-readable-p fn) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
2998 (not (file-directory-p fn))) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
2999 (let ((prebuf (get-file-buffer fn))) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3000 (message "Checking %s" fn) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3001 ;; For now we do it inside emacs |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3002 ;; Grep might be better if there are a lot of files |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3003 (if prebuf |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3004 (with-current-buffer prebuf |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3005 (save-excursion |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3006 (goto-char (point-min)) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3007 (re-search-forward regexp nil t))) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3008 (with-temp-buffer |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3009 (insert-file-contents fn) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3010 (goto-char (point-min)) |
6e0d3186be0d
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
23225
diff
changeset
|
3011 (re-search-forward regexp nil t)))) |
23188
c8b236bbecad
(dired-mark-files-containing-regexp):
Karl Heuer <kwzh@gnu.org>
parents:
22856
diff
changeset
|
3012 ))) |
22206
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
3013 "matching file"))) |
ebcc36b6b95e
(dired-mark-files-containing-regexp): New command.
Richard M. Stallman <rms@gnu.org>
parents:
21956
diff
changeset
|
3014 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3015 (defun dired-flag-files-regexp (regexp) |
40950
4bc87462585c
Many trivial doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
40818
diff
changeset
|
3016 "In Dired, flag all files containing the specified REGEXP for deletion. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3017 The match is against the non-directory part of the filename. Use `^' |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3018 and `$' to anchor matches. Exclude subdirs by hiding them. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3019 `.' and `..' are never flagged." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3020 (interactive (list (dired-read-regexp "Flag for deletion (regexp): "))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3021 (dired-mark-files-regexp regexp dired-del-marker)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3022 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3023 (defun dired-mark-symlinks (unflag-p) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3024 "Mark all symbolic links. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3025 With prefix argument, unflag all those files." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3026 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3027 (let ((dired-marker-char (if unflag-p ?\040 dired-marker-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3028 (dired-mark-if (looking-at dired-re-sym) "symbolic link"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3029 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3030 (defun dired-mark-directories (unflag-p) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3031 "Mark all directory file lines except `.' and `..'. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3032 With prefix argument, unflag all those files." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3033 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3034 (let ((dired-marker-char (if unflag-p ?\040 dired-marker-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3035 (dired-mark-if (and (looking-at dired-re-dir) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3036 (not (looking-at dired-re-dot))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3037 "directory file"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3038 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3039 (defun dired-mark-executables (unflag-p) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3040 "Mark all executable files. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3041 With prefix argument, unflag all those files." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3042 (interactive "P") |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3043 (let ((dired-marker-char (if unflag-p ?\040 dired-marker-char))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3044 (dired-mark-if (looking-at dired-re-exe) "executable file"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3045 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3046 ;; dired-x.el has a dired-mark-sexp interactive command: mark |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3047 ;; files for which PREDICATE returns non-nil. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3048 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3049 (defun dired-flag-auto-save-files (&optional unflag-p) |
661 | 3050 "Flag for deletion files whose names suggest they are auto save files. |
3051 A prefix argument says to unflag those files instead." | |
3052 (interactive "P") | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3053 (let ((dired-marker-char (if unflag-p ?\040 dired-del-marker))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3054 (dired-mark-if |
3633 | 3055 ;; It is less than general to check for # here, |
3043
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3056 ;; but it's the only way this runs fast enough. |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3057 (and (save-excursion (end-of-line) |
3580
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3058 (or |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3059 (eq (preceding-char) ?#) |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3060 ;; Handle executables in case of -F option. |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3061 ;; We need not worry about the other kinds |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3062 ;; of markings that -F makes, since they won't |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3063 ;; appear on real auto-save files. |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3064 (if (eq (preceding-char) ?*) |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3065 (progn |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3066 (forward-char -1) |
8223f1bf078f
(dired-flag-auto-save-files): Ignore `*' added by ls -F.
Richard M. Stallman <rms@gnu.org>
parents:
3524
diff
changeset
|
3067 (eq (preceding-char) ?#))))) |
3043
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3068 (not (looking-at dired-re-dir)) |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3069 (let ((fn (dired-get-filename t t))) |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3070 (if fn (auto-save-file-name-p |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3071 (file-name-nondirectory fn))))) |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3072 "auto save file"))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3073 |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
3074 (defcustom dired-garbage-files-regexp |
54548 | 3075 ;; `log' here is dubious, since it's typically used for useful log |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
3076 ;; files, not just TeX stuff. -- fx |
49138
f955735e16d8
(dired-garbage-files-regexp): Use \\' instead of $ and
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
49094
diff
changeset
|
3077 (concat (regexp-opt |
f955735e16d8
(dired-garbage-files-regexp): Use \\' instead of $ and
Kai Großjohann <kgrossjo@eu.uu.net>
parents:
49094
diff
changeset
|
3078 '(".log" ".toc" ".dvi" ".bak" ".orig" ".rej" ".aux")) |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
3079 "\\'") |
54533
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
3080 "Regular expression to match \"garbage\" files for `dired-flag-garbage-files'." |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
3081 :type 'regexp |
924fccad3acb
(dired) <defgroup>: Add link to manual.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54512
diff
changeset
|
3082 :group 'dired) |
16825
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
3083 |
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
3084 (defun dired-flag-garbage-files () |
19780
91cd68461722
(dired-flag-garbage-files): Move interactive flag across doc string.
Richard M. Stallman <rms@gnu.org>
parents:
19736
diff
changeset
|
3085 "Flag for deletion all files that match `dired-garbage-files-regexp'." |
16825
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
3086 (interactive) |
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
3087 (dired-flag-files-regexp dired-garbage-files-regexp)) |
9ec806f8bbb7
(dired-garbage-files-regexp): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
16824
diff
changeset
|
3088 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3089 (defun dired-flag-backup-files (&optional unflag-p) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3090 "Flag all backup files (names ending with `~') for deletion. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3091 With prefix argument, unflag these files." |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3092 (interactive "P") |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3093 (let ((dired-marker-char (if unflag-p ?\s dired-del-marker))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3094 (dired-mark-if |
13726
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3095 ;; Don't call backup-file-name-p unless the last character looks like |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3096 ;; it might be the end of a backup file name. This isn't very general, |
3043
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3097 ;; but it's the only way this runs fast enough. |
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3098 (and (save-excursion (end-of-line) |
13726
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3099 ;; Handle executables in case of -F option. |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3100 ;; We need not worry about the other kinds |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3101 ;; of markings that -F makes, since they won't |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3102 ;; appear on real backup files. |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3103 (if (eq (preceding-char) ?*) |
0611604f3cd3
(dired-flag-backup-files): Under MS-DOS, search for
Karl Heuer <kwzh@gnu.org>
parents:
13033
diff
changeset
|
3104 (forward-char -1)) |
13750
6a9cecd5bcfb
(dired-flag-backup-files): Undo previous change.
Karl Heuer <kwzh@gnu.org>
parents:
13726
diff
changeset
|
3105 (eq (preceding-char) ?~)) |
3043
29fe3ea604a2
(dired-flag-backup-files): Speedup:
Richard M. Stallman <rms@gnu.org>
parents:
2584
diff
changeset
|
3106 (not (looking-at dired-re-dir)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3107 (let ((fn (dired-get-filename t t))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3108 (if fn (backup-file-name-p fn)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3109 "backup file"))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3110 |
910
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3111 (defun dired-change-marks (&optional old new) |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3112 "Change all OLD marks to NEW marks. |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3113 OLD and NEW are both characters used to mark files." |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3114 (interactive |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3115 (let* ((cursor-in-echo-area t) |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3116 (old (progn (message "Change (old mark): ") (read-char))) |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3117 (new (progn (message "Change %c marks to (new mark): " old) |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3118 (read-char)))) |
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3119 (list old new))) |
3478
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3120 (if (or (eq old ?\r) (eq new ?\r)) |
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3121 (ding) |
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3122 (let ((string (format "\n%c" old)) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
3123 (inhibit-read-only t)) |
3478
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3124 (save-excursion |
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3125 (goto-char (point-min)) |
a917a964bef8
(dired-change-marks): Just ding if one arg is RET.
Richard M. Stallman <rms@gnu.org>
parents:
3148
diff
changeset
|
3126 (while (search-forward string nil t) |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3127 (if (if (= old ?\s) |
12211
472729271c30
(dired-change-marks): If OLD is a space, don't act on non-file lines.
Richard M. Stallman <rms@gnu.org>
parents:
12045
diff
changeset
|
3128 (save-match-data |
472729271c30
(dired-change-marks): If OLD is a space, don't act on non-file lines.
Richard M. Stallman <rms@gnu.org>
parents:
12045
diff
changeset
|
3129 (dired-get-filename 'no-dir t)) |
472729271c30
(dired-change-marks): If OLD is a space, don't act on non-file lines.
Richard M. Stallman <rms@gnu.org>
parents:
12045
diff
changeset
|
3130 t) |
472729271c30
(dired-change-marks): If OLD is a space, don't act on non-file lines.
Richard M. Stallman <rms@gnu.org>
parents:
12045
diff
changeset
|
3131 (subst-char-in-region (match-beginning 0) |
472729271c30
(dired-change-marks): If OLD is a space, don't act on non-file lines.
Richard M. Stallman <rms@gnu.org>
parents:
12045
diff
changeset
|
3132 (match-end 0) old new))))))) |
910
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3133 |
18160
c64b7a17eea9
(dired-unmark-all-marks):
Richard M. Stallman <rms@gnu.org>
parents:
17988
diff
changeset
|
3134 (defun dired-unmark-all-marks () |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3135 "Remove all marks from all files in the dired buffer." |
4169
45b07ea88511
(dired-unmark-all-files-no-query): New command.
Richard M. Stallman <rms@gnu.org>
parents:
4099
diff
changeset
|
3136 (interactive) |
45b07ea88511
(dired-unmark-all-files-no-query): New command.
Richard M. Stallman <rms@gnu.org>
parents:
4099
diff
changeset
|
3137 (dired-unmark-all-files ?\r)) |
45b07ea88511
(dired-unmark-all-files-no-query): New command.
Richard M. Stallman <rms@gnu.org>
parents:
4099
diff
changeset
|
3138 |
3102
603e39319c86
(dired-unmark-all-files): Read arg as a string.
Richard M. Stallman <rms@gnu.org>
parents:
3043
diff
changeset
|
3139 (defun dired-unmark-all-files (mark &optional arg) |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3140 "Remove a specific mark (or any mark) from every file. |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
3141 After this command, type the mark character to remove, |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3142 or type RET to remove all marks. |
2458
b1834ed2c366
(dired-unmark-all-files): Read the arg as just a char.
Richard M. Stallman <rms@gnu.org>
parents:
2307
diff
changeset
|
3143 With prefix arg, query for each marked file. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3144 Type \\[help-command] at that time for help." |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3145 (interactive "cRemove marks (RET means all): \nP") |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3146 (save-excursion |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3147 (let* ((count 0) |
94889
e80a3956601b
(dired-read-dir-and-switches): Ignore ., .., and
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
94678
diff
changeset
|
3148 (inhibit-read-only t) case-fold-search query |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3149 (string (format "\n%c" mark)) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3150 (help-form "\ |
3102
603e39319c86
(dired-unmark-all-files): Read arg as a string.
Richard M. Stallman <rms@gnu.org>
parents:
3043
diff
changeset
|
3151 Type SPC or `y' to unmark one file, DEL or `n' to skip to next, |
603e39319c86
(dired-unmark-all-files): Read arg as a string.
Richard M. Stallman <rms@gnu.org>
parents:
3043
diff
changeset
|
3152 `!' to unmark all remaining files with no more questions.")) |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3153 (goto-char (point-min)) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3154 (while (if (eq mark ?\r) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3155 (re-search-forward dired-re-mark nil t) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3156 (search-forward string nil t)) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3157 (if (or (not arg) |
51444
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
3158 (let ((file (dired-get-filename t t))) |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
3159 (and file |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
3160 (dired-query 'query "Unmark file `%s'? " |
b53bffc0cbaf
(dired-get-filename): Err for . and .. in usual case.
Richard M. Stallman <rms@gnu.org>
parents:
50831
diff
changeset
|
3161 file)))) |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3162 (progn (subst-char-in-region (1- (point)) (point) |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3163 (preceding-char) ?\s) |
3524
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3164 (setq count (1+ count))))) |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3165 (message (if (= count 1) "1 mark removed" |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3166 "%d marks removed") |
bedf7049667a
(dired-unmark-all-files): Read arg as just a character.
Richard M. Stallman <rms@gnu.org>
parents:
3503
diff
changeset
|
3167 count)))) |
35607 | 3168 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3169 ;; Logging failures operating on files, and showing the results. |
661 | 3170 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3171 (defvar dired-log-buffer "*Dired log*") |
661 | 3172 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3173 (defun dired-why () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3174 "Pop up a buffer with error log output from Dired. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3175 A group of errors from a single command ends with a formfeed. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3176 Thus, use \\[backward-page] to find the beginning of a group of errors." |
661 | 3177 (interactive) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3178 (if (get-buffer dired-log-buffer) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3179 (let ((owindow (selected-window)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3180 (window (display-buffer (get-buffer dired-log-buffer)))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3181 (unwind-protect |
910
4fba6d4b6a28
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
890
diff
changeset
|
3182 (progn |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3183 (select-window window) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3184 (goto-char (point-max)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3185 (forward-line -1) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3186 (backward-page 1) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3187 (recenter 0)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3188 (select-window owindow))))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3189 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3190 (defun dired-log (log &rest args) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3191 ;; Log a message or the contents of a buffer. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3192 ;; If LOG is a string and there are more args, it is formatted with |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3193 ;; those ARGS. Usually the LOG string ends with a \n. |
49549
99be3a1e2589
Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents:
49243
diff
changeset
|
3194 ;; End each bunch of errors with (dired-log t): |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3195 ;; this inserts the current time and buffer at the start of the page, |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3196 ;; and \f (formfeed) at the end. |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3197 (let ((obuf (current-buffer))) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3198 (with-current-buffer (get-buffer-create dired-log-buffer) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3199 (goto-char (point-max)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3200 (let ((inhibit-read-only t)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3201 (cond ((stringp log) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3202 (insert (if args |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3203 (apply (function format) log args) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3204 log))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3205 ((bufferp log) |
64430
52b011251c32
(dired-log): Use `insert-buffer-substring', not `insert-buffer'.
Juanma Barranquero <lekktu@gmail.com>
parents:
64193
diff
changeset
|
3206 (insert-buffer-substring log)) |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3207 ((eq t log) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3208 (backward-page 1) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3209 (unless (bolp) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3210 (insert "\n")) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3211 (insert (current-time-string) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3212 "\tBuffer `" (buffer-name obuf) "'\n") |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3213 (goto-char (point-max)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3214 (insert "\f\n"))))))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3215 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3216 (defun dired-log-summary (string failures) |
72716
28b70fec3284
(dired-log-summary): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
72021
diff
changeset
|
3217 "State a summary of a command's failures, in echo area and log buffer. |
28b70fec3284
(dired-log-summary): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
72021
diff
changeset
|
3218 STRING is an overall summary of the failures. |
28b70fec3284
(dired-log-summary): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
72021
diff
changeset
|
3219 FAILURES is a list of file names that we failed to operate on, |
28b70fec3284
(dired-log-summary): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
72021
diff
changeset
|
3220 or nil if file names are not applicable." |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3221 (if (= (length failures) 1) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3222 (message "%s" |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3223 (with-current-buffer dired-log-buffer |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3224 (goto-char (point-max)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3225 (backward-page 1) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3226 (if (eolp) (forward-line 1)) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3227 (buffer-substring (point) (point-max)))) |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3228 (message (if failures "%s--type ? for details (%s)" |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3229 "%s--type ? for details") |
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3230 string failures)) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3231 ;; Log a summary describing a bunch of errors. |
47488
6ca0edea0a56
(dired-use-ls-dired): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47181
diff
changeset
|
3232 (dired-log (concat "\n" string "\n")) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3233 (dired-log t)) |
35607 | 3234 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3235 ;;; Sorting |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3236 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3237 ;; Most ls can only sort by name or by date (with -t), nothing else. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3238 ;; GNU ls sorts on size with -S, on extension with -X, and unsorted with -U. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3239 ;; So anything that does not contain these is sort "by name". |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3240 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3241 (defvar dired-ls-sorting-switches "SXU" |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
3242 "String of `ls' switches \(single letters\) except \"t\" that influence sorting. |
52973
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3243 |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3244 This indicates to Dired which option switches to watch out for because they |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3245 will change the sorting order behavior of `ls'. |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3246 |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3247 To change the default sorting order \(e.g. add a `-v' option\), see the |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3248 variable `dired-listing-switches'. To temporarily override the listing |
e9b83c6e5ab4
(dired-ls-sorting-switches): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
52706
diff
changeset
|
3249 format, use `\\[universal-argument] \\[dired]'.") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3250 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3251 (defvar dired-sort-by-date-regexp |
110205
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3252 (concat "\\(\\`\\| \\)-[^- ]*t" |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3253 ;; `dired-ls-sorting-switches' after -t overrides -t. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3254 "[^ " dired-ls-sorting-switches "]*" |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3255 "\\(\\(\\`\\| +\\)\\(--[^ ]+\\|-[^- t" |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3256 dired-ls-sorting-switches "]+\\)\\)* *$") |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3257 "Regexp recognized by Dired to set `by date' mode.") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3258 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3259 (defvar dired-sort-by-name-regexp |
110205
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3260 (concat "\\`\\(\\(\\`\\| +\\)\\(--[^ ]+\\|" |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3261 "-[^- t" dired-ls-sorting-switches "]+\\)\\)* *$") |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3262 "Regexp recognized by Dired to set `by name' mode.") |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3263 |
48491
5d690a3537aa
(dired-sort-inhibit): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47901
diff
changeset
|
3264 (defvar dired-sort-inhibit nil |
5d690a3537aa
(dired-sort-inhibit): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47901
diff
changeset
|
3265 "Non-nil means the Dired sort command is disabled. |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3266 The idea is to set this buffer-locally in special dired buffers.") |
48491
5d690a3537aa
(dired-sort-inhibit): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47901
diff
changeset
|
3267 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3268 (defun dired-sort-set-modeline () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3269 ;; Set modeline display according to dired-actual-switches. |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3270 ;; Modeline display of "by name" or "by date" guarantees the user a |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3271 ;; match with the corresponding regexps. Non-matching switches are |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3272 ;; shown literally. |
74969
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3273 (when (eq major-mode 'dired-mode) |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3274 (setq mode-name |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3275 (let (case-fold-search) |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
3276 (cond ((string-match |
74969
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3277 dired-sort-by-name-regexp dired-actual-switches) |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3278 "Dired by name") |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3279 ((string-match |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3280 dired-sort-by-date-regexp dired-actual-switches) |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3281 "Dired by date") |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3282 (t |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3283 (concat "Dired " dired-actual-switches))))) |
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3284 (force-mode-line-update))) |
661 | 3285 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3286 (defun dired-sort-toggle-or-edit (&optional arg) |
110205
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3287 "Toggle sorting by date, and refresh the Dired buffer. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3288 With a prefix argument, edit the current listing switches instead." |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3289 (interactive "P") |
48491
5d690a3537aa
(dired-sort-inhibit): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
47901
diff
changeset
|
3290 (when dired-sort-inhibit |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3291 (error "Cannot sort this dired buffer")) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3292 (if arg |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3293 (dired-sort-other |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3294 (read-string "ls switches (must contain -l): " dired-actual-switches)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3295 (dired-sort-toggle))) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3296 |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3297 (defun dired-sort-toggle () |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3298 ;; Toggle between sort by date/name. Reverts the buffer. |
110205
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3299 (let ((sorting-by-date (string-match dired-sort-by-date-regexp |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3300 dired-actual-switches)) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3301 ;; Regexp for finding (possibly embedded) -t switches. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3302 (switch-regexp "\\(\\`\\| \\)-\\([a-su-zA-Z]*\\)\\(t\\)\\([^ ]*\\)") |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3303 case-fold-search) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3304 ;; Remove the -t switch. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3305 (while (string-match switch-regexp dired-actual-switches) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3306 (if (and (equal (match-string 2 dired-actual-switches) "") |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3307 (equal (match-string 4 dired-actual-switches) "")) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3308 ;; Remove a stand-alone -t switch. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3309 (setq dired-actual-switches |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3310 (replace-match "" t t dired-actual-switches)) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3311 ;; Remove a switch of the form -XtY for some X and Y. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3312 (setq dired-actual-switches |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3313 (replace-match "" t t dired-actual-switches 3)))) |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3314 ;; Now, if we weren't sorting by date before, add the -t switch. |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3315 (unless sorting-by-date |
f5e7d094d9d8
Improve ls date switch parsing in Dired (Bug#6987).
Chong Yidong <cyd@stupidchicken.com>
parents:
110015
diff
changeset
|
3316 (setq dired-actual-switches (concat dired-actual-switches " -t")))) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3317 (dired-sort-set-modeline) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3318 (revert-buffer)) |
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3319 |
35607 | 3320 ;; Some user code loads dired especially for this. |
42690 | 3321 ;; Don't do that--use replace-regexp-in-string instead. |
35607 | 3322 (defun dired-replace-in-string (regexp newtext string) |
3323 ;; Replace REGEXP with NEWTEXT everywhere in STRING and return result. | |
3324 ;; NEWTEXT is taken literally---no \\DIGIT escapes will be recognized. | |
3325 (let ((result "") (start 0) mb me) | |
3326 (while (string-match regexp string start) | |
3327 (setq mb (match-beginning 0) | |
3328 me (match-end 0) | |
3329 result (concat result (substring string start mb) newtext) | |
3330 start me)) | |
3331 (concat result (substring string start)))) | |
3332 | |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3333 (defun dired-sort-other (switches &optional no-revert) |
64531
733da358f853
(dired-align-file, dired-flag-backup-files, dired-change-marks,
Juanma Barranquero <lekktu@gmail.com>
parents:
64442
diff
changeset
|
3334 "Specify new `ls' SWITCHES for current dired buffer. |
54577
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
3335 Values matching `dired-sort-by-date-regexp' or `dired-sort-by-name-regexp' |
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
3336 set the minor mode accordingly, others appear literally in the mode line. |
664f8942b3c8
(dired-mode): Use run-mode-hooks.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
54548
diff
changeset
|
3337 With optional second arg NO-REVERT, don't refresh the listing afterwards." |
30414
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3338 (dired-sort-R-check switches) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3339 (setq dired-actual-switches switches) |
74969
3b49658358de
(dired-sort-other): Move test for dired-mode...
Nick Roberts <nickrob@snap.net.nz>
parents:
74385
diff
changeset
|
3340 (dired-sort-set-modeline) |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
3341 (or no-revert (revert-buffer))) |
30414
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3342 |
68267
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
3343 (defvar dired-subdir-alist-pre-R nil |
45d760802689
(dired-move-to-filename-regexp): Define as alias.
Richard M. Stallman <rms@gnu.org>
parents:
66325
diff
changeset
|
3344 "Value of `dired-subdir-alist' before -R switch added.") |
68273
9bccb5180c1b
(dired-no-confirm): Add quote.
Luc Teirlinck <teirllm@auburn.edu>
parents:
68267
diff
changeset
|
3345 (make-variable-buffer-local 'dired-subdir-alist-pre-R) |
30414
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3346 |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3347 (defun dired-sort-R-check (switches) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3348 "Additional processing of -R in ls option string SWITCHES. |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3349 Saves `dired-subdir-alist' when R is set and restores saved value |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3350 minus any directories explicitly deleted when R is cleared. |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3351 To be called first in body of `dired-sort-other', etc." |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3352 (cond |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3353 ((and (string-match "R" switches) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3354 (not (string-match "R" dired-actual-switches))) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3355 ;; Adding -R to ls switches -- save `dired-subdir-alist': |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3356 (setq dired-subdir-alist-pre-R dired-subdir-alist)) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3357 ((and (string-match "R" dired-actual-switches) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3358 (not (string-match "R" switches))) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3359 ;; Deleting -R from ls switches -- revert to pre-R subdirs |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3360 ;; that are still present: |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3361 (setq dired-subdir-alist |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3362 (if dired-subdir-alist-pre-R |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3363 (let (subdirs) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3364 (while dired-subdir-alist-pre-R |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3365 (if (assoc (caar dired-subdir-alist-pre-R) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3366 dired-subdir-alist) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3367 ;; subdir still present... |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3368 (setq subdirs |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3369 (cons (car dired-subdir-alist-pre-R) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3370 subdirs))) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3371 (setq dired-subdir-alist-pre-R |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3372 (cdr dired-subdir-alist-pre-R))) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3373 (reverse subdirs)) |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3374 ;; No pre-R subdir alist, so revert to main directory |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3375 ;; listing: |
a8e324dcc228
(dired-sort-R-check): Added to allow recursive listing
Gerd Moellmann <gerd@gnu.org>
parents:
30130
diff
changeset
|
3376 (list (car (reverse dired-subdir-alist)))))))) |
35607 | 3377 |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3378 |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3379 ;;;; Drag and drop support |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3380 |
77984
b4683039515d
(dired-recursive-deletes, dired-recursive-copies): Change default to
Chong Yidong <cyd@stupidchicken.com>
parents:
77982
diff
changeset
|
3381 (defcustom dired-recursive-copies 'top |
100171 | 3382 "Decide whether recursive copies are allowed. |
77709
fe66dc682a15
(dired-recursive-deletes, dired-recursive-copies): Doc fixes.
Juanma Barranquero <lekktu@gmail.com>
parents:
77402
diff
changeset
|
3383 A value of nil means no recursive copies. |
58426
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3384 `always' means copy recursively without asking. |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3385 `top' means ask for each directory at top level. |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3386 Anything else means ask for each directory." |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3387 :type '(choice :tag "Copy directories" |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3388 (const :tag "No recursive copies" nil) |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3389 (const :tag "Ask for each directory" t) |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3390 (const :tag "Ask for each top directory only" top) |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3391 (const :tag "Copy directories without asking" always)) |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3392 :group 'dired) |
eb84b4af8ff5
(dired-recursive-copies): Moved from dired-aux.el.
Richard M. Stallman <rms@gnu.org>
parents:
58412
diff
changeset
|
3393 |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3394 (defun dired-dnd-popup-notice () |
62658
4c2b5f50f981
(dired-dnd-popup-notice): Use message-box.
Nick Roberts <nickrob@snap.net.nz>
parents:
62616
diff
changeset
|
3395 (message-box |
80462
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3396 "Dired recursive copies are currently disabled.\nSee the variable `dired-recursive-copies'.")) |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3397 |
105933
8f110099da5c
Update x-popup-menu declaration.
Glenn Morris <rgm@gnu.org>
parents:
105904
diff
changeset
|
3398 (declare-function x-popup-menu "menu.c" (position menu)) |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3399 |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3400 (defun dired-dnd-do-ask-action (uri) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3401 ;; No need to get actions and descriptions from the source, |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3402 ;; we only have three actions anyway. |
55937
0edea1c45ca9
(dired-subdir-switches, dired-switches-alist): New vars.
Luc Teirlinck <teirllm@auburn.edu>
parents:
55862
diff
changeset
|
3403 (let ((action (x-popup-menu |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3404 t |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3405 (list "What action?" |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3406 (cons "" |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3407 '(("Copy here" . copy) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3408 ("Move here" . move) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3409 ("Link here" . link) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3410 "--" |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3411 ("Cancel" . nil))))))) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3412 (if action |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3413 (dired-dnd-handle-local-file uri action) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3414 nil))) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3415 |
86218
2d68ac2d165c
(dired-relist-entry): Declare as function.
Glenn Morris <rgm@gnu.org>
parents:
85406
diff
changeset
|
3416 (declare-function dired-relist-entry "dired-aux" (file)) |
86318
996f5a68400d
(make-symbolic-link): Declare as function.
Juanma Barranquero <lekktu@gmail.com>
parents:
86218
diff
changeset
|
3417 (declare-function make-symbolic-link "fileio.c") |
86218
2d68ac2d165c
(dired-relist-entry): Declare as function.
Glenn Morris <rgm@gnu.org>
parents:
85406
diff
changeset
|
3418 |
95841
b4e36ff621b3
Add some compiler declarations, for builds without X.
Glenn Morris <rgm@gnu.org>
parents:
95783
diff
changeset
|
3419 ;; Only used when (featurep 'dnd). |
b4e36ff621b3
Add some compiler declarations, for builds without X.
Glenn Morris <rgm@gnu.org>
parents:
95783
diff
changeset
|
3420 (declare-function dnd-get-local-file-name "dnd" (uri &optional must-exist)) |
b4e36ff621b3
Add some compiler declarations, for builds without X.
Glenn Morris <rgm@gnu.org>
parents:
95783
diff
changeset
|
3421 (declare-function dnd-get-local-file-uri "dnd" (uri)) |
b4e36ff621b3
Add some compiler declarations, for builds without X.
Glenn Morris <rgm@gnu.org>
parents:
95783
diff
changeset
|
3422 |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3423 (defun dired-dnd-handle-local-file (uri action) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3424 "Copy, move or link a file to the dired directory. |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3425 URI is the file to handle, ACTION is one of copy, move, link or ask. |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3426 Ask means pop up a menu for the user to select one of copy, move or link." |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3427 (require 'dired-aux) |
61478
ca956f06ae9e
* dired.el (dired-mode): Use dnd-* instead of x-dnd-*
Jan Djärv <jan.h.d@swipnet.se>
parents:
61296
diff
changeset
|
3428 (let* ((from (dnd-get-local-file-name uri t)) |
80462
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3429 (to (when from |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3430 (concat (dired-current-directory) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3431 (file-name-nondirectory from))))) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3432 (when from |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3433 (cond ((eq action 'ask) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3434 (dired-dnd-do-ask-action uri)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3435 ;; If copying a directory and dired-recursive-copies is |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3436 ;; nil, dired-copy-file fails. Pop up a notice. |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3437 ((and (memq action '(copy private)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3438 (file-directory-p from) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3439 (not dired-recursive-copies)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3440 (dired-dnd-popup-notice)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3441 ((memq action '(copy private move link)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3442 (let ((overwrite (and (file-exists-p to) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3443 (y-or-n-p |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3444 (format "Overwrite existing file `%s'? " to)))) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3445 ;; Binding dired-overwrite-confirmed to nil makes |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3446 ;; dired-handle-overwrite a no-op. We instead use |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3447 ;; y-or-n-p, which pops a graphical menu. |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3448 dired-overwrite-confirmed backup-file) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3449 (when (and overwrite |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3450 ;; d-b-o is defined in dired-aux. |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3451 (boundp 'dired-backup-overwrite) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3452 dired-backup-overwrite |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3453 (setq backup-file |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3454 (car (find-backup-file-name to))) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3455 (or (eq dired-backup-overwrite 'always) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3456 (y-or-n-p |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3457 (format |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3458 "Make backup for existing file `%s'? " to)))) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3459 (rename-file to backup-file 0) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3460 (dired-relist-entry backup-file)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3461 (cond ((memq action '(copy private)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3462 (dired-copy-file from to overwrite)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3463 ((eq action 'move) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3464 (dired-rename-file from to overwrite)) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3465 ((eq action 'link) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3466 (make-symbolic-link from to overwrite))) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3467 (dired-relist-entry to) |
837d54fb9fc9
(dired-dnd-handle-local-file): Obey dired-backup-overwrite for copy,
Chong Yidong <cyd@stupidchicken.com>
parents:
80336
diff
changeset
|
3468 action)))))) |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3469 |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3470 (defun dired-dnd-handle-file (uri action) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3471 "Copy, move or link a file to the dired directory if it is a local file. |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3472 URI is the file to handle. If the hostname in the URI isn't local, do nothing. |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3473 ACTION is one of copy, move, link or ask. |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3474 Ask means pop up a menu for the user to select one of copy, move or link." |
61478
ca956f06ae9e
* dired.el (dired-mode): Use dnd-* instead of x-dnd-*
Jan Djärv <jan.h.d@swipnet.se>
parents:
61296
diff
changeset
|
3475 (let ((local-file (dnd-get-local-file-uri uri))) |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3476 (if local-file (dired-dnd-handle-local-file local-file action) |
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3477 nil))) |
55058
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3478 |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3479 |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3480 ;;;; Desktop support |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3481 |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3482 (eval-when-compile (require 'desktop)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3483 |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3484 (defun dired-desktop-buffer-misc-data (desktop-dirname) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3485 "Auxiliary information to be saved in desktop file." |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3486 (cons |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3487 ;; Value of `dired-directory'. |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3488 (if (consp dired-directory) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3489 ;; Directory name followed by list of files. |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3490 (cons (desktop-file-name (car dired-directory) desktop-dirname) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3491 (cdr dired-directory)) |
64442
11d53eaa016c
(dired-desktop-buffer-misc-data, dired-restore-desktop-buffer):
Juri Linkov <juri@jurta.org>
parents:
64430
diff
changeset
|
3492 ;; Directory name, optionally with shell wildcard. |
55058
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3493 (desktop-file-name dired-directory desktop-dirname)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3494 ;; Subdirectories in `dired-subdir-alist'. |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3495 (cdr |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3496 (nreverse |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3497 (mapcar |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3498 (function (lambda (f) (desktop-file-name (car f) desktop-dirname))) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3499 dired-subdir-alist))))) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3500 |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3501 (defun dired-restore-desktop-buffer (desktop-buffer-file-name |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3502 desktop-buffer-name |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3503 desktop-buffer-misc) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3504 "Restore a dired buffer specified in a desktop file." |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3505 ;; First element of `desktop-buffer-misc' is the value of `dired-directory'. |
64442
11d53eaa016c
(dired-desktop-buffer-misc-data, dired-restore-desktop-buffer):
Juri Linkov <juri@jurta.org>
parents:
64430
diff
changeset
|
3506 ;; This value is a directory name, optionally with shell wildcard or |
55058
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3507 ;; a directory name followed by list of files. |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3508 (let* ((dired-dir (car desktop-buffer-misc)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3509 (dir (if (consp dired-dir) (car dired-dir) dired-dir))) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3510 (if (file-directory-p (file-name-directory dir)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3511 (progn |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3512 (dired dired-dir) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3513 ;; The following elements of `desktop-buffer-misc' are the keys |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3514 ;; from `dired-subdir-alist'. |
84860
a853167e2059
(dired-restore-desktop-buffer): Use `mapc' rather than `mapcar'.
Juanma Barranquero <lekktu@gmail.com>
parents:
82365
diff
changeset
|
3515 (mapc 'dired-maybe-insert-subdir (cdr desktop-buffer-misc)) |
55058
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3516 (current-buffer)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3517 (message "Desktop: Directory %s no longer exists." dir) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3518 (when desktop-missing-file-warning (sit-for 1)) |
053797c3d447
(dired-restore-desktop-buffer) Move from desktop.el. Add parameters.
Lars Hansen <larsh@soem.dk>
parents:
54780
diff
changeset
|
3519 nil))) |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3520 |
64961 | 3521 (add-to-list 'desktop-buffer-mode-handlers |
3522 '(dired-mode . dired-restore-desktop-buffer)) | |
64894
aee8ba4e5b1a
Add handler to desktop-buffer-mode-handlers.
Lars Hansen <larsh@soem.dk>
parents:
64762
diff
changeset
|
3523 |
53789
7efe8089eadf
* x-dnd.el: New file for drag and drop.
Jan Djärv <jan.h.d@swipnet.se>
parents:
53224
diff
changeset
|
3524 |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3525 ;;; Start of automatically extracted autoloads. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3526 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3527 ;;;### (autoloads (dired-show-file-type dired-do-query-replace-regexp |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3528 ;;;;;; dired-do-search dired-do-isearch-regexp dired-do-isearch |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3529 ;;;;;; dired-isearch-filenames-regexp dired-isearch-filenames dired-isearch-filenames-setup |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3530 ;;;;;; dired-hide-all dired-hide-subdir dired-tree-down dired-tree-up |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3531 ;;;;;; dired-kill-subdir dired-mark-subdir-files dired-goto-subdir |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3532 ;;;;;; dired-prev-subdir dired-insert-subdir dired-maybe-insert-subdir |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3533 ;;;;;; dired-downcase dired-upcase dired-do-symlink-regexp dired-do-hardlink-regexp |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3534 ;;;;;; dired-do-copy-regexp dired-do-rename-regexp dired-do-rename |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3535 ;;;;;; dired-do-hardlink dired-do-symlink dired-do-copy dired-create-directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3536 ;;;;;; dired-rename-file dired-copy-file dired-relist-file dired-remove-file |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3537 ;;;;;; dired-add-file dired-do-redisplay dired-do-load dired-do-byte-compile |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3538 ;;;;;; dired-do-compress dired-query dired-compress-file dired-do-kill-lines |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3539 ;;;;;; dired-run-shell-command dired-do-shell-command dired-do-async-shell-command |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3540 ;;;;;; dired-clean-directory dired-do-print dired-do-touch dired-do-chown |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3541 ;;;;;; dired-do-chgrp dired-do-chmod dired-compare-directories dired-backup-diff |
110015
280c8ae2476d
Add "Package:" file headers to denote built-in packages.
Chong Yidong <cyd@stupidchicken.com>
parents:
109553
diff
changeset
|
3542 ;;;;;; dired-diff) "dired-aux" "dired-aux.el" "416d272299fd4774c47c2f677ee640a4") |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3543 ;;; Generated autoloads from dired-aux.el |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3544 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3545 (autoload 'dired-diff "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3546 Compare file at point with file FILE using `diff'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3547 FILE defaults to the file at the mark. (That's the mark set by |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3548 \\[set-mark-command], not by Dired's \\[dired-mark] command.) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3549 The prompted-for file is the first file given to `diff'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3550 With prefix arg, prompt for second argument SWITCHES, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3551 which is options for `diff'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3552 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3553 \(fn FILE &optional SWITCHES)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3554 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3555 (autoload 'dired-backup-diff "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3556 Diff this file with its backup file or vice versa. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3557 Uses the latest backup, if there are several numerical backups. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3558 If this file is a backup, diff it with its original. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3559 The backup file is the first file given to `diff'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3560 With prefix arg, prompt for argument SWITCHES which is options for `diff'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3561 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3562 \(fn &optional SWITCHES)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3563 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3564 (autoload 'dired-compare-directories "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3565 Mark files with different file attributes in two dired buffers. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3566 Compare file attributes of files in the current directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3567 with file attributes in directory DIR2 using PREDICATE on pairs of files |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3568 with the same name. Mark files for which PREDICATE returns non-nil. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3569 Mark files with different names if PREDICATE is nil (or interactively |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3570 with empty input at the predicate prompt). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3571 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3572 PREDICATE is a Lisp expression that can refer to the following variables: |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3573 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3574 size1, size2 - file size in bytes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3575 mtime1, mtime2 - last modification time in seconds, as a float |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3576 fa1, fa2 - list of file attributes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3577 returned by function `file-attributes' |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3578 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3579 where 1 refers to attribute of file in the current dired buffer |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3580 and 2 to attribute of file in second dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3581 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3582 Examples of PREDICATE: |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3583 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3584 (> mtime1 mtime2) - mark newer files |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3585 (not (= size1 size2)) - mark files with different sizes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3586 (not (string= (nth 8 fa1) (nth 8 fa2))) - mark files with different modes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3587 (not (and (= (nth 2 fa1) (nth 2 fa2)) - mark files with different UID |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3588 (= (nth 3 fa1) (nth 3 fa2)))) and GID. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3589 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3590 \(fn DIR2 PREDICATE)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3591 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3592 (autoload 'dired-do-chmod "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3593 Change the mode of the marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3594 Symbolic modes like `g+w' are allowed. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3595 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3596 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3597 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3598 (autoload 'dired-do-chgrp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3599 Change the group of the marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3600 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3601 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3602 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3603 (autoload 'dired-do-chown "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3604 Change the owner of the marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3605 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3606 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3607 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3608 (autoload 'dired-do-touch "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3609 Change the timestamp of the marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3610 This calls touch. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3611 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3612 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3613 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3614 (autoload 'dired-do-print "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3615 Print the marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3616 Uses the shell command coming from variables `lpr-command' and |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3617 `lpr-switches' as default. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3618 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3619 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3620 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3621 (autoload 'dired-clean-directory "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3622 Flag numerical backups for deletion. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3623 Spares `dired-kept-versions' latest versions, and `kept-old-versions' oldest. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3624 Positive prefix arg KEEP overrides `dired-kept-versions'; |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3625 Negative prefix arg KEEP overrides `kept-old-versions' with KEEP made positive. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3626 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3627 To clear the flags on these files, you can use \\[dired-flag-backup-files] |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3628 with a prefix argument. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3629 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3630 \(fn KEEP)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3631 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3632 (autoload 'dired-do-async-shell-command "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3633 Run a shell command COMMAND on the marked files asynchronously. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3634 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3635 Like `dired-do-shell-command' but if COMMAND doesn't end in ampersand, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3636 adds `* &' surrounded by whitespace and executes the command asynchronously. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3637 The output appears in the buffer `*Async Shell Command*'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3638 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3639 \(fn COMMAND &optional ARG FILE-LIST)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3640 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3641 (autoload 'dired-do-shell-command "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3642 Run a shell command COMMAND on the marked files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3643 If no files are marked or a specific numeric prefix arg is given, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3644 the next ARG files are used. Just \\[universal-argument] means the current file. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3645 The prompt mentions the file(s) or the marker, as appropriate. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3646 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3647 If there is a `*' in COMMAND, surrounded by whitespace, this runs |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3648 COMMAND just once with the entire file list substituted there. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3649 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3650 If there is no `*', but there is a `?' in COMMAND, surrounded by |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3651 whitespace, this runs COMMAND on each file individually with the |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3652 file name substituted for `?'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3653 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3654 Otherwise, this runs COMMAND on each file individually with the |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3655 file name added at the end of COMMAND (separated by a space). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3656 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3657 `*' and `?' when not surrounded by whitespace have no special |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3658 significance for `dired-do-shell-command', and are passed through |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3659 normally to the shell, but you must confirm first. To pass `*' by |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3660 itself to the shell as a wildcard, type `*\"\"'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3661 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3662 If COMMAND produces output, it goes to a separate buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3663 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3664 This feature does not try to redisplay Dired buffers afterward, as |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3665 there's no telling what files COMMAND may have changed. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3666 Type \\[dired-do-redisplay] to redisplay the marked files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3667 |
105170 | 3668 When COMMAND runs, its working directory is the top-level directory |
3669 of the Dired buffer, so output files usually are created there | |
3670 instead of in a subdir. | |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3671 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3672 In a noninteractive call (from Lisp code), you must specify |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3673 the list of file names explicitly with the FILE-LIST argument, which |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3674 can be produced by `dired-get-marked-files', for example. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3675 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3676 \(fn COMMAND &optional ARG FILE-LIST)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3677 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3678 (autoload 'dired-run-shell-command "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3679 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3680 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3681 \(fn COMMAND)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3682 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3683 (autoload 'dired-do-kill-lines "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3684 Kill all marked lines (not the files). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3685 With a prefix argument, kill that many lines starting with the current line. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3686 \(A negative argument kills backward.) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3687 If you use this command with a prefix argument to kill the line |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3688 for a file that is a directory, which you have inserted in the |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3689 Dired buffer as a subdirectory, then it deletes that subdirectory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3690 from the buffer as well. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3691 To kill an entire subdirectory (without killing its line in the |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3692 parent directory), go to its directory header line and use this |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3693 command with a prefix argument (the value does not matter). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3694 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3695 \(fn &optional ARG FMT)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3696 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3697 (autoload 'dired-compress-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3698 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3699 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3700 \(fn FILE)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3701 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3702 (autoload 'dired-query "dired-aux" "\ |
105091 | 3703 Query user and return nil or t. |
3704 Store answer in symbol VAR (which must initially be bound to nil). | |
3705 Format PROMPT with ARGS. | |
3706 Binding variable `help-form' will help the user who types the help key. | |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3707 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3708 \(fn QS-VAR QS-PROMPT &rest QS-ARGS)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3709 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3710 (autoload 'dired-do-compress "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3711 Compress or uncompress marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3712 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3713 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3714 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3715 (autoload 'dired-do-byte-compile "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3716 Byte compile marked (or next ARG) Emacs Lisp files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3717 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3718 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3719 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3720 (autoload 'dired-do-load "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3721 Load the marked (or next ARG) Emacs Lisp files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3722 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3723 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3724 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3725 (autoload 'dired-do-redisplay "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3726 Redisplay all marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3727 If on a subdir line, redisplay that subdirectory. In that case, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3728 a prefix arg lets you edit the `ls' switches used for the new listing. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3729 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3730 Dired remembers switches specified with a prefix arg, so that reverting |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3731 the buffer will not reset them. However, using `dired-undo' to re-insert |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3732 or delete subdirectories can bypass this machinery. Hence, you sometimes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3733 may have to reset some subdirectory switches after a `dired-undo'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3734 You can reset all subdirectory switches to the default using |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3735 \\<dired-mode-map>\\[dired-reset-subdir-switches]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3736 See Info node `(emacs)Subdir switches' for more details. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3737 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3738 \(fn &optional ARG TEST-FOR-SUBDIR)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3739 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3740 (autoload 'dired-add-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3741 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3742 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3743 \(fn FILENAME &optional MARKER-CHAR)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3744 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3745 (autoload 'dired-remove-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3746 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3747 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3748 \(fn FILE)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3749 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3750 (autoload 'dired-relist-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3751 Create or update the line for FILE in all Dired buffers it would belong in. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3752 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3753 \(fn FILE)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3754 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3755 (autoload 'dired-copy-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3756 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3757 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3758 \(fn FROM TO OK-FLAG)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3759 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3760 (autoload 'dired-rename-file "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3761 Not documented |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3762 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3763 \(fn FILE NEWNAME OK-IF-ALREADY-EXISTS)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3764 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3765 (autoload 'dired-create-directory "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3766 Create a directory called DIRECTORY. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3767 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3768 \(fn DIRECTORY)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3769 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3770 (autoload 'dired-do-copy "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3771 Copy all marked (or next ARG) files, or copy the current file. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3772 This normally preserves the last-modified date when copying. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3773 When operating on just the current file, you specify the new name. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3774 When operating on multiple or marked files, you specify a directory, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3775 and new copies of these files are made in that directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3776 with the same names that the files currently have. The default |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3777 suggested for the target directory depends on the value of |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3778 `dired-dwim-target', which see. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3779 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3780 This command copies symbolic links by creating new ones, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3781 like `cp -d'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3782 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3783 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3784 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3785 (autoload 'dired-do-symlink "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3786 Make symbolic links to current file or all marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3787 When operating on just the current file, you specify the new name. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3788 When operating on multiple or marked files, you specify a directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3789 and new symbolic links are made in that directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3790 with the same names that the files currently have. The default |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3791 suggested for the target directory depends on the value of |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3792 `dired-dwim-target', which see. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3793 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3794 For relative symlinks, use \\[dired-do-relsymlink]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3795 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3796 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3797 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3798 (autoload 'dired-do-hardlink "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3799 Add names (hard links) current file or all marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3800 When operating on just the current file, you specify the new name. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3801 When operating on multiple or marked files, you specify a directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3802 and new hard links are made in that directory |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3803 with the same names that the files currently have. The default |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3804 suggested for the target directory depends on the value of |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3805 `dired-dwim-target', which see. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3806 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3807 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3808 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3809 (autoload 'dired-do-rename "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3810 Rename current file or all marked (or next ARG) files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3811 When renaming just the current file, you specify the new name. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3812 When renaming multiple or marked files, you specify a directory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3813 This command also renames any buffers that are visiting the files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3814 The default suggested for the target directory depends on the value |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3815 of `dired-dwim-target', which see. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3816 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3817 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3818 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3819 (autoload 'dired-do-rename-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3820 Rename selected files whose names match REGEXP to NEWNAME. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3821 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3822 With non-zero prefix argument ARG, the command operates on the next ARG |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3823 files. Otherwise, it operates on all the marked files, or the current |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3824 file if none are marked. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3825 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3826 As each match is found, the user must type a character saying |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3827 what to do with it. For directions, type \\[help-command] at that time. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3828 NEWNAME may contain \\=\\<n> or \\& as in `query-replace-regexp'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3829 REGEXP defaults to the last regexp used. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3830 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3831 With a zero prefix arg, renaming by regexp affects the absolute file name. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3832 Normally, only the non-directory part of the file name is used and changed. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3833 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3834 \(fn REGEXP NEWNAME &optional ARG WHOLE-NAME)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3835 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3836 (autoload 'dired-do-copy-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3837 Copy selected files whose names match REGEXP to NEWNAME. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3838 See function `dired-do-rename-regexp' for more info. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3839 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3840 \(fn REGEXP NEWNAME &optional ARG WHOLE-NAME)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3841 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3842 (autoload 'dired-do-hardlink-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3843 Hardlink selected files whose names match REGEXP to NEWNAME. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3844 See function `dired-do-rename-regexp' for more info. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3845 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3846 \(fn REGEXP NEWNAME &optional ARG WHOLE-NAME)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3847 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3848 (autoload 'dired-do-symlink-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3849 Symlink selected files whose names match REGEXP to NEWNAME. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3850 See function `dired-do-rename-regexp' for more info. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3851 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3852 \(fn REGEXP NEWNAME &optional ARG WHOLE-NAME)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3853 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3854 (autoload 'dired-upcase "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3855 Rename all marked (or next ARG) files to upper case. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3856 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3857 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3858 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3859 (autoload 'dired-downcase "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3860 Rename all marked (or next ARG) files to lower case. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3861 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3862 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3863 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3864 (autoload 'dired-maybe-insert-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3865 Insert this subdirectory into the same dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3866 If it is already present, just move to it (type \\[dired-do-redisplay] to refresh), |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3867 else inserts it at its natural place (as `ls -lR' would have done). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3868 With a prefix arg, you may edit the ls switches used for this listing. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3869 You can add `R' to the switches to expand the whole tree starting at |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3870 this subdirectory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3871 This function takes some pains to conform to `ls -lR' output. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3872 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3873 Dired remembers switches specified with a prefix arg, so that reverting |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3874 the buffer will not reset them. However, using `dired-undo' to re-insert |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3875 or delete subdirectories can bypass this machinery. Hence, you sometimes |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3876 may have to reset some subdirectory switches after a `dired-undo'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3877 You can reset all subdirectory switches to the default using |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3878 \\<dired-mode-map>\\[dired-reset-subdir-switches]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3879 See Info node `(emacs)Subdir switches' for more details. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3880 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3881 \(fn DIRNAME &optional SWITCHES NO-ERROR-IF-NOT-DIR-P)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3882 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3883 (autoload 'dired-insert-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3884 Insert this subdirectory into the same dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3885 If it is already present, overwrites previous entry, |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3886 else inserts it at its natural place (as `ls -lR' would have done). |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3887 With a prefix arg, you may edit the `ls' switches used for this listing. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3888 You can add `R' to the switches to expand the whole tree starting at |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3889 this subdirectory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3890 This function takes some pains to conform to `ls -lR' output. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3891 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3892 \(fn DIRNAME &optional SWITCHES NO-ERROR-IF-NOT-DIR-P)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3893 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3894 (autoload 'dired-prev-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3895 Go to previous subdirectory, regardless of level. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3896 When called interactively and not on a subdir line, go to this subdir's line. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3897 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3898 \(fn ARG &optional NO-ERROR-IF-NOT-FOUND NO-SKIP)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3899 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3900 (autoload 'dired-goto-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3901 Go to end of header line of DIR in this dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3902 Return value of point on success, otherwise return nil. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3903 The next char is either \\n, or \\r if DIR is hidden. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3904 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3905 \(fn DIR)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3906 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3907 (autoload 'dired-mark-subdir-files "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3908 Mark all files except `.' and `..' in current subdirectory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3909 If the Dired buffer shows multiple directories, this command |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3910 marks the files listed in the subdirectory that point is in. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3911 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3912 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3913 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3914 (autoload 'dired-kill-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3915 Remove all lines of current subdirectory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3916 Lower levels are unaffected. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3917 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3918 \(fn &optional REMEMBER-MARKS)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3919 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3920 (autoload 'dired-tree-up "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3921 Go up ARG levels in the dired tree. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3922 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3923 \(fn ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3924 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3925 (autoload 'dired-tree-down "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3926 Go down in the dired tree. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3927 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3928 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3929 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3930 (autoload 'dired-hide-subdir "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3931 Hide or unhide the current subdirectory and move to next directory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3932 Optional prefix arg is a repeat factor. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3933 Use \\[dired-hide-all] to (un)hide all directories. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3934 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3935 \(fn ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3936 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3937 (autoload 'dired-hide-all "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3938 Hide all subdirectories, leaving only their header lines. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3939 If there is already something hidden, make everything visible again. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3940 Use \\[dired-hide-subdir] to (un)hide a particular subdirectory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3941 |
106922
6657954b1aa2
* lisp/dired-aux.el (dired-hide-all): Make unused arg optional. Update md5sum.
Chong Yidong <cyd@stupidchicken.com>
parents:
106817
diff
changeset
|
3942 \(fn &optional IGNORED)" t nil) |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3943 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3944 (autoload 'dired-isearch-filenames-setup "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3945 Set up isearch to search in Dired file names. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3946 Intended to be added to `isearch-mode-hook'. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3947 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3948 \(fn)" nil nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3949 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3950 (autoload 'dired-isearch-filenames "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3951 Search for a string using Isearch only in file names in the Dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3952 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3953 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3954 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3955 (autoload 'dired-isearch-filenames-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3956 Search for a regexp using Isearch only in file names in the Dired buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3957 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3958 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3959 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3960 (autoload 'dired-do-isearch "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3961 Search for a string through all marked files using Isearch. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3962 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3963 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3964 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3965 (autoload 'dired-do-isearch-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3966 Search for a regexp through all marked files using Isearch. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3967 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3968 \(fn)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3969 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3970 (autoload 'dired-do-search "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3971 Search through all marked files for a match for REGEXP. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3972 Stops when a match is found. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3973 To continue searching for next match, use command \\[tags-loop-continue]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3974 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3975 \(fn REGEXP)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3976 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3977 (autoload 'dired-do-query-replace-regexp "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3978 Do `query-replace-regexp' of FROM with TO, on all marked files. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3979 Third arg DELIMITED (prefix arg) means replace only word-delimited matches. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3980 If you exit (\\[keyboard-quit], RET or q), you can resume the query replace |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3981 with the command \\[tags-loop-continue]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3982 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3983 \(fn FROM TO &optional DELIMITED)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3984 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3985 (autoload 'dired-show-file-type "dired-aux" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3986 Print the type of FILE, according to the `file' command. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3987 If FILE is a symbolic link and the optional argument DEREF-SYMLINKS is |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3988 true then the type of the file linked to by FILE is printed instead. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3989 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3990 \(fn FILE &optional DEREF-SYMLINKS)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3991 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3992 ;;;*** |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3993 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3994 ;;;### (autoloads (dired-do-relsymlink dired-jump) "dired-x" "dired-x.el" |
110015
280c8ae2476d
Add "Package:" file headers to denote built-in packages.
Chong Yidong <cyd@stupidchicken.com>
parents:
109553
diff
changeset
|
3995 ;;;;;; "27c312d6d5d40d8cb4ef8d62e30d5f4a") |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3996 ;;; Generated autoloads from dired-x.el |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3997 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3998 (autoload 'dired-jump "dired-x" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
3999 Jump to dired buffer corresponding to current buffer. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4000 If in a file, dired the current directory and move to file's line. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4001 If in Dired already, pop up a level and goto old directory's line. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4002 In case the proper dired file line cannot be found, refresh the dired |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4003 buffer and try again. |
108715
5b835c23f034
* dired-x.el (dired-jump, dired-jump-other-window): Add arg
Juri Linkov <juri@jurta.org>
parents:
107815
diff
changeset
|
4004 When OTHER-WINDOW is non-nil, jump to dired buffer in other window. |
5b835c23f034
* dired-x.el (dired-jump, dired-jump-other-window): Add arg
Juri Linkov <juri@jurta.org>
parents:
107815
diff
changeset
|
4005 Interactively with prefix argument, read FILE-NAME and |
5b835c23f034
* dired-x.el (dired-jump, dired-jump-other-window): Add arg
Juri Linkov <juri@jurta.org>
parents:
107815
diff
changeset
|
4006 move to its line in dired. |
5b835c23f034
* dired-x.el (dired-jump, dired-jump-other-window): Add arg
Juri Linkov <juri@jurta.org>
parents:
107815
diff
changeset
|
4007 |
5b835c23f034
* dired-x.el (dired-jump, dired-jump-other-window): Add arg
Juri Linkov <juri@jurta.org>
parents:
107815
diff
changeset
|
4008 \(fn &optional OTHER-WINDOW FILE-NAME)" t nil) |
104944
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4009 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4010 (autoload 'dired-do-relsymlink "dired-x" "\ |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4011 Relative symlink all marked (or next ARG) files into a directory. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4012 Otherwise make a relative symbolic link to the current file. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4013 This creates relative symbolic links like |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4014 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4015 foo -> ../bar/foo |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4016 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4017 not absolute ones like |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4018 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4019 foo -> /ugly/file/name/that/may/change/any/day/bar/foo |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4020 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4021 For absolute symlinks, use \\[dired-do-symlink]. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4022 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4023 \(fn &optional ARG)" t nil) |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4024 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4025 ;;;*** |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4026 |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4027 ;;; End of automatically extracted autoloads. |
0325f606c9c1
Regenerate with extracted autoloads.
Glenn Morris <rgm@gnu.org>
parents:
104922
diff
changeset
|
4028 |
4888
a58a505c42d9
`provide' "dired" before running user hooks.
Brian Fox <bfox@gnu.org>
parents:
4760
diff
changeset
|
4029 (provide 'dired) |
a58a505c42d9
`provide' "dired" before running user hooks.
Brian Fox <bfox@gnu.org>
parents:
4760
diff
changeset
|
4030 |
723
a898ba10b49c
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
661
diff
changeset
|
4031 (run-hooks 'dired-load-hook) ; for your customizations |
661 | 4032 |
58412
b9a1c1b8d195
(dired-align-file): Don't assume line starts with spaces.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
57943
diff
changeset
|
4033 ;; arch-tag: e1af7a8f-691c-41a0-aac1-ddd4d3c87517 |
834
2e0cd4e83c2e
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
778
diff
changeset
|
4034 ;;; dired.el ends here |