Mercurial > emacs
changeset 69741:e432c2c01722
Many cleanups.
(Dired Deletion): Describe dired-recursive-deletes.
(Operating on Files): dired-create-directory moved.
(Misc Dired Features): Moved to here.
(Tumme): Node moved to misc.texi.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 31 Mar 2006 17:35:51 +0000 |
parents | 0c5f9763aa55 |
children | 574797e48b33 |
files | man/dired.texi |
diffstat | 1 files changed, 174 insertions(+), 236 deletions(-) [+] |
line wrap: on
line diff
--- a/man/dired.texi Fri Mar 31 17:12:53 2006 +0000 +++ b/man/dired.texi Fri Mar 31 17:35:51 2006 +0000 @@ -13,11 +13,12 @@ to operate on the files listed. The Dired buffer is ``read-only,'' and inserting text in it is not -useful, so ordinary printing characters such as @kbd{d} and @kbd{x} are -used for special Dired commands. Some Dired commands @dfn{mark} or -@dfn{flag} the @dfn{current file} (that is, the file on the current -line); other commands operate on the marked files or on the flagged -files. +useful, so ordinary printing characters such as @kbd{d} and @kbd{x} +are redefined for special Dired commands. Some Dired commands +@dfn{mark} or @dfn{flag} the @dfn{current file} (that is, the file on +the current line); other commands operate on the marked files or on +the flagged files. You first mark certain files in order to operate +on all of them with on command. The Dired-X package provides various extra features for Dired mode. @xref{Top, Dired-X,,dired-x, Dired Extra Version 2 User's Manual}. @@ -40,8 +41,6 @@ * Updating: Dired Updating. Discarding lines for files of no interest. * Find: Dired and Find. Using `find' to choose the files for Dired. * Wdired:: Operating on files by editing the Dired buffer. -* Tumme:: Image file and thumbnail viewing and - manipulation from the Dired buffer. * Misc: Misc Dired Features. Various other features. @end menu @@ -53,18 +52,20 @@ @vindex dired-listing-switches To invoke Dired, do @kbd{C-x d} or @kbd{M-x dired}. The command reads a directory name or wildcard file name pattern as a minibuffer -argument to specify which files to list. @kbd{C-x C-f} given a +argument to specify the files to list. @kbd{C-x C-f} given a directory name also invokes Dired. Where @code{dired} differs from @code{list-directory} is that it puts the buffer into Dired mode, so that the special commands of Dired are available. The variable @code{dired-listing-switches} specifies the options to -give to @code{ls} for listing the directory; this string @emph{must} contain -@samp{-l}. If you use a numeric prefix argument with the @code{dired} -command, you can specify the @code{ls} switches with the minibuffer -before you enter the directory specification. No matter how they are -specified, the @code{ls} switches should all be short options (that -is, single characters) requiring no arguments. +give to @code{ls} for listing the directory; this string @emph{must} +contain @samp{-l}. If you use a numeric prefix argument with the +@code{dired} command, you can specify the @code{ls} switches with the +minibuffer before you enter the directory specification. No matter +how they are specified, the @code{ls} switches can include short +options (that is, single characters) requiring no arguments, and long +options (starting with @samp{--}) whose arguments are specified with +@samp{=}. @findex dired-other-window @kindex C-x 4 d @@ -81,10 +82,9 @@ @kindex C-n @r{(Dired)} @kindex C-p @r{(Dired)} All the usual Emacs cursor motion commands are available in Dired -buffers. Some special-purpose cursor motion commands are also -provided. The keys @kbd{C-n} and @kbd{C-p} are redefined to put the -cursor at the beginning of the file name on the line, rather than at the -beginning of the line. +buffers. The keys @kbd{C-n} and @kbd{C-p} are redefined to put the +cursor at the beginning of the file name on the line, rather than at +the beginning of the line. @kindex SPC @r{(Dired)} For extra convenience, @key{SPC} and @kbd{n} in Dired are equivalent @@ -121,42 +121,47 @@ @kindex d @r{(Dired)} @findex dired-flag-file-deletion - You can flag a file for deletion by moving to the line describing the -file and typing @kbd{d} (@code{dired-flag-file-deletion}). The deletion flag is visible as a @samp{D} at -the beginning of the line. This command moves point to the next line, -so that repeated @kbd{d} commands flag successive files. A numeric -argument serves as a repeat count. - -@cindex recursive deletion -@vindex dired-recursive-deletes - The variable @code{dired-recursive-deletes} controls whether the -delete command will delete non-empty directories (including their -contents). The default is to delete only empty directories. + You can flag a file for deletion by moving to the line describing +the file and typing @kbd{d} (@code{dired-flag-file-deletion}). The +deletion flag is visible as a @samp{D} at the beginning of the line. +This command moves point to the next line, so that repeated @kbd{d} +commands flag successive files. A numeric argument serves as a repeat +count. @kindex u @r{(Dired deletion)} @kindex DEL @r{(Dired)} - The files are flagged for deletion rather than deleted immediately to -reduce the danger of deleting a file accidentally. Until you direct -Dired to delete the flagged files, you can remove deletion flags using -the commands @kbd{u} and @key{DEL}. @kbd{u} (@code{dired-unmark}) works -just like @kbd{d}, but removes flags rather than making flags. -@key{DEL} (@code{dired-unmark-backward}) moves upward, removing flags; -it is like @kbd{u} with argument @minus{}1. + The reason for flagging files for deletion, rather than deleting +files immediately, is to reduce the danger of deleting a file +accidentally. Until you direct Dired to delete the flagged files, you +can remove deletion flags using the commands @kbd{u} and @key{DEL}. +@kbd{u} (@code{dired-unmark}) works just like @kbd{d}, but removes +flags rather than making flags. @key{DEL} +(@code{dired-unmark-backward}) moves upward, removing flags; it is +like @kbd{u} with argument @minus{}1. @kindex x @r{(Dired)} @findex dired-do-flagged-delete @cindex expunging (Dired) - To delete the flagged files, type @kbd{x} (@code{dired-do-flagged-delete}). -(This is also known as @dfn{expunging}.) -This command first displays a list of all the file names flagged for -deletion, and requests confirmation with @kbd{yes}. If you confirm, -Dired deletes the flagged files, then deletes their lines from the text -of the Dired buffer. The shortened Dired buffer remains selected. + To delete the flagged files, type @kbd{x} +(@code{dired-do-flagged-delete}). (This is also known as +@dfn{expunging}.) This command first displays a list of all the file +names flagged for deletion, and requests confirmation with @kbd{yes}. +If you confirm, Dired deletes the flagged files, then deletes their +lines from the text of the Dired buffer. The Dired buffer, with +somewhat fewer lines, remains selected. If you answer @kbd{no} or quit with @kbd{C-g} when asked to confirm, you return immediately to Dired, with the deletion flags still present in the buffer, and no files actually deleted. +@cindex recursive deletion +@vindex dired-recursive-deletes + You can delete empty directories just like other files, but normally +Dired cannot delete directories that are nonempty. If the variable +@code{dired-recursive-deletes} is non-@code{nil}, then Dired can +delete nonempty directories including all their contents. That can +be somewhat risky. + @node Flagging Many Files @section Flagging Many Files at Once @cindex flagging many files for deletion (in Dired) @@ -171,8 +176,8 @@ (@pxref{Backup}). @item & -Flag for deletion all files with certain kinds of names, names that -suggest you could easily create the files again. +Flag for deletion all files with certain kinds of names which suggest +you could easily create those files again. @item .@: @r{(Period)} Flag excess numeric backup files for deletion. The oldest and newest @@ -204,14 +209,14 @@ @findex dired-flag-auto-save-files @cindex deleting auto-save files @kbd{#} (@code{dired-flag-auto-save-files}) flags for deletion all -files whose names look like auto-save files (@pxref{Auto Save})---that -is, files whose names begin and end with @samp{#}. +files whose names look like auto-save files---that is, files whose +names begin and end with @samp{#}. @xref{Auto Save}. @kindex ~ @r{(Dired)} @findex dired-flag-backup-files - @kbd{~} (@code{dired-flag-backup-files}) flags for deletion all files -whose names say they are backup files (@pxref{Backup})---that is, files -whose names end in @samp{~}. + @kbd{~} (@code{dired-flag-backup-files}) flags for deletion all +files whose names say they are backup files---that is, files whose +names end in @samp{~}. @xref{Backup}. @kindex . @r{(Dired)} @vindex dired-kept-versions @@ -235,8 +240,9 @@ The @kbd{% d} command flags all files whose names match a specified regular expression (@code{dired-flag-files-regexp}). Only the non-directory part of the file name is used in matching. You can use -@samp{^} and @samp{$} to anchor matches. You can exclude subdirectories -by hiding them (@pxref{Hiding Subdirectories}). +@samp{^} and @samp{$} to anchor matches. You can exclude certain +subdirectories from marking by hiding them while you use @kbd{% d}. +@xref{Hiding Subdirectories}. @node Dired Visiting @section Visiting Files in Dired @@ -301,8 +307,8 @@ @kindex ^ @r{(Dired)} @findex dired-up-directory Visit the parent directory of the current directory -(@code{dired-up-directory}). This is more convenient than moving to -the parent directory's line and typing @kbd{f} there. +(@code{dired-up-directory}). This is equivalent to moving to the line +for @file{..} and typing @kbd{f} there. @end table @node Marks vs Flags @@ -311,12 +317,13 @@ @cindex marking many files (in Dired) Instead of flagging a file with @samp{D}, you can @dfn{mark} the file with some other character (usually @samp{*}). Most Dired -commands to operate on files use the files marked with @samp{*}, the -exception being @kbd{x} which deletes the flagged files. +commands to operate on files use the files marked with @samp{*}. The +only command that operates on flagged flies is @kbd{x}, which expunges +them. - Here are some commands for marking with @samp{*}, or for unmarking or -operating on marks. (@xref{Dired Deletion}, for commands to flag and -unflag files.) + Here are some commands for marking with @samp{*}, for unmarking, and +for operating on marks. (@xref{Dired Deletion}, for commands to flag +and unflag files.) @table @kbd @item m @@ -348,7 +355,7 @@ @kindex * / @r{(Dired)} @findex dired-mark-directories @cindex marking subdirectories (in Dired) -Mark with @samp{*} all files which are actually directories, except for +Mark with @samp{*} all files which are directories, except for @file{.} and @file{..} (@code{dired-mark-directories}). With a numeric argument, unmark all those files. @@ -455,11 +462,12 @@ Mark (with @samp{*}) all files whose names match the regular expression @var{regexp} (@code{dired-mark-files-regexp}). This command is like @kbd{% d}, except that it marks files with @samp{*} instead of flagging -with @samp{D}. @xref{Flagging Many Files}. +with @samp{D}. Only the non-directory part of the file name is used in matching. Use -@samp{^} and @samp{$} to anchor matches. Exclude subdirectories by -hiding them (@pxref{Hiding Subdirectories}). +@samp{^} and @samp{$} to anchor matches. You can exclude +subdirectories by temporarily hiding them (@pxref{Hiding +Subdirectories}). @item % g @var{regexp} @key{RET} @findex dired-mark-files-containing-regexp @@ -471,16 +479,21 @@ @kbd{% m}, except that it searches the file contents instead of the file name. -@item C-_ +@item C-x u +@itemx C-_ +@itemx C-/ @kindex C-_ @r{(Dired)} @findex dired-undo Undo changes in the Dired buffer, such as adding or removing marks (@code{dired-undo}). @emph{This command does not revert the actual file operations, nor recover lost files!} It just undoes -changes in the buffer itself. For example, if used after renaming one -or more files, @code{dired-undo} restores the original names, which -will get the Dired buffer out of sync with the actual contents of the -directory. +changes in the buffer itself. + +In some cases, using this after commands that operate on files can +cause trouble. For example, after renaming one or more files, +@code{dired-undo} restores the original names in the Dired buffer, +which gets the Dired buffer out of sync with the actual contents of +the directory. @end table @node Operating on Files @@ -490,8 +503,8 @@ This section describes the basic Dired commands to operate on one file or several files. All of these commands are capital letters; all of them use the minibuffer, either to read an argument or to ask for -confirmation, before they act. All of them give you several ways to -specify which files to manipulate: +confirmation, before they act. All of them let you specify the +files to manipulate in these ways: @itemize @bullet @item @@ -508,6 +521,10 @@ Otherwise, the command operates on the current file only. @end itemize +@noindent +Certain other Dired commands, such as @kbd{!} and the @samp{%} +commands, use the same conventions to decide which files to work on. + @vindex dired-dwim-target @cindex two directories (in Dired) Commands which ask for a destination directory, such as those which @@ -517,9 +534,7 @@ is non-@code{nil}, and if there is another Dired buffer displayed in the next window, that other buffer's directory is suggested instead. - Here are the file-manipulating commands that operate on files in this -way. (Some other Dired commands, such as @kbd{!} and the @samp{%} -commands, also use these conventions to decide which files to work on.) + Here are the file-manipulating Dired commands that operate on files. @table @kbd @findex dired-do-copy @@ -531,15 +546,15 @@ name. @vindex dired-copy-preserve-time -If @code{dired-copy-preserve-time} is non-@code{nil}, then copying with -this command sets the modification time of the new file to be the same -as that of the old file. +If @code{dired-copy-preserve-time} is non-@code{nil}, then copying +with this command preserves the modification time of the old file in +the copy. @vindex dired-recursive-copies @cindex recursive copying -The variable @code{dired-recursive-copies} controls whether -directories are copied recursively. The default is to not copy -recursively, which means that directories cannot be copied. +The variable @code{dired-recursive-copies} controls whether to copy +directories recursively. The default is @code{nil}, which means that +directories cannot be copied. @item D @findex dired-do-delete @@ -608,7 +623,8 @@ @kindex T @r{(Dired)} @cindex changing file time (in Dired) @item T @var{timestamp} @key{RET} -Change the time of the specified files (@code{dired-do-touch}). +Touch the specified files (@code{dired-do-touch}). This means +updating their modification times to the present time. @findex dired-do-print @kindex P @r{(Dired)} @@ -625,7 +641,7 @@ @cindex compressing files (in Dired) @item Z Compress the specified files (@code{dired-do-compress}). If the file -appears to be a compressed file already, it is uncompressed instead. +appears to be a compressed file already, uncompress it instead. @findex dired-do-load @kindex L @r{(Dired)} @@ -666,12 +682,6 @@ more matches. @xref{Tags Search}. @end table -@kindex + @r{(Dired)} -@findex dired-create-directory - One special file-operation command is @kbd{+} -(@code{dired-create-directory}). This command reads a directory name and -creates the directory if it does not already exist. - @node Shell Commands in Dired @section Shell Commands in Dired @cindex shell commands, Dired @@ -679,12 +689,16 @@ @findex dired-do-shell-command @kindex ! @r{(Dired)} @kindex X @r{(Dired)} -The Dired command @kbd{!} (@code{dired-do-shell-command}) reads a shell -command string in the minibuffer and runs that shell command on all the -specified files. @kbd{X} is a synonym for @kbd{!}. You can specify the -files to operate on in the usual ways for Dired commands -(@pxref{Operating on Files}). There are two ways of applying a shell -command to multiple files: +The Dired command @kbd{!} (@code{dired-do-shell-command}) reads a +shell command string in the minibuffer and runs that shell command on +all the specified files. (@kbd{X} is a synonym for @kbd{!}.) You can +specify the files to operate on in the usual ways for Dired commands +(@pxref{Operating on Files}). + + The working directory for the shell command is the top-level directory +of the Dired buffer. + + There are two ways of applying a shell command to multiple files: @itemize @bullet @item @@ -711,12 +725,12 @@ @item However, if the command string contains @samp{?} surrounded by -whitespace, the current file name is substituted for @samp{?} (rather +whitespace, the current file name is substituted for @samp{?} (rather than added at the end). You can use @samp{?} this way more than once in the command, and the same file name replaces each occurrence. @end itemize -To iterate over the file names in a more complicated fashion, use an + To iterate over the file names in a more complicated fashion, use an explicit shell loop. For example, here is how to uuencode each file, making the output file name by appending @samp{.uu} to the input file name: @@ -725,11 +739,8 @@ for file in * ; do uuencode "$file" "$file" >"$file".uu; done @end example -The working directory for the shell command is the top-level directory -of the Dired buffer. - -The @kbd{!} command does not attempt to update the Dired buffer to show -new or modified files, because it doesn't really understand shell + The @kbd{!} command does not attempt to update the Dired buffer to +show new or modified files, because it doesn't understand shell commands, and does not know what files the shell command changed. Use the @kbd{g} command to update the Dired buffer (@pxref{Dired Updating}). @@ -738,7 +749,8 @@ @section Transforming File Names in Dired This section describes Dired commands which alter file names in a -systematic way. +systematic way. Each command operates on some or all of the marked +files, using a new name made by transforming the existing name. Like the basic Dired file-manipulation commands (@pxref{Operating on Files}), the commands described here operate either on the next @@ -750,7 +762,7 @@ @emph{interactively}: they ask you to confirm the operation for each candidate file. Thus, you can select more files than you actually need to operate on (e.g., with a regexp that matches many files), and -then refine the selection by typing @kbd{y} or @kbd{n} when the +then filter the selected names by typing @kbd{y} or @kbd{n} when the command prompts for confirmation. @table @kbd @@ -787,17 +799,16 @@ from the name of the old file. @end table - The four regular-expression substitution commands effectively perform -a search-and-replace on the selected file names in the Dired buffer. -They read two arguments: a regular expression @var{from}, and a -substitution pattern @var{to}. - - The commands match each ``old'' file name against the regular -expression @var{from}, and then replace the matching part with @var{to}. -You can use @samp{\&} and @samp{\@var{digit}} in @var{to} to refer to -all or part of what the pattern matched in the old file name, as in -@code{replace-regexp} (@pxref{Regexp Replace}). If the regular expression -matches more than once in a file name, only the first match is replaced. + The four regular-expression substitution commands effectively +perform a search-and-replace on the selected file names. They read +two arguments: a regular expression @var{from}, and a substitution +pattern @var{to}; they match each ``old'' file name against +@var{from}, and then replace the matching part with @var{to}. You can +use @samp{\&} and @samp{\@var{digit}} in @var{to} to refer to all or +part of what the pattern matched in the old file name, as in +@code{replace-regexp} (@pxref{Regexp Replace}). If the regular +expression matches more than once in a file name, only the first match +is replaced. For example, @kbd{% R ^.*$ @key{RET} x-\& @key{RET}} renames each selected file by prepending @samp{x-} to its name. The inverse of this, @@ -809,15 +820,16 @@ Normally, the replacement process does not consider the files' directory names; it operates on the file name within the directory. If you specify a numeric argument of zero, then replacement affects the -entire absolute file name including directory name. (Non-zero +entire absolute file name including directory name. (A non-zero argument specifies the number of files to operate on.) - Often you will want to select the set of files to operate on using the -same @var{regexp} that you will use to operate on them. To do this, -mark those files with @kbd{% m @var{regexp} @key{RET}}, then use the -same regular expression in the command to operate on the files. To make -this easier, the @kbd{%} commands to operate on files use the last -regular expression specified in any @kbd{%} command as a default. + You may want to select the set of files to operate on using the same +regexp @var{from} that you will use to operate on them. To do this, +mark those files with @kbd{% m @var{from} @key{RET}}, then use the +same regular expression in the command to operate on the files. To +make this more convenient, the @kbd{%} commands to operate on files +use the last regular expression specified in any @kbd{%} command as a +default. @node Comparison in Dired @section File Comparison with Dired @@ -825,19 +837,20 @@ @cindex compare files (in Dired) Here are two Dired commands that compare specified files using -@code{diff}. +@code{diff}. They show the output in a buffer using Diff mode +(@pxref{Comparing Files}). @table @kbd @item = @findex dired-diff @kindex = @r{(Dired)} -Compare the current file (the file at point) with another file (the file -at the mark) using the @code{diff} program (@code{dired-diff}). The -file at the mark is the first argument of @code{diff}, and the file at -point is the second argument. Use @kbd{C-@key{SPC}} +Compare the current file (the file at point) with another file (the +file at the mark) using the @code{diff} program (@code{dired-diff}). +The file at the mark is the first argument of @code{diff}, and the +file at point is the second argument. This refers to the ordinary +Emacs mark, not Dired marks; use @kbd{C-@key{SPC}} (@code{set-mark-command}) to set the mark at the first file's line -(@pxref{Setting Mark}), since @code{dired-diff} ignores the files marked -with the Dired's @kbd{m} command. +(@pxref{Setting Mark}). @findex dired-backup-diff @kindex M-= @r{(Dired)} @@ -845,7 +858,7 @@ Compare the current file with its latest backup file (@code{dired-backup-diff}). If the current file is itself a backup, compare it with the file it is a backup of; this way, you can compare -a file with any backup version of your choice. +a file with any one of its backups. The backup file is the first file given to @code{diff}. @end table @@ -864,9 +877,8 @@ in the minibuffer.) That produces a recursive directory listing showing all subdirectories at all levels. - But usually all the subdirectories are too many; usually you will -prefer to include specific subdirectories only. You can do this with -the @kbd{i} command: + More often, you will want to show only specific subdirectories. You +can do this with the @kbd{i} command: @table @kbd @findex dired-maybe-insert-subdir @@ -950,7 +962,7 @@ @cindex hiding in Dired (Dired) @dfn{Hiding} a subdirectory means to make it invisible, except for its -header line, via selective display (@pxref{Selective Display}). +header line. @table @kbd @item $ @@ -974,7 +986,8 @@ subdirectory. For example, the commands to operate on marked files ignore files in hidden directories even if they are marked. Thus you can use hiding to temporarily exclude subdirectories from operations -without having to remove the markers. +without having to remove the Dired marks on files in those +subdirectories. @node Dired Updating @section Updating the Dired Buffer @@ -990,7 +1003,8 @@ Update the entire contents of the Dired buffer (@code{revert-buffer}). @item l -Update the specified files (@code{dired-do-redisplay}). +Update the specified files (@code{dired-do-redisplay}). You specify the +files for @kbd{l} in the same way as for file operations. @item k Delete the specified @emph{file lines}---not the files, just the lines @@ -1034,9 +1048,9 @@ If you use @kbd{k} with a numeric prefix argument to kill the line for a file that is a directory, which you have inserted in the Dired -buffer as a subdirectory, then this deletes that subdirectory from the -buffer as well. Typing @kbd{C-u k} on the header line for a subdirectory -is another way to delete a subdirectory from the Dired buffer. +buffer as a subdirectory, it deletes that subdirectory from the buffer +as well. Typing @kbd{C-u k} on the header line for a subdirectory +also deletes the subdirectory from the Dired buffer. The @kbd{g} command brings back any individual lines that you have killed in this way, but not subdirectories---you must use @kbd{i} to @@ -1068,7 +1082,7 @@ @var{pattern}, and chooses all the files in @var{directory} or its subdirectories whose individual names match @var{pattern}. - The files thus chosen are displayed in a Dired buffer in which the + The files thus chosen are displayed in a Dired buffer, in which the ordinary Dired commands are available. @findex find-grep-dired @@ -1101,10 +1115,10 @@ @cindex file database (locate) @vindex locate-command @kbd{M-x locate} provides a similar interface to the @code{locate} -program. @kbd{M-x locate-with-filter} is similar, but keeps only lines -matching a given regular expression. +program. @kbd{M-x locate-with-filter} is similar, but keeps only files +whose names match a given regular expression. - These buffers don't work entirely like ordinary Dired buffers. File + These buffers don't work entirely like ordinary Dired buffers: file operations work, but do not always automatically update the buffer. Reverting the buffer with @kbd{g} deletes all inserted subdirectories, and erases all flags and marks. @@ -1131,104 +1145,26 @@ Apart from simply renaming files, you can move a file to another directory by typing in the new file name (either absolute or relative). To mark a file for deletion, delete the entire filename. -To change the target of a symbolic link, just edit the target name -displayed next to the link name. +To change the target of a symbolic link, edit the link target name +which appears next to the link name. The rest of the text in the buffer, such as the file sizes and modification dates, is marked read-only, so you can't edit it. However, if you set @code{wdired-allow-to-change-permissions} to -@code{t}, the file permission bits can also be edited. For example, -you can change @samp{-rw-r--r--} to @samp{-rw-rw-rw-} to make a file +@code{t}, you can edit the file permissions. For example, you can +change @samp{-rw-r--r--} to @samp{-rw-rw-rw-} to make a file world-writable. These changes also take effect when you type @kbd{C-c C-c}. -@node Tumme -@section Thumbnail and image file viewing and manipulation - -@cindex tumme mode - - Tumme provides for simple viewing of thumbnails of image files. It -provides viewing of the original file, sized or in full size, inside -Emacs or in an external viewer. - - Tumme aims to be both easy to use for a beginner but also powerful -and useful to an experienced user. - - The quickest way to try out Tumme is to use the command -@code{tumme}. It will prompt for a directory where there are images -files. All images in that directory will get thumbnail files created -for them, and the thumbnails will be displayed in the ``thumbnail -buffer''. - - If the directory contains many image files and becayse thumbnails -are created on the fly before they can be displayed, the above command -might take a long time, especially the first time (consecutive -viewings will use the cached thumbnail files). Also, if the number of -image files is higher than @code{tumme-show-all-from-dir-max-files}, -the command will be aborted. To work around this you can instead mark -the files you want to look at, using @kbd{m} as usual in Dired, and -then type @kbd{C-t d} (@code{tumme-display-thumbs}). - - Regardless of which command you chose to display the thumbnails, a -new buffer will open up, displaying thumbnail images of the files that -were marked in dired. The new buffer will be the active one. - - With point in the thumbnail buffer, type @kbd{RET} -(@code{tumme-display-thumbnail-original-image}) to display a sized -version of it in another window. The image will be sized to fit the -window. Use the arrow keys to move around in the buffer. For easy -browing, type @kbd{SPC} (@code{tumme-display-next-thumbnail-original}) -to advance and display the next image. Typing @kbd{DEL} -(@code{tumme-display-previous-thumbnail-original}) backs up to the -previous thumbnail and displays that instead. - - If you want to see the image in its original size, either provide a -prefix argument (@kbd{C-u}) before pressing @kbd{RET}, or type -@kbd{C-return} (@code{tumme-thumbnail-display-external}) to display -the image in an external viewer. To use the latter, -@code{tumme-external-viewer} must be configured. - - If you find in image that you want to delete, type @kbd{d} -(@code{tumme-flag-thumb-original-file}) and the file will be flagged -for deletion in the dired buffer. If you just want visually to delete -the thumbnail image from the thumbnail buffer, type @kbd{C-d} -(@code{tumme-delete-char}). - - More advanced features include commands for using ``tags''. ``Tag'' -is just another word for ``keyword'', ``label'' or ``category''. In -short, it is meta data used to categorize an image file. Commands -exist to add tags for one or many image files from dired, to mark -files having a certain tag in Dired and to remove tags from files. -The tags put on image files are stored in a database file (currently a -plain text file). - - To tag image files, mark them in the dired buffer and type @kbd{C-t -t} (@code{tumme-tag-files}). You will be prompted for a tag. To mark -files having a certain tag, type @kbd{C-t f} -(@code{tumme-mark-tagged-files}). After marking image files with a -certain tag, they can be viewed as explained earlier, by typing -@key{C-t d}. - - You can also tag a file from the thumbnail buffer by typing @kbd{t -t} and remove it by typing @kbd{t r}. There is also a special ``tag'' -called ``comment'' for each file (it is not a tag in the exact same -sense as the other tags, it is handled slightly different). That is -used to enter a comment or description about the image. You comment a -file from the thumbnail buffer by typing @kbd{c}. You will be -prompted for a comment. Comments can also be added from Dired, and -then also to multiple files at once, by typing @kbd{C-t c} -(@code{tumme-dired-comment-files}). - - Tumme also provides simple image manipulation commands, like -rotating thumbnails and original image files. In the thumbnail -buffer, type @kbd{L} to rotate the original image 90 degrees anti -clockwise, and @kbd{R} to rotate it 90 degrees clockwise. This -rotation will be done lossless (the image quality will not be reduced) -and needs an external utility called JpegTRAN to work. - @node Misc Dired Features @section Other Dired Features +@kindex + @r{(Dired)} +@findex dired-create-directory + An unusual Dired file-operation command is @kbd{+} +(@code{dired-create-directory}). This command reads a directory name, +and creates the directory if it does not already exist. + @cindex Adding to the kill ring in Dired. @kindex w @r{(Dired)} @findex dired-copy-filename-as-kill @@ -1236,16 +1172,18 @@ names of the marked (or next @var{n}) files into the kill ring, as if you had killed them with @kbd{C-w}. The names are separated by a space. + With a zero prefix argument, this uses the absolute file name of +each marked file. With just @kbd{C-u} as the prefix argument, it uses +file names relative to the Dired buffer's default directory. (This +can still contain slashes if in a subdirectory.) As a special case, +if point is on a directory headerline, @kbd{w} gives you the absolute +name of that directory. Any prefix argument or marked files are +ignored in this case. + The main purpose of this command is so that you can yank the file names into arguments for other Emacs commands. It also displays what -was pushed onto the kill ring, so you can use it to display the list -of currently marked files in the echo area. With a zero prefix -argument, this uses the absolute file name of each marked file. With -just @kbd{C-u} as the prefix argument, it uses file names relative to -the Dired buffer's default directory. (This can still contain slashes -if in a subdirectory.) As a special case, if point is on a directory -headerline, @kbd{w} gives you the absolute name of that directory. -Any prefix argument or marked files are ignored in this case. +it added to the kill ring, so you can use it to display the list of +currently marked files in the echo area. @findex dired-compare-directories The command @kbd{M-x dired-compare-directories} is used to compare