Add 2007 to copyright years.
[bpt/emacs.git] / man / dired-x.texi
CommitLineData
6bf7aab6
DL
1\input texinfo @comment -*-texinfo-*-
2
3@c dired-x.texi --- Sebastian Kremer's Extra DIRED hacked up for GNU Emacs19
177c0ea7 4@c
6bf7aab6
DL
5@c Author: Sebastian Kremer <sk@thp.uni-koeln.de>
6@c Lawrence R. Dodd <dodd@roebling.poly.edu>
25489206 7@c [Dodd's address no longer valid.]
36e10400
EZ
8@c Version: 2.53
9@c Date: 2001/02/25 14:05:46
6bf7aab6
DL
10@c Keywords: dired extensions
11@c dired-x.el REVISION NUMBER: 2
12
13@c State: Released
36e10400 14@c Ident: dired-x.texi,v 2.53 2001/02/25 14:05:46 dodd Released
6bf7aab6
DL
15
16@comment %**start of header (This is for running Texinfo on a region.)
17@c FOR GNU EMACS USE ../info/dired-x BELOW
18@setfilename ../info/dired-x
19@c dired-x.el REVISION NUMBER
20@settitle Dired Extra Version 2 User's Manual
6bf7aab6
DL
21@iftex
22@finalout
23@end iftex
24@c @setchapternewpage odd % For book style double sided manual.
25@comment %**end of header (This is for running Texinfo on a region.)
6bf7aab6 26
18f952d5 27@copying
25489206 28This documents the ``extra'' features for Dired Mode for GNU Emacs found in
6bf7aab6
DL
29the file @file{dired-x.el}.
30
b65d8176 31Copyright @copyright{} 1993, 1994, 2001, 2002, 2003, 2004,
4e6835db 322005, 2006, 2007 Free Software Foundation, Inc.
6bf7aab6 33
18f952d5 34@quotation
6bf7aab6
DL
35Permission is granted to make and distribute verbatim copies of this
36manual provided the copyright notice and this permission notice are
37preserved on all copies.
38
39Permission is granted to copy and distribute modified versions of
40this manual under the conditions for verbatim copying, provided that
41the entire resulting derived work is distributed under the terms of
42a permission notice identical to this one.
43
44Permission is granted to copy and distribute translations of this
45manual into another language, under the above conditions for
46modified versions, except that this permission notice may be stated
47in a translation approved by the Free Software Foundation.
48
49The file used to create this is called @file{dired-x.texi}, but the
50original work that was altered to make that file was called
51@file{dired.texi} written by Sebastian Kremer.
52
53@ignore
54Permission is granted to process this file through TeX and print the
55results, provided the printed document carries copying permission
56notice identical to this one except for the removal of this paragraph
57(this paragraph not being relevant to the printed manual).
58
59@end ignore
18f952d5
KB
60@end quotation
61@end copying
62
63@dircategory Emacs
64@direntry
65* Dired-X: (dired-x). Dired Extra Features.
66@end direntry
67
68@c @smallbook
69@tex
70\overfullrule=0pt
71%\global\baselineskip 30pt % For printing in double spaces
72@end tex
6bf7aab6 73
6bf7aab6
DL
74@titlepage
75@sp 6
76@c dired-x.el REVISION NUMBER
77@center @titlefont{Dired Extra Version 2}
78@sp 2
25489206 79@center @titlefont{For The GNU Emacs}
6bf7aab6
DL
80@sp 1
81@center @titlefont{Directory Editor}
82@sp 4
36e10400
EZ
83@center Manual Revision: 2.53
84@center 2001/02/25 14:05:46
6bf7aab6
DL
85@sp 5
86@center Lawrence R@. Dodd
25489206 87@c @center @t{dodd@@roebling.poly.edu}
6bf7aab6
DL
88@sp 5
89@center (Based on @file{dired.texi} by Sebastian Kremer <sk@@thp.uni-koeln.de>)
90@page
91@vskip 0pt plus 1filll
18f952d5 92@insertcopying
6bf7aab6
DL
93@end titlepage
94
95@page
96
4ed985b1 97@ifnottex
6bf7aab6 98
18f952d5 99@node Top
6bf7aab6
DL
100@comment node-name, next, previous, up
101
102@noindent
25489206 103This documents the ``extra'' features for Dired Mode for GNU Emacs that are
6bf7aab6
DL
104provided by the file @file{dired-x.el}.
105
106@itemize @bullet
107
108@item
109Based on @file{dired.texi} by Sebastian Kremer <sk@@thp.uni-koeln.de>
110
111@c dired-x.el REVISION NUMBER
177c0ea7 112@item
6bf7aab6
DL
113For @file{dired-x.el} revision 2
114
177c0ea7 115@c @item
36e10400 116@c Revision of this manual: 2.53 (2001/02/25 14:05:46)
6bf7aab6 117
25489206
DL
118@c @item
119@c Bugs to Lawrence R. Dodd <dodd@@roebling.poly.edu>. @emph{Please} type
120@c @kbd{M-x dired-x-submit-report} to submit a bug report (@pxref{Bugs}).
6bf7aab6 121
25489206
DL
122@c @item
123@c You can obtain a copy of this package via anonymous ftp in
124@c @t{/roebling.poly.edu:/pub/packages/dired-x.tar.gz}
6bf7aab6
DL
125
126@end itemize
127
128@menu
129* Introduction::
130* Installation::
131* Omitting Files in Dired::
132* Local Variables::
133* Shell Command Guessing::
134* Virtual Dired::
135* Advanced Mark Commands::
136* Multiple Dired Directories::
137* Find File At Point::
138* Miscellaneous Commands::
139* Bugs::
140
177c0ea7
JB
141* Concept Index::
142* Command Index::
143* Key Index::
144* Variable Index::
6bf7aab6
DL
145
146@end menu
147
4ed985b1 148@end ifnottex
6bf7aab6 149
39cf43ac 150@node Introduction, Installation, Top, Top
6bf7aab6
DL
151@comment node-name, next, previous, up
152@chapter Introduction
153
25489206
DL
154This documents the @emph{extra} features for Dired Mode for GNU Emacs. It
155is derived from version 1.191 of Sebastian Kremer's @file{dired-x.el}.
6bf7aab6
DL
156
157In adopting this @file{dired-x.el} to GNU Emacs v19 some material that has
158been incorporated into @file{dired.el} and @file{dired-aux.el} of the GNU Emacs
15919 distribution has been removed and some material was modified for agreement
160with the functions in @file{dired.el} and @file{dired-aux.el}. For example,
161the code using @code{gmhist} history functions was replaced with code using
25489206 162the mini-buffer history now built into GNU Emacs. Finally, a few other
6bf7aab6
DL
163features have been added and a few more functions have been bound to keys.
164
4ed985b1 165@ifnottex
6bf7aab6
DL
166@menu
167* Features::
168* Technical Details::
169@end menu
4ed985b1 170@end ifnottex
6bf7aab6 171
39cf43ac 172@node Features, Technical Details, , Introduction
6bf7aab6
DL
173@comment node-name, next, previous, up
174@section Features
175@cindex Features
176
177Some features provided by Dired Extra
178
179@enumerate
180@item
177c0ea7 181Omitting uninteresting files from Dired listing.
6bf7aab6 182@itemize @bullet
4563d12e 183@xref{Omitting Files in Dired}.
6bf7aab6
DL
184@end itemize
185@item
36e10400 186Local variables for Dired directories.
6bf7aab6 187@itemize @bullet
4563d12e 188@xref{Local Variables}.
6bf7aab6
DL
189@end itemize
190@item
36e10400 191Guessing shell commands in Dired buffers.
6bf7aab6 192@itemize @bullet
4563d12e 193@xref{Shell Command Guessing}.
6bf7aab6
DL
194@end itemize
195@item
36e10400 196Running Dired command in non-Dired buffers.
6bf7aab6 197@itemize @bullet
4563d12e 198@xref{Virtual Dired}.
6bf7aab6
DL
199@end itemize
200@item
201Finding a file mentioned in a buffer
202@itemize @bullet
4563d12e 203@xref{Find File At Point}.
6bf7aab6
DL
204@end itemize
205@item
206Commands using file marking.
207@itemize @bullet
4563d12e 208@xref{Advanced Mark Commands}.
6bf7aab6
DL
209@end itemize
210@end enumerate
211
212@noindent
4563d12e 213@file{dired-x.el} binds some functions to keys in Dired Mode (@pxref{Key
6bf7aab6 214Index}) and also binds @kbd{C-x C-j} and @kbd{C-x 4 C-j} @emph{globally} to
4563d12e 215@code{dired-jump} (@pxref{Miscellaneous Commands}). It may also bind @kbd{C-x
6bf7aab6 216C-f} and @kbd{C-x 4 C-f} to @code{dired-x-find-file} and
4563d12e 217@code{dired-x-find-file-other-window}, respectively (@pxref{Find File At
6bf7aab6
DL
218Point}).
219
39cf43ac 220@node Technical Details, , Features, Introduction
6bf7aab6
DL
221@comment node-name, next, previous, up
222@section Technical Details
223@cindex Redefined functions
224@cindex @file{dired-aux.el}
225
226When loaded this code @emph{redefines} the following functions of GNU Emacs
227from @file{dired.el}
228
229@itemize @bullet
230@item
231@code{dired-clean-up-after-deletion}
232@item
233@code{dired-find-buffer-nocreate}
234@item
235@code{dired-initial-position}
236@item
237@code{dired-up-directory}
238@end itemize
239
240@noindent
241and the following functions from @file{dired-aux.el}
242
243@itemize @bullet
244@item
245@code{dired-add-entry}
246@item
247@code{dired-read-shell-command}
248@end itemize
249
39cf43ac 250@node Installation, Omitting Files in Dired, Introduction, Top
6bf7aab6
DL
251@comment node-name, next, previous, up
252@chapter Installation
253
254@noindent
36e10400 255This manual describes the Dired features provided by the file
6bf7aab6
DL
256@file{dired-x.el}. To take advantage of these features, you must load the
257file and (optionally) set some variables.
258
259@noindent
260In your @file{.emacs} file in your home directory, or in the system-wide
261initialization file @file{default.el} in the @file{site-lisp} directory, put
262
263@example
264(add-hook 'dired-load-hook
bed44076
SM
265 (lambda ()
266 (load "dired-x")
267 ;; Set dired-x global variables here. For example:
268 ;; (setq dired-guess-shell-gnutar "gtar")
269 ;; (setq dired-x-hands-off-my-keys nil)
270 ))
6bf7aab6 271(add-hook 'dired-mode-hook
bed44076
SM
272 (lambda ()
273 ;; Set dired-x buffer-local variables here. For example:
bba9ac84 274 ;; (dired-omit-mode 1)
bed44076 275 ))
6bf7aab6
DL
276@end example
277
278@noindent
36e10400
EZ
279This will load @file{dired-x.el} when Dired is first invoked (for example,
280when you first type @kbd{C-x d}).
6bf7aab6 281
4ed985b1 282@ifnottex
6bf7aab6
DL
283@menu
284* Optional Installation Dired Jump::
285* Optional Installation File At Point::
6bf7aab6 286@end menu
4ed985b1 287@end ifnottex
6bf7aab6 288
39cf43ac 289@node Optional Installation Dired Jump, Optional Installation File At Point, , Installation
6bf7aab6
DL
290@comment node-name, next, previous, up
291@section Optional Installation Dired Jump
292
293@cindex Autoloading @code{dired-jump} and @code{dired-jump-other-window}
294
295In order to have @code{dired-jump} and @code{dired-jump-other-window}
4563d12e 296(@pxref{Miscellaneous Commands}) work @emph{before} @code{dired} and
6bf7aab6
DL
297@code{dired-x} have been properly loaded the user should set-up an autoload
298for these functions. In your @file{.emacs} file put
299
300@example
91ec56a9
SM
301;; Autoload `dired-jump' and `dired-jump-other-window'.
302;; We autoload from FILE dired.el. This will then load dired-x.el
303;; and hence define `dired-jump' and `dired-jump-other-window'.
6bf7aab6
DL
304(define-key global-map "\C-x\C-j" 'dired-jump)
305(define-key global-map "\C-x4\C-j" 'dired-jump-other-window)
306
307(autoload (quote dired-jump) "dired" "\
36e10400
EZ
308Jump to Dired buffer corresponding to current buffer.
309If in a file, Dired the current directory and move to file's line.
310If in Dired already, pop up a level and goto old directory's line.
311In case the proper Dired file line cannot be found, refresh the Dired
6bf7aab6
DL
312buffer and try again." t nil)
313
314(autoload (quote dired-jump-other-window) "dired" "\
315Like \\[dired-jump] (dired-jump) but in other window." t nil)
316@end example
317
318Note that in recent releases of GNU Emacs 19 (i.e., 19.25 or later) the file
319@file{../lisp/loaddefs.el} of the Emacs distribution already contains the
320proper auto-loading for @code{dired-jump} so you need only put
321
322@example
323(define-key global-map "\C-x\C-j" 'dired-jump)
324@end example
325
36e10400
EZ
326@noindent
327in your @file{.emacs} file in order to have @kbd{C-x C-j} work
6bf7aab6
DL
328before @code{dired} is loaded.
329
25489206 330@node Optional Installation File At Point, , Optional Installation Dired Jump, Installation
6bf7aab6
DL
331@comment node-name, next, previous, up
332@section Optional Installation File At Point
333
334@cindex Binding @code{dired-x-find-file}
335If you choose to have @file{dired-x.el} bind @code{dired-x-find-file} over
4563d12e 336@code{find-file} (@pxref{Find File At Point}), then you will need to set
6bf7aab6
DL
337@code{dired-x-hands-off-my-keys} and make a call to the function
338@code{dired-x-bind-find-file} in the @code{dired-load-hook}:
339
340@example
177c0ea7 341(add-hook 'dired-load-hook
bed44076
SM
342 (lambda ()
343 (load "dired-x")
344 ;; Bind dired-x-find-file.
345 (setq dired-x-hands-off-my-keys nil)
346 ;; Make sure our binding preference is invoked.
347 (dired-x-bind-find-file)
348 ))
6bf7aab6
DL
349@end example
350
351Alternatively, you can set the variable @emph{before} @file{dired-x.el} is
352loaded
353
354@example
177c0ea7 355(add-hook 'dired-load-hook
bed44076
SM
356 (lambda ()
357 ;; Bind dired-x-find-file.
358 (setq dired-x-hands-off-my-keys nil)
359 (load "dired-x")
360 ))
6bf7aab6
DL
361@end example
362
39cf43ac 363@node Omitting Files in Dired, Local Variables, Installation, Top
6bf7aab6
DL
364@comment node-name, next, previous, up
365@chapter Omitting Files in Dired
366
367@cindex Omitting Files in Dired
36e10400 368@cindex Uninteresting files
6bf7aab6
DL
369@dfn{Omitting} a file means removing it from the directory listing. Omitting
370is useful for keeping Dired buffers free of ``uninteresting'' files (for
371instance, auto-save, auxiliary, backup, and revision control files) so that
372the user can concentrate on the interesting files. Like hidden files, omitted
373files are never seen by Dired. Omitting differs from hiding in several
374respects:
375
376@itemize @bullet
377
378@item
379Omitting works on individual files, not on directories; an entire directory
380cannot be omitted (though each of its files could be).
381
382@item
36e10400 383Omitting is wholesale; if omitting is turned on for a Dired buffer, then all
6bf7aab6
DL
384uninteresting files listed in that buffer are omitted. The user does not omit
385(or unomit) files one at a time.
386
387@item
388Omitting can be automatic; uninteresting file lines in the buffer can be
389removed before the user ever sees them.
390
391@item
392Marked files are never omitted.
393@end itemize
394
395@table @kbd
396@item M-o
397@kindex M-o
bba9ac84
LH
398@findex dired-omit-mode
399(@code{dired-omit-mode}) Toggle between displaying and omitting
400``uninteresting'' files.
c408806a
LH
401@item * O
402@kindex * O
bba9ac84
LH
403@findex dired-mark-omitted
404(@code{dired-mark-omitted}) Mark ``uninteresting'' files.
6bf7aab6
DL
405@end table
406
407@noindent
408In order to make Dired Omit work you first need to load @file{dired-x.el}
bba9ac84
LH
409inside @code{dired-load-hook} (@pxref{Installation}) and then evaluate
410@code{(dired-omit-mode 1)} in some way (@pxref{Omitting Variables}).
6bf7aab6 411
4ed985b1 412@ifnottex
6bf7aab6
DL
413@menu
414* Omitting Variables::
415* Omitting Examples::
416* Omitting Technical::
417@end menu
4ed985b1 418@end ifnottex
6bf7aab6 419
39cf43ac 420@node Omitting Variables, Omitting Examples, , Omitting Files in Dired
6bf7aab6
DL
421@comment node-name, next, previous, up
422
423@section Omitting Variables
424
36e10400 425@cindex Customizing file omitting
6bf7aab6
DL
426The following variables can be used to customize omitting.
427
428@table @code
429
bba9ac84
LH
430@vindex dired-omit-mode
431@item dired-omit-mode
6bf7aab6
DL
432
433Default: @code{nil}
434
435@cindex How to make omitting the default in Dired
36e10400
EZ
436If non-@code{nil}, ``uninteresting'' files are not listed.
437Uninteresting files are those whose files whose names match regexp
438@code{dired-omit-files}, plus those ending with extensions in
bba9ac84 439@code{dired-omit-extensions}. @kbd{M-o} (@code{dired-omit-mode})
36e10400 440toggles its value, which is buffer-local. Put
6bf7aab6
DL
441
442@example
bba9ac84 443(dired-omit-mode 1)
6bf7aab6
DL
444@end example
445
36e10400 446@noindent
6bf7aab6 447inside your @code{dired-mode-hook} to have omitting initially turned on in
4563d12e 448@emph{every} Dired buffer (@pxref{Installation}). You can then use @kbd{M-o} to
6bf7aab6
DL
449unomit in that buffer.
450
451To enable omitting automatically only in certain directories one can use Dired
452Local Variables and put
453
454@example
455Local Variables:
bba9ac84 456dired-omit-mode: t
6bf7aab6
DL
457End:
458@end example
459
460@noindent
461into a file @file{.dired} (the default value of
4563d12e 462@code{dired-local-variables-file}) in that directory (@pxref{Local Variables}).
6bf7aab6
DL
463
464@table @code
465@findex dired-omit-here-always
466@item dired-omit-here-always
467
468This is an interactive function that creates a local variables file exactly
469like the example above (if it does not already exist) in the file
470@code{dired-local-variables-file} in the current directory and then refreshes
4563d12e 471the directory listing (@pxref{Local Variables}).
6bf7aab6
DL
472@end table
473
474@vindex dired-omit-files
475@item dired-omit-files
476
477Default: @code{"^#\\|\\.$"}
478
36e10400 479Files whose names match this buffer-local regexp will not be displayed.
bba9ac84 480This only has effect when @code{dired-omit-mode}'s value is @code{t}.
6bf7aab6
DL
481
482The default value omits the special directories @file{.} and @file{..} and
36e10400 483autosave files (plus other files ending in @file{.}) (@pxref{Omitting Examples}).
6bf7aab6
DL
484
485@vindex dired-omit-extensions
486@item dired-omit-extensions
487
36e10400 488Default: The elements of @code{completion-ignored-extensions},
6bf7aab6
DL
489@code{dired-latex-unclean-extensions}, @code{dired-bibtex-unclean-extensions}
490and @code{dired-texinfo-unclean-extensions}.
491
492If non-@code{nil}, a list of extensions (strings) to omit from Dired listings.
493Its format is the same as that of @code{completion-ignored-extensions}.
494
495@vindex dired-omit-localp
496@item dired-omit-localp
497
36e10400 498Default: @code{no-dir}
6bf7aab6
DL
499
500The @var{localp} argument @code{dired-omit-expunge} passes to
36e10400
EZ
501@code{dired-get-filename}. If it is @code{no-dir}, omitting is much faster,
502but you can only match against the non-directory part of the file name. Set it
503to @code{nil} if you need to match the whole file name or @code{t} to match the
504file name relative to the buffer's top-level directory.
6bf7aab6
DL
505
506@item dired-omit-marker-char
507@vindex dired-omit-marker-char
508@cindex Omitting additional files
509Default: @kbd{C-o}
510
955c00f9 511Temporary marker used by Dired to implement omitting. Should never be used
6bf7aab6 512as marker by the user or other packages. There is one exception to this rule:
36e10400 513by adding
6bf7aab6
DL
514
515@example
516(setq dired-mark-keys "\C-o")
517;; i.e., the value of dired-omit-marker-char
518;; (which is not defined yet)
519@end example
520
36e10400
EZ
521@noindent
522to your @file{~/.emacs}, you can bind the @kbd{C-o} key to insert a
6bf7aab6
DL
523@kbd{C-o} marker, thus causing these files to be omitted in addition to the
524usually omitted files. Unfortunately the files you omitted manually this way
525will show up again after reverting the buffer, unlike the others.
526
527@end table
528
529@node Omitting Examples, Omitting Technical, Omitting Variables, Omitting Files in Dired
530@comment node-name, next, previous, up
531@section Examples of Omitting Various File Types
532
533@itemize @bullet
534
535@item
536@cindex RCS files, how to omit them in Dired
537@cindex Omitting RCS files in Dired
36e10400 538If you wish to avoid seeing RCS files and the @file{RCS} directory, then put
6bf7aab6
DL
539
540@example
541(setq dired-omit-files
542 (concat dired-omit-files "\\|^RCS$\\|,v$"))
543@end example
36e10400 544
6bf7aab6 545@noindent
4563d12e 546in the @code{dired-load-hook} (@pxref{Installation}). This assumes
36e10400 547@code{dired-omit-localp} has its default value of @code{no-dir} to make the
6bf7aab6
DL
548@code{^}-anchored matches work. As a slower alternative, with
549@code{dired-omit-localp} set to @code{nil}, you can use @code{/} instead of
550@code{^} in the regexp.
551
552@item
553@cindex Tib files, how to omit them in Dired
554@cindex Omitting tib files in Dired
36e10400
EZ
555If you use @code{tib}, the bibliography program for use with @TeX{} and
556La@TeX{}, and you
557want to omit the @file{INDEX} and the @file{*-t.tex} files, then put
6bf7aab6
DL
558
559@example
560(setq dired-omit-files
561 (concat dired-omit-files "\\|^INDEX$\\|-t\\.tex$"))
562@end example
563
564@noindent
4563d12e 565in the @code{dired-load-hook} (@pxref{Installation}).
6bf7aab6
DL
566
567@item
568@cindex Dot files, how to omit them in Dired
569@cindex Omitting dot files in Dired
36e10400 570If you do not wish to see @samp{dot} files (files starting with a @file{.}),
6bf7aab6
DL
571then put
572
573@example
574(setq dired-omit-files
575 (concat dired-omit-files "\\|^\\..+$"))
576@end example
577
578@noindent
4563d12e 579in the @code{dired-load-hook} (@pxref{Installation}).
6bf7aab6
DL
580
581@end itemize
582
39cf43ac 583@node Omitting Technical, , Omitting Examples, Omitting Files in Dired
6bf7aab6
DL
584@comment node-name, next, previous, up
585@section Some Technical Details of Omitting
586
587Loading @file{dired-x.el} will install Dired Omit by putting
588@code{dired-omit-expunge} on your @code{dired-after-readin-hook}, and will
589call @code{dired-extra-startup}, which in turn calls @code{dired-omit-startup}
590in your @code{dired-mode-hook}.
591
39cf43ac 592@node Local Variables, Shell Command Guessing, Omitting Files in Dired, Top
6bf7aab6
DL
593@comment node-name, next, previous, up
594@chapter Local Variables for Dired Directories
595
596@cindex Local Variables for Dired Directories
597@vindex dired-local-variables-file
598@vindex dired-enable-local-variables
599@noindent
600When Dired visits a directory, it looks for a file whose name is the value of
601variable @code{dired-local-variables-file} (default: @file{.dired}). If such
602a file is found, Dired will temporarily insert it into the Dired buffer and
177c0ea7 603run @code{hack-local-variables}.
6bf7aab6
DL
604
605@noindent
606For example, if the user puts
607
608@example
609Local Variables:
610dired-actual-switches: "-lat"
bba9ac84 611dired-omit-mode: t
6bf7aab6
DL
612End:
613@end example
614
615@noindent
616into a file called @file{.dired} in a directory then when that directory is
617viewed it will be
618
619@enumerate
620@item
177c0ea7 621sorted by date
6bf7aab6
DL
622@item
623omitted automatically
624@end enumerate
625
626@noindent
627You can set @code{dired-local-variables-file} to @code{nil} to suppress this.
628The value of @code{dired-enable-local-variables} controls if and how these
629local variables are read. This variable exists so that if may override the
177c0ea7 630default value of @code{enable-local-variables}.
6bf7aab6
DL
631
632@noindent
633Please see the GNU Emacs Manual to learn more about local variables.
634@xref{File Variables,Local Variables in Files,Local Variables in
635Files,emacs,The GNU Emacs Manual}.
636
637@noindent
638The following variables affect Dired Local Variables
639
640@table @code
641@vindex dired-local-variables-file
642@item dired-local-variables-file
643Default: @code{".dired"}
644
36e10400 645If non-@code{nil}, file name for local variables for Dired. If Dired finds a
6bf7aab6 646file with that name in the current directory, it will temporarily insert it
36e10400 647into the Dired buffer and run @code{hack-local-variables}.
6bf7aab6
DL
648
649@vindex dired-enable-local-variables
650@item dired-enable-local-variables
651Default: @code{t}
652
36e10400 653Controls the use of local-variables lists in Dired. The value can be @code{t},
6bf7aab6
DL
654@code{nil}, or something else. A value of @code{t} means local-variables
655lists are obeyed in the @code{dired-local-variables-file}; @code{nil} means
656they are ignored; anything else means query. This variable temporarily
657overrides the value of @code{enable-local-variables} when the Dired Local
658Variables are hacked.
659@end table
660
661@node Shell Command Guessing, Virtual Dired, Local Variables, Top
662@comment node-name, next, previous, up
663@chapter Shell Command Guessing
664@cindex Guessing shell commands for files.
665
36e10400 666Based upon the name of a file, Dired tries to guess what shell
6bf7aab6
DL
667command you might want to apply to it. For example, if you have point
668on a file named @file{foo.tar} and you press @kbd{!}, Dired will guess
669you want to @samp{tar xvf} it and suggest that as the default shell
670command.
671
36e10400
EZ
672The default is mentioned in brackets and you can type @kbd{M-p} to get
673the default into the minibuffer and then edit it, e.g., to change
6bf7aab6
DL
674@samp{tar xvf} to @samp{tar tvf}. If there are several commands for a given
675file, e.g., @samp{xtex} and @samp{dvips} for a @file{.dvi} file, you can type
676@kbd{M-p} several times to see each of the matching commands.
677
678Dired only tries to guess a command for a single file, never for a list
679of marked files.
680
681@table @code
682@item dired-guess-shell-alist-default
683@vindex dired-guess-shell-alist-default
684Predefined rules for shell commands. Set this to @code{nil} to turn guessing off.
685The elements of @code{dired-guess-shell-alist-user} (defined by the
686user) will override these rules.@refill
687
688@item dired-guess-shell-alist-user
689@vindex dired-guess-shell-alist-user
690If non-@code{nil}, a user-defined alist of file regexps and their suggested
691commands. These rules take precedence over the predefined rules in the
692variable @code{dired-guess-shell-alist-default} (to which they are prepended)
693when @code{dired-do-shell-command} is run).
694@refill
695
696Each element of the alist looks like
697
698@example
699(@var{regexp} @var{command}@dots{})
700@end example
701
36e10400 702@noindent
e23390fa 703where each @var{command} can either be a string or a Lisp expression
36e10400
EZ
704that evaluates to a string. If several commands are given, all of
705them will temporarily be pushed onto the history.
6bf7aab6 706
8968986e
RS
707If @samp{*} in the shell command, that means to substitute the file
708name.
709
6bf7aab6
DL
710You can set this variable in your @file{~/.emacs}. For example,
711to add rules for @samp{.foo} and @samp{.bar} file extensions, write
712
713@example
714(setq dired-guess-shell-alist-user
715 (list
716 (list "\\.foo$" "@var{foo-command}");; fixed rule
717 ;; possibly more rules...
718 (list "\\.bar$";; rule with condition test
719 '(if @var{condition}
720 "@var{bar-command-1}"
721 "@var{bar-command-2}"))))
722@end example
723
724@noindent
725This will override any predefined rules for the same extensions.
726
727@item dired-guess-shell-gnutar
728@vindex dired-guess-shell-gnutar
36e10400 729@cindex Passing GNU Tar its @samp{z} switch.
6bf7aab6
DL
730Default: @code{nil}
731
36e10400
EZ
732If non-@code{nil}, this is the name of the GNU Tar executable (e.g.,
733@samp{tar} or @samp{gnutar}). GNU Tar's @samp{z} switch is used for
734compressed tar files.
6bf7aab6
DL
735If you don't have GNU tar, set this to @code{nil}: a pipe using @samp{zcat} is
736then used.
737
738@item dired-guess-shell-gzip-quiet
739@vindex dired-guess-shell-gzip-quiet
36e10400 740@cindex @code{gzip}
6bf7aab6
DL
741Default: @code{t}
742
36e10400
EZ
743A non-@code{nil} value means that @samp{-q} is passed to @code{gzip}
744overriding a verbose option in the @env{GZIP} environment variable.
6bf7aab6
DL
745
746@item dired-guess-shell-znew-switches nil
747@vindex dired-guess-shell-znew-switches nil
36e10400 748@cindex @code{znew}
6bf7aab6
DL
749Default: @code{nil}
750
36e10400
EZ
751A string of switches passed to @code{znew}. An example is
752@samp{-K} which will make @code{znew} keep a @file{.Z} file when it is
753smaller than the @file{.gz} file.
6bf7aab6
DL
754
755@item dired-shell-command-history nil
756@vindex dired-shell-command-history nil
757
758History list for commands that read dired-shell commands.
759@end table
760
761@node Virtual Dired, Advanced Mark Commands, Shell Command Guessing, Top
762@comment node-name, next, previous, up
763@chapter Virtual Dired
764
765@cindex Virtual Dired
36e10400
EZ
766@cindex Perusing @code{ls} listings
767@cindex @code{ls} listings, how to peruse them in Dired
6bf7aab6
DL
768Using @dfn{Virtual Dired} means putting a buffer with Dired-like
769contents in Dired mode. The files described by the buffer contents need
770not actually exist. This is useful if you want to peruse an @samp{ls -lR}
771output file, for example one you got from an FTP server. You can use
772all motion commands usually available in Dired. You can also use
773it to save a Dired buffer in a file and resume it in a later session.
774
775@findex dired-virtual
776@kindex g
777@findex dired-virtual-revert
778Type @kbd{M-x dired-virtual} to put the current buffer into virtual
779Dired mode. You will be prompted for the top level directory of this
780buffer, with a default value guessed from the buffer contents. To
781convert the virtual to a real Dired buffer again, type @kbd{g} (which
782calls @code{dired-virtual-revert}) in the virtual Dired buffer and
783answer @samp{y}. You don't have to do this, though: you can relist
784single subdirectories using @kbd{l} (@code{dired-do-redisplay}) on the subdirectory
785headerline, leaving the buffer in virtual Dired mode all the time.
786
787@findex dired-virtual-mode
788@vindex auto-mode-alist
789The function @samp{dired-virtual-mode} is specially designed to turn on
790virtual Dired mode from the @code{auto-mode-alist}. To edit all
791@file{*.dired} files automatically in virtual Dired mode, put this into your
792@file{~/.emacs}:
793
794@example
795(setq auto-mode-alist (cons '("[^/]\\.dired$" . dired-virtual-mode)
796 auto-mode-alist))
797@end example
798
36e10400
EZ
799@noindent
800The regexp is a bit more complicated than usual to exclude @file{.dired}
801local-variable files.
6bf7aab6 802
39cf43ac 803@node Advanced Mark Commands, Multiple Dired Directories, Virtual Dired, Top
6bf7aab6
DL
804@comment node-name, next, previous, up
805@chapter Advanced Mark Commands
806
807@table @kbd
808@item F
809@kindex F
810@cindex Visiting several files at once
811@cindex Simultaneous visiting of several files
812@findex dired-do-find-marked-files
813(@code{dired-do-find-marked-files}) Find all marked files at once displaying
36e10400
EZ
814them simultaneously. If optional @var{noselect} is non-@code{nil} then just
815find the
816files but do not select. If you want to keep the Dired buffer displayed, type
6bf7aab6
DL
817@kbd{C-x 2} first. If you want just the marked files displayed and nothing
818else, type @kbd{C-x 1} first.
819
820The current window is split across all files marked, as evenly as possible.
821Remaining lines go to the bottom-most window. The number of files that can be
822displayed this way is restricted by the height of the current window and the
823variable @code{window-min-height}.
824@end table
825
826@table @code
827@item dired-mark-extension
828@findex dired-mark-extension
829Mark all files with a certain extension for use in later commands. A @samp{.}
36e10400
EZ
830is not automatically prepended to the string entered, you must type it
831explicitly.
6bf7aab6 832
36e10400 833When called from Lisp, @var{extension} may also be a list of extensions
6bf7aab6
DL
834and an optional argument @var{marker-char} specifies the marker used.
835
836@item dired-flag-extension
837@findex dired-flag-extension
838Flag all files with a certain extension for deletion. A @samp{.} is
839@emph{not} automatically prepended to the string entered.
840@end table
841
4ed985b1 842@ifnottex
6bf7aab6
DL
843@menu
844* Advanced Cleaning Functions::
845* Advanced Cleaning Variables::
846* Special Marking Function::
847@end menu
4ed985b1 848@end ifnottex
6bf7aab6 849
39cf43ac 850@node Advanced Cleaning Functions, Advanced Cleaning Variables, , Advanced Mark Commands
6bf7aab6
DL
851@comment node-name, next, previous, up
852
853@section Advanced Cleaning Functions
854
855@table @code
856@item dired-clean-patch
857@findex dired-clean-patch
858Flag dispensable files created by the @samp{patch} program for deletion. See
859variable @code{dired-patch-unclean-extensions}.
860
861@item dired-clean-tex
862@findex dired-clean-tex
863Flag dispensable files created by @TeX{}, La@TeX{}, and @samp{texinfo} for
4563d12e 864deletion. See the following variables (@pxref{Advanced Cleaning Variables}):
6bf7aab6
DL
865
866@itemize @bullet
867@item
868@code{dired-tex-unclean-extensions}
869@item
870@code{dired-texinfo-unclean-extensions}
871@item
872@code{dired-latex-unclean-extensions}
873@item
874@code{dired-bibtex-unclean-extensions}
875@end itemize
876
877@item dired-very-clean-tex
878@findex dired-very-clean-tex
36e10400
EZ
879Flag dispensable files created by @TeX{}, La@TeX{}, @samp{texinfo},
880and @file{*.dvi} files for deletion.
6bf7aab6
DL
881@end table
882
883@node Advanced Cleaning Variables, Special Marking Function, Advanced Cleaning Functions, Advanced Mark Commands
884@comment node-name, next, previous, up
885
886@section Advanced Cleaning Variables
887
888@noindent Variables used by the above cleaning commands (and in the default value for
4563d12e 889variable @code{dired-omit-extensions}, @pxref{Omitting Variables})
6bf7aab6
DL
890
891@table @code
892@item dired-patch-unclean-extensions
893@vindex dired-patch-unclean-extensions
36e10400 894Default: @code{(".rej" ".orig")}
6bf7aab6
DL
895
896List of extensions of dispensable files created by the @samp{patch} program.
897
898@item dired-tex-unclean-extensions
899@vindex dired-tex-unclean-extensions
36e10400 900Default: @code{(".toc" ".log" ".aux")}
6bf7aab6
DL
901
902List of extensions of dispensable files created by @TeX{}.
903
904@item dired-texinfo-unclean-extensions
905@vindex dired-texinfo-unclean-extensions
36e10400 906Default: @code{(".cp" ".cps" ".fn" ".fns" ".ky" ".kys"}
6bf7aab6
DL
907@code{".pg" ".pgs" ".tp" ".tps" ".vr" ".vrs")}
908
909List of extensions of dispensable files created by @samp{texinfo}.
910
911@item dired-latex-unclean-extensions
912@vindex dired-latex-unclean-extensions
36e10400 913Default: @code{(".idx" ".lof" ".lot" ".glo")}
6bf7aab6
DL
914
915List of extensions of dispensable files created by La@TeX{}.
916
917@item dired-bibtex-unclean-extensions
918@vindex dired-bibtex-unclean-extensions
36e10400 919Default: @code{(".blg" ".bbl")}
6bf7aab6
DL
920
921List of extensions of dispensable files created by Bib@TeX{}.
922@end table
923
39cf43ac 924@node Special Marking Function, , Advanced Cleaning Variables, Advanced Mark Commands
6bf7aab6
DL
925@comment node-name, next, previous, up
926
927@section Special Marking Function
928
929@table @kbd
930@item M-(
931@kindex M-(
932@findex dired-mark-sexp
933@cindex Lisp expression, marking files with in Dired
e23390fa 934@cindex Mark file by Lisp expression
6bf7aab6
DL
935(@code{dired-mark-sexp}) Mark files for which @var{predicate} returns
936non-@code{nil}. With a prefix argument, unflag those files instead.
937
e23390fa 938The @var{predicate} is a Lisp expression that can refer to the following
6bf7aab6
DL
939symbols:
940@table @code
941@item inode
942[@i{integer}] the inode of the file (only for @samp{ls -i} output)
943@item s
944[@i{integer}] the size of the file for @samp{ls -s} output (usually in blocks or,
945with @samp{-k}, in KBytes)
946@item mode
36e10400 947[@i{string}] file permission bits, e.g., @samp{-rw-r--r--}
6bf7aab6
DL
948@item nlink
949[@i{integer}] number of links to file
950@item uid
951[@i{string}] owner
952@item gid
953[@i{string}] group (If the gid is not displayed by @samp{ls}, this
954will still be set (to the same as uid))
955@item size
956[@i{integer}] file size in bytes
957@item time
36e10400 958[@i{string}] the time that @samp{ls} displays, e.g., @samp{Feb 12 14:17}
6bf7aab6
DL
959@item name
960[@i{string}] the name of the file
961@item sym
36e10400 962[@i{string}] if file is a symbolic link, the linked-to name, else @code{""}
6bf7aab6
DL
963@end table
964
965@noindent
966For example, use
967@example
968(equal 0 size)
969@end example
970to mark all zero length files.
971
e23390fa 972To find out all not yet compiled Emacs Lisp files in a directory, Dired
6bf7aab6
DL
973all @file{.el} files in the lisp directory using the wildcard
974@samp{*.el}. Then use @kbd{M-(} with
975@example
976(not (file-exists-p (concat name "c")))
977@end example
978to mark all @file{.el} files without a corresponding @file{.elc} file.
979
980@end table
981
39cf43ac 982@node Multiple Dired Directories, Find File At Point, Advanced Mark Commands, Top
6bf7aab6
DL
983@comment node-name, next, previous, up
984@chapter Multiple Dired Directories and Non-Dired Commands
985
986@cindex Multiple Dired directories
987@cindex Working directory
988An Emacs buffer can have but one working directory, stored in the
989buffer-local variable @code{default-directory}. A Dired buffer may have
36e10400
EZ
990several subdirectories inserted, but it still has only one working
991directory: that of the top-level Dired directory in that buffer. For
6bf7aab6
DL
992some commands it is appropriate that they use the current Dired
993directory instead of @code{default-directory}, e.g., @code{find-file} and
994@code{compile}.
995
996A general mechanism is provided for special handling of the working
997directory in special major modes:
998
999@table @code
1000@item default-directory-alist
1001@vindex default-directory-alist
1002Default: @code{((dired-mode . (dired-current-directory)))}
1003
36e10400 1004Alist of major modes and their notion of @code{default-directory}, as a
e23390fa 1005Lisp expression to evaluate. A resulting value of @code{nil} is ignored
6bf7aab6
DL
1006in favor of @code{default-directory}.
1007
fdd3702a
EZ
1008@item dired-default-directory
1009@findex dired-default-directory
1010Use this function like you would use the variable
1011@code{default-directory}, except that @code{dired-default-directory}
1012also consults the variable @code{default-directory-alist}.
6bf7aab6
DL
1013@end table
1014
1015@node Find File At Point, Miscellaneous Commands, Multiple Dired Directories, Top
1016@comment node-name, next, previous, up
1017
1018@section Find File At Point
1019@cindex Visiting a file mentioned in a buffer
1020@cindex Finding a file at point
1021
1022@file{dired-x} provides a method of visiting or editing a file mentioned in
36e10400
EZ
1023the buffer you are viewing (e.g., a mail buffer, a news article, a
1024@file{README} file, etc.) or to test if that file exists. You can then modify
1025this in the minibuffer after snatching the file name.
6bf7aab6
DL
1026
1027When installed @file{dired-x} will substitute @code{dired-x-find-file} for
1028@code{find-file} (normally bound to @kbd{C-x C-f}) and
1029@code{dired-x-find-file-other-window} for @code{find-file-other-window}
1030(normally bound to @kbd{C-x 4 C-f}).
1031
1032In order to use this feature, you will need to set
1033@code{dired-x-hands-off-my-keys} to @code{nil} inside @code{dired-load-hook}
4563d12e 1034(@pxref{Optional Installation File At Point}).
6bf7aab6
DL
1035
1036@table @code
1037@item dired-x-find-file
1038@findex dired-x-find-file
1039@kindex C-x C-f
1040
1041@code{dired-x-find-file} behaves exactly like @code{find-file} (normally bound
1042to @kbd{C-x C-f}) unless a prefix argument is passed to the function in which
36e10400 1043case it will use the file name at point as a guess for the file to visit.
6bf7aab6
DL
1044
1045For example, if the buffer you were reading contained the words
1046
1047@example
1048Available via anonymous ftp in
1049
1050 /roebling.poly.edu:/pub/lisp/crypt++.el.gz
1051@end example
1052
36e10400 1053@noindent
6bf7aab6
DL
1054then you could move your cursor to the line containing the ftp address and
1055type @kbd{C-u C-x C-f} (the @kbd{C-u} is a universal argument). The
1056minibuffer would read
1057
1058@example
1059Find file: /roebling.poly.edu:/pub/lisp/crypt++.el.gz
1060@end example
1061
36e10400
EZ
1062@noindent
1063with the point after the last @code{/}. If you hit @key{RET}, emacs will visit
6bf7aab6
DL
1064the file at that address. This also works with files on your own computer.
1065
1066@item dired-x-find-file-other-window
1067@findex dired-x-find-file-other-window
1068@kindex C-x 4 C-f
1069
1070@code{dired-x-find-file-other-window} behaves exactly like
1071@code{find-file-other-window} (normally bound to @kbd{C-x 4 C-f}) unless a
1072prefix argument is used. See @code{dired-x-find-file} for more information.
1073
1074@item dired-x-hands-off-my-keys
1075@vindex dired-x-hands-off-my-keys
1076If set to @code{t}, then it means that @file{dired-x} should @emph{not} bind
1077@code{dired-x-find-file} over @code{find-file} on keyboard. Similarly, it
1078should not bind @code{dired-x-find-file-other-window} over
1079@code{find-file-other-window}. If you change this variable after
1080@file{dired-x.el} is loaded then do @kbd{M-x dired-x-bind-find-file}. The
36e10400 1081default value of this variable is @code{t}; by default, the binding is not
6bf7aab6
DL
1082done. See @xref{Optional Installation File At Point}.
1083
1084@item dired-x-bind-find-file
1085@findex dired-x-bind-find-file
1086A function, which can be called interactively or in your @file{~/.emacs} file,
1087that uses the value of @code{dired-x-hands-off-my-keys} to determine if
1088@code{dired-x-find-file} should be bound over @code{find-file} and
1089@code{dired-x-find-file-other-window} bound over
1090@code{find-file-other-window}. See @xref{Optional Installation File At Point}.
1091@end table
1092
1093@node Miscellaneous Commands, Bugs, Find File At Point, Top
1094@comment node-name, next, previous, up
1095@chapter Miscellaneous Commands
1096
1097Miscellaneous features not fitting anywhere else:
1098
1099@table @code
1100@item dired-find-subdir
1101@vindex dired-find-subdir
1102Default: @code{nil}
1103
1104If non-@code{nil}, Dired does not make a new buffer for a directory if it can
1105be found (perhaps as subdirectory) in some existing Dired buffer.
1106
1107If there are several Dired buffers for a directory, the most recently
1108used is chosen.
1109
1110Dired avoids switching to the current buffer, so that if you have a
1111normal and a wildcard buffer for the same directory, @kbd{C-x d RET}
1112will toggle between those two.
1113@end table
1114
1115@table @kbd
6bf7aab6
DL
1116@findex dired-goto-subdir
1117@kindex M-G
1118@item M-G
36e10400
EZ
1119(@code{dired-goto-subdir}) Go to the header line of an inserted directory.
1120This command reads its argument, with completion derived from the names of the
6bf7aab6
DL
1121inserted subdirectories.
1122@end table
1123
6bf7aab6
DL
1124@table @code
1125@item dired-smart-shell-command
1126@findex dired-smart-shell-command
1127@findex shell-command
1128@kindex M-!
1129Like function @code{shell-command}, but in the current Dired directory.
1130Bound to @kbd{M-!} in Dired buffers.
1131
1132@item dired-jump
1133@findex dired-jump
1134@kindex C-x C-j
36e10400
EZ
1135@cindex Jumping to Dired listing containing file.
1136Bound to @kbd{C-x C-j}. Jump back to Dired: If in a file, edit the current
6bf7aab6 1137directory and move to file's line. If in Dired already, pop up a level and
36e10400 1138go to old directory's line. In case the proper Dired file line cannot be
6bf7aab6
DL
1139found, refresh the Dired buffer and try again.
1140
1141@item dired-jump-other-window
1142@findex dired-jump-other-window
1143@kindex C-x 4 C-j
1144Bound to @kbd{C-x 4 C-j}. Like @code{dired-jump}, but to other window.
1145
1146These functions can be autoloaded so they work even though @file{dired-x.el}
4563d12e 1147has not been loaded yet (@pxref{Optional Installation Dired Jump}).
6bf7aab6
DL
1148
1149@vindex dired-bind-jump
1150If the variable @code{dired-bind-jump} is @code{nil}, @code{dired-jump} will not be
1151bound to @kbd{C-x C-j} and @code{dired-jump-other-window} will not be bound to
1152@kbd{C-x 4 C-j}.
1153
1154@item dired-vm
1155@cindex Reading mail.
1156@kindex V
1157@findex dired-vm
56d495a3
JB
1158Bound to @kbd{V} if @code{dired-bind-vm} is @code{t}. Run VM on this
1159file (assumed to be a UNIX mail folder).
6bf7aab6
DL
1160
1161@vindex dired-vm-read-only-folders
1162If you give this command a prefix argument, it will visit the folder
36e10400 1163read-only. This only works in VM 5, not VM 4.
6bf7aab6 1164
36e10400
EZ
1165If the variable @code{dired-vm-read-only-folders} is @code{t},
1166@code{dired-vm} will
6bf7aab6 1167visit all folders read-only. If it is neither @code{nil} nor @code{t}, e.g.,
36e10400 1168the symbol @code{if-file-read-only}, only files not writable by you are
6bf7aab6
DL
1169visited read-only. This is the recommended value if you run VM 5.
1170
1171@vindex dired-bind-vm
56d495a3
JB
1172If the variable @code{dired-bind-vm} is @code{t}, @code{dired-vm} will be bound
1173to @kbd{V}. Otherwise, @code{dired-bind-rmail} will be bound.
6bf7aab6
DL
1174
1175@item dired-rmail
1176@cindex Reading mail.
1177@findex dired-rmail
1178Bound to @kbd{V} if @code{dired-bind-vm} is @code{nil}. Run Rmail on this
1179file (assumed to be mail folder in Rmail/BABYL format).
1180
1181@item dired-info
1182@kindex I
1183@cindex Running info.
1184@findex dired-info
1185Bound to @kbd{I}. Run Info on this file (assumed to be a file in Info
1186format).
1187
1188@vindex dired-bind-info
1189If the variable @code{dired-bind-info} is @code{nil}, @code{dired-info} will
36e10400 1190not be bound to @kbd{I}.
6bf7aab6
DL
1191
1192@item dired-man
1193@cindex Running man.
1194@kindex N
1195@findex dired-man
36e10400 1196Bound to @kbd{N}. Run man on this file (assumed to be a file in @code{nroff}
6bf7aab6
DL
1197format).
1198
1199@vindex dired-bind-man
1200If the variable @code{dired-bind-man} is @code{nil}, @code{dired-man} will not
36e10400 1201be bound to @kbd{N}.
6bf7aab6 1202
e536613e 1203@item dired-do-relsymlink
6bf7aab6
DL
1204@cindex Relative symbolic links.
1205@kindex Y
e536613e 1206@findex dired-do-relsymlink
6bf7aab6
DL
1207Bound to @kbd{Y}. Relative symlink all marked (or next ARG) files into a
1208directory, or make a relative symbolic link to the current file. This creates
1209relative symbolic links like
1210
36e10400 1211@example
6bf7aab6 1212 foo -> ../bar/foo
36e10400 1213@end example
6bf7aab6 1214
36e10400 1215@noindent
6bf7aab6
DL
1216not absolute ones like
1217
36e10400 1218@example
6bf7aab6 1219 foo -> /ugly/path/that/may/change/any/day/bar/foo
36e10400 1220@end example
6bf7aab6 1221
e536613e 1222@item dired-do-relsymlink-regexp
6bf7aab6 1223@kindex %Y
e536613e 1224@findex dired-do-relsymlink-regexp
36e10400
EZ
1225Bound to @kbd{%Y}. Relative symlink all marked files containing
1226@var{regexp} to @var{newname}. See functions
1227@code{dired-do-rename-regexp} and @code{dired-do-relsymlink} for more
1228info.
6bf7aab6
DL
1229@end table
1230
1231@node Bugs, Concept Index, Miscellaneous Commands, Top
1232@comment node-name, next, previous, up
1233@chapter Bugs
1234@cindex Bugs
1235@findex dired-x-submit-report
1236
1237@noindent
1238If you encounter a bug in this package, wish to suggest an
1239enhancement, or want to make a smart remark, then type
1240
1241@example
177c0ea7 1242@kbd{M-x dired-x-submit-report}
6bf7aab6
DL
1243@end example
1244
1245@noindent
1246to set up an outgoing mail buffer, with the proper address to the
1247@file{dired-x.el} maintainer automatically inserted in the @samp{To:@:} field.
1248This command also inserts information that the Dired X maintainer can use to
1249recreate your exact setup, making it easier to verify your bug or social
1250maladjustment.
1251
177c0ea7 1252Lawrence R. Dodd
25489206 1253@c <dodd@@roebling.poly.edu>
6bf7aab6
DL
1254
1255@node Concept Index, Command Index, Bugs, Top
1256@comment node-name, next, previous, up
1257@unnumbered Concept Index
1258@printindex cp
1259
1260@node Command Index, Key Index, Concept Index, Top
1261@comment node-name, next, previous, up
1262@unnumbered Function Index
1263@printindex fn
1264
1265@node Key Index, Variable Index, Command Index, Top
1266@comment node-name, next, previous, up
1267@unnumbered Key Index
1268@printindex ky
1269
25489206 1270@node Variable Index, , Key Index, Top
6bf7aab6
DL
1271@comment node-name, next, previous, up
1272@unnumbered Variable Index
1273@printindex vr
1274
56f7c94a 1275@setchapternewpage odd
6bf7aab6
DL
1276@c @summarycontents
1277@contents
1278
1279@bye
1280@c dired-x.texi ends here.
ab5796a9
MB
1281
1282@ignore
1283 arch-tag: 201727aa-9318-4c74-a0d7-4f51c550c4de
1284@end ignore