diff options
| author | Richard M. Stallman | 2006-03-31 17:35:51 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 2006-03-31 17:35:51 +0000 |
| commit | e01a5bb586fab71ec1403339c40e7b3b53815e5e (patch) | |
| tree | 32d55c5000cfb23e960041948919d90cc6018c6b | |
| parent | dc5d7d59d682962f3a591614d496071d9fc803f3 (diff) | |
| download | emacs-e01a5bb586fab71ec1403339c40e7b3b53815e5e.tar.gz emacs-e01a5bb586fab71ec1403339c40e7b3b53815e5e.zip | |
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.
| -rw-r--r-- | man/dired.texi | 410 |
1 files changed, 174 insertions, 236 deletions
diff --git a/man/dired.texi b/man/dired.texi index 13bd5115f1f..5face67a7b3 100644 --- a/man/dired.texi +++ b/man/dired.texi | |||
| @@ -13,11 +13,12 @@ Emacs commands to move around in this buffer, and special Dired commands | |||
| 13 | to operate on the files listed. | 13 | to operate on the files listed. |
| 14 | 14 | ||
| 15 | The Dired buffer is ``read-only,'' and inserting text in it is not | 15 | The Dired buffer is ``read-only,'' and inserting text in it is not |
| 16 | useful, so ordinary printing characters such as @kbd{d} and @kbd{x} are | 16 | useful, so ordinary printing characters such as @kbd{d} and @kbd{x} |
| 17 | used for special Dired commands. Some Dired commands @dfn{mark} or | 17 | are redefined for special Dired commands. Some Dired commands |
| 18 | @dfn{flag} the @dfn{current file} (that is, the file on the current | 18 | @dfn{mark} or @dfn{flag} the @dfn{current file} (that is, the file on |
| 19 | line); other commands operate on the marked files or on the flagged | 19 | the current line); other commands operate on the marked files or on |
| 20 | files. | 20 | the flagged files. You first mark certain files in order to operate |
| 21 | on all of them with on command. | ||
| 21 | 22 | ||
| 22 | The Dired-X package provides various extra features for Dired mode. | 23 | The Dired-X package provides various extra features for Dired mode. |
| 23 | @xref{Top, Dired-X,,dired-x, Dired Extra Version 2 User's Manual}. | 24 | @xref{Top, Dired-X,,dired-x, Dired Extra Version 2 User's Manual}. |
| @@ -40,8 +41,6 @@ files. | |||
| 40 | * Updating: Dired Updating. Discarding lines for files of no interest. | 41 | * Updating: Dired Updating. Discarding lines for files of no interest. |
| 41 | * Find: Dired and Find. Using `find' to choose the files for Dired. | 42 | * Find: Dired and Find. Using `find' to choose the files for Dired. |
| 42 | * Wdired:: Operating on files by editing the Dired buffer. | 43 | * Wdired:: Operating on files by editing the Dired buffer. |
| 43 | * Tumme:: Image file and thumbnail viewing and | ||
| 44 | manipulation from the Dired buffer. | ||
| 45 | * Misc: Misc Dired Features. Various other features. | 44 | * Misc: Misc Dired Features. Various other features. |
| 46 | @end menu | 45 | @end menu |
| 47 | 46 | ||
| @@ -53,18 +52,20 @@ files. | |||
| 53 | @vindex dired-listing-switches | 52 | @vindex dired-listing-switches |
| 54 | To invoke Dired, do @kbd{C-x d} or @kbd{M-x dired}. The command | 53 | To invoke Dired, do @kbd{C-x d} or @kbd{M-x dired}. The command |
| 55 | reads a directory name or wildcard file name pattern as a minibuffer | 54 | reads a directory name or wildcard file name pattern as a minibuffer |
| 56 | argument to specify which files to list. @kbd{C-x C-f} given a | 55 | argument to specify the files to list. @kbd{C-x C-f} given a |
| 57 | directory name also invokes Dired. Where @code{dired} differs from | 56 | directory name also invokes Dired. Where @code{dired} differs from |
| 58 | @code{list-directory} is that it puts the buffer into Dired mode, so | 57 | @code{list-directory} is that it puts the buffer into Dired mode, so |
| 59 | that the special commands of Dired are available. | 58 | that the special commands of Dired are available. |
| 60 | 59 | ||
| 61 | The variable @code{dired-listing-switches} specifies the options to | 60 | The variable @code{dired-listing-switches} specifies the options to |
| 62 | give to @code{ls} for listing the directory; this string @emph{must} contain | 61 | give to @code{ls} for listing the directory; this string @emph{must} |
| 63 | @samp{-l}. If you use a numeric prefix argument with the @code{dired} | 62 | contain @samp{-l}. If you use a numeric prefix argument with the |
| 64 | command, you can specify the @code{ls} switches with the minibuffer | 63 | @code{dired} command, you can specify the @code{ls} switches with the |
| 65 | before you enter the directory specification. No matter how they are | 64 | minibuffer before you enter the directory specification. No matter |
| 66 | specified, the @code{ls} switches should all be short options (that | 65 | how they are specified, the @code{ls} switches can include short |
| 67 | is, single characters) requiring no arguments. | 66 | options (that is, single characters) requiring no arguments, and long |
| 67 | options (starting with @samp{--}) whose arguments are specified with | ||
| 68 | @samp{=}. | ||
| 68 | 69 | ||
| 69 | @findex dired-other-window | 70 | @findex dired-other-window |
| 70 | @kindex C-x 4 d | 71 | @kindex C-x 4 d |
| @@ -81,10 +82,9 @@ separate frame to display the Dired buffer. | |||
| 81 | @kindex C-n @r{(Dired)} | 82 | @kindex C-n @r{(Dired)} |
| 82 | @kindex C-p @r{(Dired)} | 83 | @kindex C-p @r{(Dired)} |
| 83 | All the usual Emacs cursor motion commands are available in Dired | 84 | All the usual Emacs cursor motion commands are available in Dired |
| 84 | buffers. Some special-purpose cursor motion commands are also | 85 | buffers. The keys @kbd{C-n} and @kbd{C-p} are redefined to put the |
| 85 | provided. The keys @kbd{C-n} and @kbd{C-p} are redefined to put the | 86 | cursor at the beginning of the file name on the line, rather than at |
| 86 | cursor at the beginning of the file name on the line, rather than at the | 87 | the beginning of the line. |
| 87 | beginning of the line. | ||
| 88 | 88 | ||
| 89 | @kindex SPC @r{(Dired)} | 89 | @kindex SPC @r{(Dired)} |
| 90 | For extra convenience, @key{SPC} and @kbd{n} in Dired are equivalent | 90 | For extra convenience, @key{SPC} and @kbd{n} in Dired are equivalent |
| @@ -121,42 +121,47 @@ Delete the files that are flagged for deletion. | |||
| 121 | 121 | ||
| 122 | @kindex d @r{(Dired)} | 122 | @kindex d @r{(Dired)} |
| 123 | @findex dired-flag-file-deletion | 123 | @findex dired-flag-file-deletion |
| 124 | You can flag a file for deletion by moving to the line describing the | 124 | You can flag a file for deletion by moving to the line describing |
| 125 | file and typing @kbd{d} (@code{dired-flag-file-deletion}). The deletion flag is visible as a @samp{D} at | 125 | the file and typing @kbd{d} (@code{dired-flag-file-deletion}). The |
| 126 | the beginning of the line. This command moves point to the next line, | 126 | deletion flag is visible as a @samp{D} at the beginning of the line. |
| 127 | so that repeated @kbd{d} commands flag successive files. A numeric | 127 | This command moves point to the next line, so that repeated @kbd{d} |
| 128 | argument serves as a repeat count. | 128 | commands flag successive files. A numeric argument serves as a repeat |
| 129 | 129 | count. | |
| 130 | @cindex recursive deletion | ||
| 131 | @vindex dired-recursive-deletes | ||
| 132 | The variable @code{dired-recursive-deletes} controls whether the | ||
| 133 | delete command will delete non-empty directories (including their | ||
| 134 | contents). The default is to delete only empty directories. | ||
| 135 | 130 | ||
| 136 | @kindex u @r{(Dired deletion)} | 131 | @kindex u @r{(Dired deletion)} |
| 137 | @kindex DEL @r{(Dired)} | 132 | @kindex DEL @r{(Dired)} |
| 138 | The files are flagged for deletion rather than deleted immediately to | 133 | The reason for flagging files for deletion, rather than deleting |
| 139 | reduce the danger of deleting a file accidentally. Until you direct | 134 | files immediately, is to reduce the danger of deleting a file |
| 140 | Dired to delete the flagged files, you can remove deletion flags using | 135 | accidentally. Until you direct Dired to delete the flagged files, you |
| 141 | the commands @kbd{u} and @key{DEL}. @kbd{u} (@code{dired-unmark}) works | 136 | can remove deletion flags using the commands @kbd{u} and @key{DEL}. |
| 142 | just like @kbd{d}, but removes flags rather than making flags. | 137 | @kbd{u} (@code{dired-unmark}) works just like @kbd{d}, but removes |
| 143 | @key{DEL} (@code{dired-unmark-backward}) moves upward, removing flags; | 138 | flags rather than making flags. @key{DEL} |
| 144 | it is like @kbd{u} with argument @minus{}1. | 139 | (@code{dired-unmark-backward}) moves upward, removing flags; it is |
| 140 | like @kbd{u} with argument @minus{}1. | ||
| 145 | 141 | ||
| 146 | @kindex x @r{(Dired)} | 142 | @kindex x @r{(Dired)} |
| 147 | @findex dired-do-flagged-delete | 143 | @findex dired-do-flagged-delete |
| 148 | @cindex expunging (Dired) | 144 | @cindex expunging (Dired) |
| 149 | To delete the flagged files, type @kbd{x} (@code{dired-do-flagged-delete}). | 145 | To delete the flagged files, type @kbd{x} |
| 150 | (This is also known as @dfn{expunging}.) | 146 | (@code{dired-do-flagged-delete}). (This is also known as |
| 151 | This command first displays a list of all the file names flagged for | 147 | @dfn{expunging}.) This command first displays a list of all the file |
| 152 | deletion, and requests confirmation with @kbd{yes}. If you confirm, | 148 | names flagged for deletion, and requests confirmation with @kbd{yes}. |
| 153 | Dired deletes the flagged files, then deletes their lines from the text | 149 | If you confirm, Dired deletes the flagged files, then deletes their |
| 154 | of the Dired buffer. The shortened Dired buffer remains selected. | 150 | lines from the text of the Dired buffer. The Dired buffer, with |
| 151 | somewhat fewer lines, remains selected. | ||
| 155 | 152 | ||
| 156 | If you answer @kbd{no} or quit with @kbd{C-g} when asked to confirm, you | 153 | If you answer @kbd{no} or quit with @kbd{C-g} when asked to confirm, you |
| 157 | return immediately to Dired, with the deletion flags still present in | 154 | return immediately to Dired, with the deletion flags still present in |
| 158 | the buffer, and no files actually deleted. | 155 | the buffer, and no files actually deleted. |
| 159 | 156 | ||
| 157 | @cindex recursive deletion | ||
| 158 | @vindex dired-recursive-deletes | ||
| 159 | You can delete empty directories just like other files, but normally | ||
| 160 | Dired cannot delete directories that are nonempty. If the variable | ||
| 161 | @code{dired-recursive-deletes} is non-@code{nil}, then Dired can | ||
| 162 | delete nonempty directories including all their contents. That can | ||
| 163 | be somewhat risky. | ||
| 164 | |||
| 160 | @node Flagging Many Files | 165 | @node Flagging Many Files |
| 161 | @section Flagging Many Files at Once | 166 | @section Flagging Many Files at Once |
| 162 | @cindex flagging many files for deletion (in Dired) | 167 | @cindex flagging many files for deletion (in Dired) |
| @@ -171,8 +176,8 @@ Flag all backup files (files whose names end with @samp{~}) for deletion | |||
| 171 | (@pxref{Backup}). | 176 | (@pxref{Backup}). |
| 172 | 177 | ||
| 173 | @item & | 178 | @item & |
| 174 | Flag for deletion all files with certain kinds of names, names that | 179 | Flag for deletion all files with certain kinds of names which suggest |
| 175 | suggest you could easily create the files again. | 180 | you could easily create those files again. |
| 176 | 181 | ||
| 177 | @item .@: @r{(Period)} | 182 | @item .@: @r{(Period)} |
| 178 | Flag excess numeric backup files for deletion. The oldest and newest | 183 | Flag excess numeric backup files for deletion. The oldest and newest |
| @@ -204,14 +209,14 @@ files produced by @TeX{}, @samp{.bak} files, and the @samp{.orig} and | |||
| 204 | @findex dired-flag-auto-save-files | 209 | @findex dired-flag-auto-save-files |
| 205 | @cindex deleting auto-save files | 210 | @cindex deleting auto-save files |
| 206 | @kbd{#} (@code{dired-flag-auto-save-files}) flags for deletion all | 211 | @kbd{#} (@code{dired-flag-auto-save-files}) flags for deletion all |
| 207 | files whose names look like auto-save files (@pxref{Auto Save})---that | 212 | files whose names look like auto-save files---that is, files whose |
| 208 | is, files whose names begin and end with @samp{#}. | 213 | names begin and end with @samp{#}. @xref{Auto Save}. |
| 209 | 214 | ||
| 210 | @kindex ~ @r{(Dired)} | 215 | @kindex ~ @r{(Dired)} |
| 211 | @findex dired-flag-backup-files | 216 | @findex dired-flag-backup-files |
| 212 | @kbd{~} (@code{dired-flag-backup-files}) flags for deletion all files | 217 | @kbd{~} (@code{dired-flag-backup-files}) flags for deletion all |
| 213 | whose names say they are backup files (@pxref{Backup})---that is, files | 218 | files whose names say they are backup files---that is, files whose |
| 214 | whose names end in @samp{~}. | 219 | names end in @samp{~}. @xref{Backup}. |
| 215 | 220 | ||
| 216 | @kindex . @r{(Dired)} | 221 | @kindex . @r{(Dired)} |
| 217 | @vindex dired-kept-versions | 222 | @vindex dired-kept-versions |
| @@ -235,8 +240,9 @@ specify the number of oldest versions of each file to keep. | |||
| 235 | The @kbd{% d} command flags all files whose names match a specified | 240 | The @kbd{% d} command flags all files whose names match a specified |
| 236 | regular expression (@code{dired-flag-files-regexp}). Only the | 241 | regular expression (@code{dired-flag-files-regexp}). Only the |
| 237 | non-directory part of the file name is used in matching. You can use | 242 | non-directory part of the file name is used in matching. You can use |
| 238 | @samp{^} and @samp{$} to anchor matches. You can exclude subdirectories | 243 | @samp{^} and @samp{$} to anchor matches. You can exclude certain |
| 239 | by hiding them (@pxref{Hiding Subdirectories}). | 244 | subdirectories from marking by hiding them while you use @kbd{% d}. |
| 245 | @xref{Hiding Subdirectories}. | ||
| 240 | 246 | ||
| 241 | @node Dired Visiting | 247 | @node Dired Visiting |
| 242 | @section Visiting Files in Dired | 248 | @section Visiting Files in Dired |
| @@ -301,8 +307,8 @@ Ops, View File, Miscellaneous File Operations}. | |||
| 301 | @kindex ^ @r{(Dired)} | 307 | @kindex ^ @r{(Dired)} |
| 302 | @findex dired-up-directory | 308 | @findex dired-up-directory |
| 303 | Visit the parent directory of the current directory | 309 | Visit the parent directory of the current directory |
| 304 | (@code{dired-up-directory}). This is more convenient than moving to | 310 | (@code{dired-up-directory}). This is equivalent to moving to the line |
| 305 | the parent directory's line and typing @kbd{f} there. | 311 | for @file{..} and typing @kbd{f} there. |
| 306 | @end table | 312 | @end table |
| 307 | 313 | ||
| 308 | @node Marks vs Flags | 314 | @node Marks vs Flags |
| @@ -311,12 +317,13 @@ the parent directory's line and typing @kbd{f} there. | |||
| 311 | @cindex marking many files (in Dired) | 317 | @cindex marking many files (in Dired) |
| 312 | Instead of flagging a file with @samp{D}, you can @dfn{mark} the | 318 | Instead of flagging a file with @samp{D}, you can @dfn{mark} the |
| 313 | file with some other character (usually @samp{*}). Most Dired | 319 | file with some other character (usually @samp{*}). Most Dired |
| 314 | commands to operate on files use the files marked with @samp{*}, the | 320 | commands to operate on files use the files marked with @samp{*}. The |
| 315 | exception being @kbd{x} which deletes the flagged files. | 321 | only command that operates on flagged flies is @kbd{x}, which expunges |
| 322 | them. | ||
| 316 | 323 | ||
| 317 | Here are some commands for marking with @samp{*}, or for unmarking or | 324 | Here are some commands for marking with @samp{*}, for unmarking, and |
| 318 | operating on marks. (@xref{Dired Deletion}, for commands to flag and | 325 | for operating on marks. (@xref{Dired Deletion}, for commands to flag |
| 319 | unflag files.) | 326 | and unflag files.) |
| 320 | 327 | ||
| 321 | @table @kbd | 328 | @table @kbd |
| 322 | @item m | 329 | @item m |
| @@ -348,7 +355,7 @@ With a numeric argument, unmark all those files. | |||
| 348 | @kindex * / @r{(Dired)} | 355 | @kindex * / @r{(Dired)} |
| 349 | @findex dired-mark-directories | 356 | @findex dired-mark-directories |
| 350 | @cindex marking subdirectories (in Dired) | 357 | @cindex marking subdirectories (in Dired) |
| 351 | Mark with @samp{*} all files which are actually directories, except for | 358 | Mark with @samp{*} all files which are directories, except for |
| 352 | @file{.} and @file{..} (@code{dired-mark-directories}). With a numeric | 359 | @file{.} and @file{..} (@code{dired-mark-directories}). With a numeric |
| 353 | argument, unmark all those files. | 360 | argument, unmark all those files. |
| 354 | 361 | ||
| @@ -455,11 +462,12 @@ This assumes that no files were already marked with @samp{t}. | |||
| 455 | Mark (with @samp{*}) all files whose names match the regular expression | 462 | Mark (with @samp{*}) all files whose names match the regular expression |
| 456 | @var{regexp} (@code{dired-mark-files-regexp}). This command is like | 463 | @var{regexp} (@code{dired-mark-files-regexp}). This command is like |
| 457 | @kbd{% d}, except that it marks files with @samp{*} instead of flagging | 464 | @kbd{% d}, except that it marks files with @samp{*} instead of flagging |
| 458 | with @samp{D}. @xref{Flagging Many Files}. | 465 | with @samp{D}. |
| 459 | 466 | ||
| 460 | Only the non-directory part of the file name is used in matching. Use | 467 | Only the non-directory part of the file name is used in matching. Use |
| 461 | @samp{^} and @samp{$} to anchor matches. Exclude subdirectories by | 468 | @samp{^} and @samp{$} to anchor matches. You can exclude |
| 462 | hiding them (@pxref{Hiding Subdirectories}). | 469 | subdirectories by temporarily hiding them (@pxref{Hiding |
| 470 | Subdirectories}). | ||
| 463 | 471 | ||
| 464 | @item % g @var{regexp} @key{RET} | 472 | @item % g @var{regexp} @key{RET} |
| 465 | @findex dired-mark-files-containing-regexp | 473 | @findex dired-mark-files-containing-regexp |
| @@ -471,16 +479,21 @@ the regular expression @var{regexp} | |||
| 471 | @kbd{% m}, except that it searches the file contents instead of the file | 479 | @kbd{% m}, except that it searches the file contents instead of the file |
| 472 | name. | 480 | name. |
| 473 | 481 | ||
| 474 | @item C-_ | 482 | @item C-x u |
| 483 | @itemx C-_ | ||
| 484 | @itemx C-/ | ||
| 475 | @kindex C-_ @r{(Dired)} | 485 | @kindex C-_ @r{(Dired)} |
| 476 | @findex dired-undo | 486 | @findex dired-undo |
| 477 | Undo changes in the Dired buffer, such as adding or removing | 487 | Undo changes in the Dired buffer, such as adding or removing |
| 478 | marks (@code{dired-undo}). @emph{This command does not revert the | 488 | marks (@code{dired-undo}). @emph{This command does not revert the |
| 479 | actual file operations, nor recover lost files!} It just undoes | 489 | actual file operations, nor recover lost files!} It just undoes |
| 480 | changes in the buffer itself. For example, if used after renaming one | 490 | changes in the buffer itself. |
| 481 | or more files, @code{dired-undo} restores the original names, which | 491 | |
| 482 | will get the Dired buffer out of sync with the actual contents of the | 492 | In some cases, using this after commands that operate on files can |
| 483 | directory. | 493 | cause trouble. For example, after renaming one or more files, |
| 494 | @code{dired-undo} restores the original names in the Dired buffer, | ||
| 495 | which gets the Dired buffer out of sync with the actual contents of | ||
| 496 | the directory. | ||
| 484 | @end table | 497 | @end table |
| 485 | 498 | ||
| 486 | @node Operating on Files | 499 | @node Operating on Files |
| @@ -490,8 +503,8 @@ directory. | |||
| 490 | This section describes the basic Dired commands to operate on one file | 503 | This section describes the basic Dired commands to operate on one file |
| 491 | or several files. All of these commands are capital letters; all of | 504 | or several files. All of these commands are capital letters; all of |
| 492 | them use the minibuffer, either to read an argument or to ask for | 505 | them use the minibuffer, either to read an argument or to ask for |
| 493 | confirmation, before they act. All of them give you several ways to | 506 | confirmation, before they act. All of them let you specify the |
| 494 | specify which files to manipulate: | 507 | files to manipulate in these ways: |
| 495 | 508 | ||
| 496 | @itemize @bullet | 509 | @itemize @bullet |
| 497 | @item | 510 | @item |
| @@ -508,6 +521,10 @@ on all those files. | |||
| 508 | Otherwise, the command operates on the current file only. | 521 | Otherwise, the command operates on the current file only. |
| 509 | @end itemize | 522 | @end itemize |
| 510 | 523 | ||
| 524 | @noindent | ||
| 525 | Certain other Dired commands, such as @kbd{!} and the @samp{%} | ||
| 526 | commands, use the same conventions to decide which files to work on. | ||
| 527 | |||
| 511 | @vindex dired-dwim-target | 528 | @vindex dired-dwim-target |
| 512 | @cindex two directories (in Dired) | 529 | @cindex two directories (in Dired) |
| 513 | Commands which ask for a destination directory, such as those which | 530 | Commands which ask for a destination directory, such as those which |
| @@ -517,9 +534,7 @@ buffer's default directory, but if the variable @code{dired-dwim-target} | |||
| 517 | is non-@code{nil}, and if there is another Dired buffer displayed in the | 534 | is non-@code{nil}, and if there is another Dired buffer displayed in the |
| 518 | next window, that other buffer's directory is suggested instead. | 535 | next window, that other buffer's directory is suggested instead. |
| 519 | 536 | ||
| 520 | Here are the file-manipulating commands that operate on files in this | 537 | Here are the file-manipulating Dired commands that operate on files. |
| 521 | way. (Some other Dired commands, such as @kbd{!} and the @samp{%} | ||
| 522 | commands, also use these conventions to decide which files to work on.) | ||
| 523 | 538 | ||
| 524 | @table @kbd | 539 | @table @kbd |
| 525 | @findex dired-do-copy | 540 | @findex dired-do-copy |
| @@ -531,15 +546,15 @@ is the directory to copy into, or (if copying a single file) the new | |||
| 531 | name. | 546 | name. |
| 532 | 547 | ||
| 533 | @vindex dired-copy-preserve-time | 548 | @vindex dired-copy-preserve-time |
| 534 | If @code{dired-copy-preserve-time} is non-@code{nil}, then copying with | 549 | If @code{dired-copy-preserve-time} is non-@code{nil}, then copying |
| 535 | this command sets the modification time of the new file to be the same | 550 | with this command preserves the modification time of the old file in |
| 536 | as that of the old file. | 551 | the copy. |
| 537 | 552 | ||
| 538 | @vindex dired-recursive-copies | 553 | @vindex dired-recursive-copies |
| 539 | @cindex recursive copying | 554 | @cindex recursive copying |
| 540 | The variable @code{dired-recursive-copies} controls whether | 555 | The variable @code{dired-recursive-copies} controls whether to copy |
| 541 | directories are copied recursively. The default is to not copy | 556 | directories recursively. The default is @code{nil}, which means that |
| 542 | recursively, which means that directories cannot be copied. | 557 | directories cannot be copied. |
| 543 | 558 | ||
| 544 | @item D | 559 | @item D |
| 545 | @findex dired-do-delete | 560 | @findex dired-do-delete |
| @@ -608,7 +623,8 @@ different places). | |||
| 608 | @kindex T @r{(Dired)} | 623 | @kindex T @r{(Dired)} |
| 609 | @cindex changing file time (in Dired) | 624 | @cindex changing file time (in Dired) |
| 610 | @item T @var{timestamp} @key{RET} | 625 | @item T @var{timestamp} @key{RET} |
| 611 | Change the time of the specified files (@code{dired-do-touch}). | 626 | Touch the specified files (@code{dired-do-touch}). This means |
| 627 | updating their modification times to the present time. | ||
| 612 | 628 | ||
| 613 | @findex dired-do-print | 629 | @findex dired-do-print |
| 614 | @kindex P @r{(Dired)} | 630 | @kindex P @r{(Dired)} |
| @@ -625,7 +641,7 @@ suitable guess made using the variables @code{lpr-command} and | |||
| 625 | @cindex compressing files (in Dired) | 641 | @cindex compressing files (in Dired) |
| 626 | @item Z | 642 | @item Z |
| 627 | Compress the specified files (@code{dired-do-compress}). If the file | 643 | Compress the specified files (@code{dired-do-compress}). If the file |
| 628 | appears to be a compressed file already, it is uncompressed instead. | 644 | appears to be a compressed file already, uncompress it instead. |
| 629 | 645 | ||
| 630 | @findex dired-do-load | 646 | @findex dired-do-load |
| 631 | @kindex L @r{(Dired)} | 647 | @kindex L @r{(Dired)} |
| @@ -666,12 +682,6 @@ query replace loop, you can use @kbd{M-,} to resume the scan and replace | |||
| 666 | more matches. @xref{Tags Search}. | 682 | more matches. @xref{Tags Search}. |
| 667 | @end table | 683 | @end table |
| 668 | 684 | ||
| 669 | @kindex + @r{(Dired)} | ||
| 670 | @findex dired-create-directory | ||
| 671 | One special file-operation command is @kbd{+} | ||
| 672 | (@code{dired-create-directory}). This command reads a directory name and | ||
| 673 | creates the directory if it does not already exist. | ||
| 674 | |||
| 675 | @node Shell Commands in Dired | 685 | @node Shell Commands in Dired |
| 676 | @section Shell Commands in Dired | 686 | @section Shell Commands in Dired |
| 677 | @cindex shell commands, Dired | 687 | @cindex shell commands, Dired |
| @@ -679,12 +689,16 @@ creates the directory if it does not already exist. | |||
| 679 | @findex dired-do-shell-command | 689 | @findex dired-do-shell-command |
| 680 | @kindex ! @r{(Dired)} | 690 | @kindex ! @r{(Dired)} |
| 681 | @kindex X @r{(Dired)} | 691 | @kindex X @r{(Dired)} |
| 682 | The Dired command @kbd{!} (@code{dired-do-shell-command}) reads a shell | 692 | The Dired command @kbd{!} (@code{dired-do-shell-command}) reads a |
| 683 | command string in the minibuffer and runs that shell command on all the | 693 | shell command string in the minibuffer and runs that shell command on |
| 684 | specified files. @kbd{X} is a synonym for @kbd{!}. You can specify the | 694 | all the specified files. (@kbd{X} is a synonym for @kbd{!}.) You can |
| 685 | files to operate on in the usual ways for Dired commands | 695 | specify the files to operate on in the usual ways for Dired commands |
| 686 | (@pxref{Operating on Files}). There are two ways of applying a shell | 696 | (@pxref{Operating on Files}). |
| 687 | command to multiple files: | 697 | |
| 698 | The working directory for the shell command is the top-level directory | ||
| 699 | of the Dired buffer. | ||
| 700 | |||
| 701 | There are two ways of applying a shell command to multiple files: | ||
| 688 | 702 | ||
| 689 | @itemize @bullet | 703 | @itemize @bullet |
| 690 | @item | 704 | @item |
| @@ -711,12 +725,12 @@ file. | |||
| 711 | 725 | ||
| 712 | @item | 726 | @item |
| 713 | However, if the command string contains @samp{?} surrounded by | 727 | However, if the command string contains @samp{?} surrounded by |
| 714 | whitespace, the current file name is substituted for @samp{?} (rather | 728 | whitespace, the current file name is substituted for @samp{?} (rather |
| 715 | than added at the end). You can use @samp{?} this way more than once | 729 | than added at the end). You can use @samp{?} this way more than once |
| 716 | in the command, and the same file name replaces each occurrence. | 730 | in the command, and the same file name replaces each occurrence. |
| 717 | @end itemize | 731 | @end itemize |
| 718 | 732 | ||
| 719 | To iterate over the file names in a more complicated fashion, use an | 733 | To iterate over the file names in a more complicated fashion, use an |
| 720 | explicit shell loop. For example, here is how to uuencode each file, | 734 | explicit shell loop. For example, here is how to uuencode each file, |
| 721 | making the output file name by appending @samp{.uu} to the input file | 735 | making the output file name by appending @samp{.uu} to the input file |
| 722 | name: | 736 | name: |
| @@ -725,11 +739,8 @@ name: | |||
| 725 | for file in * ; do uuencode "$file" "$file" >"$file".uu; done | 739 | for file in * ; do uuencode "$file" "$file" >"$file".uu; done |
| 726 | @end example | 740 | @end example |
| 727 | 741 | ||
| 728 | The working directory for the shell command is the top-level directory | 742 | The @kbd{!} command does not attempt to update the Dired buffer to |
| 729 | of the Dired buffer. | 743 | show new or modified files, because it doesn't understand shell |
| 730 | |||
| 731 | The @kbd{!} command does not attempt to update the Dired buffer to show | ||
| 732 | new or modified files, because it doesn't really understand shell | ||
| 733 | commands, and does not know what files the shell command changed. Use | 744 | commands, and does not know what files the shell command changed. Use |
| 734 | the @kbd{g} command to update the Dired buffer (@pxref{Dired | 745 | the @kbd{g} command to update the Dired buffer (@pxref{Dired |
| 735 | Updating}). | 746 | Updating}). |
| @@ -738,7 +749,8 @@ Updating}). | |||
| 738 | @section Transforming File Names in Dired | 749 | @section Transforming File Names in Dired |
| 739 | 750 | ||
| 740 | This section describes Dired commands which alter file names in a | 751 | This section describes Dired commands which alter file names in a |
| 741 | systematic way. | 752 | systematic way. Each command operates on some or all of the marked |
| 753 | files, using a new name made by transforming the existing name. | ||
| 742 | 754 | ||
| 743 | Like the basic Dired file-manipulation commands (@pxref{Operating on | 755 | Like the basic Dired file-manipulation commands (@pxref{Operating on |
| 744 | Files}), the commands described here operate either on the next | 756 | Files}), the commands described here operate either on the next |
| @@ -750,7 +762,7 @@ Flags}.) | |||
| 750 | @emph{interactively}: they ask you to confirm the operation for each | 762 | @emph{interactively}: they ask you to confirm the operation for each |
| 751 | candidate file. Thus, you can select more files than you actually | 763 | candidate file. Thus, you can select more files than you actually |
| 752 | need to operate on (e.g., with a regexp that matches many files), and | 764 | need to operate on (e.g., with a regexp that matches many files), and |
| 753 | then refine the selection by typing @kbd{y} or @kbd{n} when the | 765 | then filter the selected names by typing @kbd{y} or @kbd{n} when the |
| 754 | command prompts for confirmation. | 766 | command prompts for confirmation. |
| 755 | 767 | ||
| 756 | @table @kbd | 768 | @table @kbd |
| @@ -787,17 +799,16 @@ in each case computing the new name by regular-expression substitution | |||
| 787 | from the name of the old file. | 799 | from the name of the old file. |
| 788 | @end table | 800 | @end table |
| 789 | 801 | ||
| 790 | The four regular-expression substitution commands effectively perform | 802 | The four regular-expression substitution commands effectively |
| 791 | a search-and-replace on the selected file names in the Dired buffer. | 803 | perform a search-and-replace on the selected file names. They read |
| 792 | They read two arguments: a regular expression @var{from}, and a | 804 | two arguments: a regular expression @var{from}, and a substitution |
| 793 | substitution pattern @var{to}. | 805 | pattern @var{to}; they match each ``old'' file name against |
| 794 | 806 | @var{from}, and then replace the matching part with @var{to}. You can | |
| 795 | The commands match each ``old'' file name against the regular | 807 | use @samp{\&} and @samp{\@var{digit}} in @var{to} to refer to all or |
| 796 | expression @var{from}, and then replace the matching part with @var{to}. | 808 | part of what the pattern matched in the old file name, as in |
| 797 | You can use @samp{\&} and @samp{\@var{digit}} in @var{to} to refer to | 809 | @code{replace-regexp} (@pxref{Regexp Replace}). If the regular |
| 798 | all or part of what the pattern matched in the old file name, as in | 810 | expression matches more than once in a file name, only the first match |
| 799 | @code{replace-regexp} (@pxref{Regexp Replace}). If the regular expression | 811 | is replaced. |
| 800 | matches more than once in a file name, only the first match is replaced. | ||
| 801 | 812 | ||
| 802 | For example, @kbd{% R ^.*$ @key{RET} x-\& @key{RET}} renames each | 813 | For example, @kbd{% R ^.*$ @key{RET} x-\& @key{RET}} renames each |
| 803 | selected file by prepending @samp{x-} to its name. The inverse of this, | 814 | selected file by prepending @samp{x-} to its name. The inverse of this, |
| @@ -809,15 +820,16 @@ matches that should span the whole filename.) | |||
| 809 | Normally, the replacement process does not consider the files' | 820 | Normally, the replacement process does not consider the files' |
| 810 | directory names; it operates on the file name within the directory. If | 821 | directory names; it operates on the file name within the directory. If |
| 811 | you specify a numeric argument of zero, then replacement affects the | 822 | you specify a numeric argument of zero, then replacement affects the |
| 812 | entire absolute file name including directory name. (Non-zero | 823 | entire absolute file name including directory name. (A non-zero |
| 813 | argument specifies the number of files to operate on.) | 824 | argument specifies the number of files to operate on.) |
| 814 | 825 | ||
| 815 | Often you will want to select the set of files to operate on using the | 826 | You may want to select the set of files to operate on using the same |
| 816 | same @var{regexp} that you will use to operate on them. To do this, | 827 | regexp @var{from} that you will use to operate on them. To do this, |
| 817 | mark those files with @kbd{% m @var{regexp} @key{RET}}, then use the | 828 | mark those files with @kbd{% m @var{from} @key{RET}}, then use the |
| 818 | same regular expression in the command to operate on the files. To make | 829 | same regular expression in the command to operate on the files. To |
| 819 | this easier, the @kbd{%} commands to operate on files use the last | 830 | make this more convenient, the @kbd{%} commands to operate on files |
| 820 | regular expression specified in any @kbd{%} command as a default. | 831 | use the last regular expression specified in any @kbd{%} command as a |
| 832 | default. | ||
| 821 | 833 | ||
| 822 | @node Comparison in Dired | 834 | @node Comparison in Dired |
| 823 | @section File Comparison with Dired | 835 | @section File Comparison with Dired |
| @@ -825,19 +837,20 @@ regular expression specified in any @kbd{%} command as a default. | |||
| 825 | @cindex compare files (in Dired) | 837 | @cindex compare files (in Dired) |
| 826 | 838 | ||
| 827 | Here are two Dired commands that compare specified files using | 839 | Here are two Dired commands that compare specified files using |
| 828 | @code{diff}. | 840 | @code{diff}. They show the output in a buffer using Diff mode |
| 841 | (@pxref{Comparing Files}). | ||
| 829 | 842 | ||
| 830 | @table @kbd | 843 | @table @kbd |
| 831 | @item = | 844 | @item = |
| 832 | @findex dired-diff | 845 | @findex dired-diff |
| 833 | @kindex = @r{(Dired)} | 846 | @kindex = @r{(Dired)} |
| 834 | Compare the current file (the file at point) with another file (the file | 847 | Compare the current file (the file at point) with another file (the |
| 835 | at the mark) using the @code{diff} program (@code{dired-diff}). The | 848 | file at the mark) using the @code{diff} program (@code{dired-diff}). |
| 836 | file at the mark is the first argument of @code{diff}, and the file at | 849 | The file at the mark is the first argument of @code{diff}, and the |
| 837 | point is the second argument. Use @kbd{C-@key{SPC}} | 850 | file at point is the second argument. This refers to the ordinary |
| 851 | Emacs mark, not Dired marks; use @kbd{C-@key{SPC}} | ||
| 838 | (@code{set-mark-command}) to set the mark at the first file's line | 852 | (@code{set-mark-command}) to set the mark at the first file's line |
| 839 | (@pxref{Setting Mark}), since @code{dired-diff} ignores the files marked | 853 | (@pxref{Setting Mark}). |
| 840 | with the Dired's @kbd{m} command. | ||
| 841 | 854 | ||
| 842 | @findex dired-backup-diff | 855 | @findex dired-backup-diff |
| 843 | @kindex M-= @r{(Dired)} | 856 | @kindex M-= @r{(Dired)} |
| @@ -845,7 +858,7 @@ with the Dired's @kbd{m} command. | |||
| 845 | Compare the current file with its latest backup file | 858 | Compare the current file with its latest backup file |
| 846 | (@code{dired-backup-diff}). If the current file is itself a backup, | 859 | (@code{dired-backup-diff}). If the current file is itself a backup, |
| 847 | compare it with the file it is a backup of; this way, you can compare | 860 | compare it with the file it is a backup of; this way, you can compare |
| 848 | a file with any backup version of your choice. | 861 | a file with any one of its backups. |
| 849 | 862 | ||
| 850 | The backup file is the first file given to @code{diff}. | 863 | The backup file is the first file given to @code{diff}. |
| 851 | @end table | 864 | @end table |
| @@ -864,9 +877,8 @@ numeric argument when you run Dired, then you can specify these options | |||
| 864 | in the minibuffer.) That produces a recursive directory listing showing | 877 | in the minibuffer.) That produces a recursive directory listing showing |
| 865 | all subdirectories at all levels. | 878 | all subdirectories at all levels. |
| 866 | 879 | ||
| 867 | But usually all the subdirectories are too many; usually you will | 880 | More often, you will want to show only specific subdirectories. You |
| 868 | prefer to include specific subdirectories only. You can do this with | 881 | can do this with the @kbd{i} command: |
| 869 | the @kbd{i} command: | ||
| 870 | 882 | ||
| 871 | @table @kbd | 883 | @table @kbd |
| 872 | @findex dired-maybe-insert-subdir | 884 | @findex dired-maybe-insert-subdir |
| @@ -950,7 +962,7 @@ Move down to the next directory-file line (@code{dired-prev-dirline}). | |||
| 950 | 962 | ||
| 951 | @cindex hiding in Dired (Dired) | 963 | @cindex hiding in Dired (Dired) |
| 952 | @dfn{Hiding} a subdirectory means to make it invisible, except for its | 964 | @dfn{Hiding} a subdirectory means to make it invisible, except for its |
| 953 | header line, via selective display (@pxref{Selective Display}). | 965 | header line. |
| 954 | 966 | ||
| 955 | @table @kbd | 967 | @table @kbd |
| 956 | @item $ | 968 | @item $ |
| @@ -974,7 +986,8 @@ subdirectories far away. | |||
| 974 | subdirectory. For example, the commands to operate on marked files | 986 | subdirectory. For example, the commands to operate on marked files |
| 975 | ignore files in hidden directories even if they are marked. Thus you | 987 | ignore files in hidden directories even if they are marked. Thus you |
| 976 | can use hiding to temporarily exclude subdirectories from operations | 988 | can use hiding to temporarily exclude subdirectories from operations |
| 977 | without having to remove the markers. | 989 | without having to remove the Dired marks on files in those |
| 990 | subdirectories. | ||
| 978 | 991 | ||
| 979 | @node Dired Updating | 992 | @node Dired Updating |
| 980 | @section Updating the Dired Buffer | 993 | @section Updating the Dired Buffer |
| @@ -990,7 +1003,8 @@ part of the Dired buffer. | |||
| 990 | Update the entire contents of the Dired buffer (@code{revert-buffer}). | 1003 | Update the entire contents of the Dired buffer (@code{revert-buffer}). |
| 991 | 1004 | ||
| 992 | @item l | 1005 | @item l |
| 993 | Update the specified files (@code{dired-do-redisplay}). | 1006 | Update the specified files (@code{dired-do-redisplay}). You specify the |
| 1007 | files for @kbd{l} in the same way as for file operations. | ||
| 994 | 1008 | ||
| 995 | @item k | 1009 | @item k |
| 996 | Delete the specified @emph{file lines}---not the files, just the lines | 1010 | Delete the specified @emph{file lines}---not the files, just the lines |
| @@ -1034,9 +1048,9 @@ current file as a last resort. | |||
| 1034 | 1048 | ||
| 1035 | If you use @kbd{k} with a numeric prefix argument to kill the line | 1049 | If you use @kbd{k} with a numeric prefix argument to kill the line |
| 1036 | for a file that is a directory, which you have inserted in the Dired | 1050 | for a file that is a directory, which you have inserted in the Dired |
| 1037 | buffer as a subdirectory, then this deletes that subdirectory from the | 1051 | buffer as a subdirectory, it deletes that subdirectory from the buffer |
| 1038 | buffer as well. Typing @kbd{C-u k} on the header line for a subdirectory | 1052 | as well. Typing @kbd{C-u k} on the header line for a subdirectory |
| 1039 | is another way to delete a subdirectory from the Dired buffer. | 1053 | also deletes the subdirectory from the Dired buffer. |
| 1040 | 1054 | ||
| 1041 | The @kbd{g} command brings back any individual lines that you have | 1055 | The @kbd{g} command brings back any individual lines that you have |
| 1042 | killed in this way, but not subdirectories---you must use @kbd{i} to | 1056 | killed in this way, but not subdirectories---you must use @kbd{i} to |
| @@ -1068,7 +1082,7 @@ flexibly by using the @code{find} utility to choose the files. | |||
| 1068 | @var{pattern}, and chooses all the files in @var{directory} or its | 1082 | @var{pattern}, and chooses all the files in @var{directory} or its |
| 1069 | subdirectories whose individual names match @var{pattern}. | 1083 | subdirectories whose individual names match @var{pattern}. |
| 1070 | 1084 | ||
| 1071 | The files thus chosen are displayed in a Dired buffer in which the | 1085 | The files thus chosen are displayed in a Dired buffer, in which the |
| 1072 | ordinary Dired commands are available. | 1086 | ordinary Dired commands are available. |
| 1073 | 1087 | ||
| 1074 | @findex find-grep-dired | 1088 | @findex find-grep-dired |
| @@ -1101,10 +1115,10 @@ may need to change the value of this variable. | |||
| 1101 | @cindex file database (locate) | 1115 | @cindex file database (locate) |
| 1102 | @vindex locate-command | 1116 | @vindex locate-command |
| 1103 | @kbd{M-x locate} provides a similar interface to the @code{locate} | 1117 | @kbd{M-x locate} provides a similar interface to the @code{locate} |
| 1104 | program. @kbd{M-x locate-with-filter} is similar, but keeps only lines | 1118 | program. @kbd{M-x locate-with-filter} is similar, but keeps only files |
| 1105 | matching a given regular expression. | 1119 | whose names match a given regular expression. |
| 1106 | 1120 | ||
| 1107 | These buffers don't work entirely like ordinary Dired buffers. File | 1121 | These buffers don't work entirely like ordinary Dired buffers: file |
| 1108 | operations work, but do not always automatically update the buffer. | 1122 | operations work, but do not always automatically update the buffer. |
| 1109 | Reverting the buffer with @kbd{g} deletes all inserted subdirectories, | 1123 | Reverting the buffer with @kbd{g} deletes all inserted subdirectories, |
| 1110 | and erases all flags and marks. | 1124 | and erases all flags and marks. |
| @@ -1131,104 +1145,26 @@ back to ordinary Dired mode. | |||
| 1131 | Apart from simply renaming files, you can move a file to another | 1145 | Apart from simply renaming files, you can move a file to another |
| 1132 | directory by typing in the new file name (either absolute or | 1146 | directory by typing in the new file name (either absolute or |
| 1133 | relative). To mark a file for deletion, delete the entire filename. | 1147 | relative). To mark a file for deletion, delete the entire filename. |
| 1134 | To change the target of a symbolic link, just edit the target name | 1148 | To change the target of a symbolic link, edit the link target name |
| 1135 | displayed next to the link name. | 1149 | which appears next to the link name. |
| 1136 | 1150 | ||
| 1137 | The rest of the text in the buffer, such as the file sizes and | 1151 | The rest of the text in the buffer, such as the file sizes and |
| 1138 | modification dates, is marked read-only, so you can't edit it. | 1152 | modification dates, is marked read-only, so you can't edit it. |
| 1139 | However, if you set @code{wdired-allow-to-change-permissions} to | 1153 | However, if you set @code{wdired-allow-to-change-permissions} to |
| 1140 | @code{t}, the file permission bits can also be edited. For example, | 1154 | @code{t}, you can edit the file permissions. For example, you can |
| 1141 | you can change @samp{-rw-r--r--} to @samp{-rw-rw-rw-} to make a file | 1155 | change @samp{-rw-r--r--} to @samp{-rw-rw-rw-} to make a file |
| 1142 | world-writable. These changes also take effect when you type @kbd{C-c | 1156 | world-writable. These changes also take effect when you type @kbd{C-c |
| 1143 | C-c}. | 1157 | C-c}. |
| 1144 | 1158 | ||
| 1145 | @node Tumme | ||
| 1146 | @section Thumbnail and image file viewing and manipulation | ||
| 1147 | |||
| 1148 | @cindex tumme mode | ||
| 1149 | |||
| 1150 | Tumme provides for simple viewing of thumbnails of image files. It | ||
| 1151 | provides viewing of the original file, sized or in full size, inside | ||
| 1152 | Emacs or in an external viewer. | ||
| 1153 | |||
| 1154 | Tumme aims to be both easy to use for a beginner but also powerful | ||
| 1155 | and useful to an experienced user. | ||
| 1156 | |||
| 1157 | The quickest way to try out Tumme is to use the command | ||
| 1158 | @code{tumme}. It will prompt for a directory where there are images | ||
| 1159 | files. All images in that directory will get thumbnail files created | ||
| 1160 | for them, and the thumbnails will be displayed in the ``thumbnail | ||
| 1161 | buffer''. | ||
| 1162 | |||
| 1163 | If the directory contains many image files and becayse thumbnails | ||
| 1164 | are created on the fly before they can be displayed, the above command | ||
| 1165 | might take a long time, especially the first time (consecutive | ||
| 1166 | viewings will use the cached thumbnail files). Also, if the number of | ||
| 1167 | image files is higher than @code{tumme-show-all-from-dir-max-files}, | ||
| 1168 | the command will be aborted. To work around this you can instead mark | ||
| 1169 | the files you want to look at, using @kbd{m} as usual in Dired, and | ||
| 1170 | then type @kbd{C-t d} (@code{tumme-display-thumbs}). | ||
| 1171 | |||
| 1172 | Regardless of which command you chose to display the thumbnails, a | ||
| 1173 | new buffer will open up, displaying thumbnail images of the files that | ||
| 1174 | were marked in dired. The new buffer will be the active one. | ||
| 1175 | |||
| 1176 | With point in the thumbnail buffer, type @kbd{RET} | ||
| 1177 | (@code{tumme-display-thumbnail-original-image}) to display a sized | ||
| 1178 | version of it in another window. The image will be sized to fit the | ||
| 1179 | window. Use the arrow keys to move around in the buffer. For easy | ||
| 1180 | browing, type @kbd{SPC} (@code{tumme-display-next-thumbnail-original}) | ||
| 1181 | to advance and display the next image. Typing @kbd{DEL} | ||
| 1182 | (@code{tumme-display-previous-thumbnail-original}) backs up to the | ||
| 1183 | previous thumbnail and displays that instead. | ||
| 1184 | |||
| 1185 | If you want to see the image in its original size, either provide a | ||
| 1186 | prefix argument (@kbd{C-u}) before pressing @kbd{RET}, or type | ||
| 1187 | @kbd{C-return} (@code{tumme-thumbnail-display-external}) to display | ||
| 1188 | the image in an external viewer. To use the latter, | ||
| 1189 | @code{tumme-external-viewer} must be configured. | ||
| 1190 | |||
| 1191 | If you find in image that you want to delete, type @kbd{d} | ||
| 1192 | (@code{tumme-flag-thumb-original-file}) and the file will be flagged | ||
| 1193 | for deletion in the dired buffer. If you just want visually to delete | ||
| 1194 | the thumbnail image from the thumbnail buffer, type @kbd{C-d} | ||
| 1195 | (@code{tumme-delete-char}). | ||
| 1196 | |||
| 1197 | More advanced features include commands for using ``tags''. ``Tag'' | ||
| 1198 | is just another word for ``keyword'', ``label'' or ``category''. In | ||
| 1199 | short, it is meta data used to categorize an image file. Commands | ||
| 1200 | exist to add tags for one or many image files from dired, to mark | ||
| 1201 | files having a certain tag in Dired and to remove tags from files. | ||
| 1202 | The tags put on image files are stored in a database file (currently a | ||
| 1203 | plain text file). | ||
| 1204 | |||
| 1205 | To tag image files, mark them in the dired buffer and type @kbd{C-t | ||
| 1206 | t} (@code{tumme-tag-files}). You will be prompted for a tag. To mark | ||
| 1207 | files having a certain tag, type @kbd{C-t f} | ||
| 1208 | (@code{tumme-mark-tagged-files}). After marking image files with a | ||
| 1209 | certain tag, they can be viewed as explained earlier, by typing | ||
| 1210 | @key{C-t d}. | ||
| 1211 | |||
| 1212 | You can also tag a file from the thumbnail buffer by typing @kbd{t | ||
| 1213 | t} and remove it by typing @kbd{t r}. There is also a special ``tag'' | ||
| 1214 | called ``comment'' for each file (it is not a tag in the exact same | ||
| 1215 | sense as the other tags, it is handled slightly different). That is | ||
| 1216 | used to enter a comment or description about the image. You comment a | ||
| 1217 | file from the thumbnail buffer by typing @kbd{c}. You will be | ||
| 1218 | prompted for a comment. Comments can also be added from Dired, and | ||
| 1219 | then also to multiple files at once, by typing @kbd{C-t c} | ||
| 1220 | (@code{tumme-dired-comment-files}). | ||
| 1221 | |||
| 1222 | Tumme also provides simple image manipulation commands, like | ||
| 1223 | rotating thumbnails and original image files. In the thumbnail | ||
| 1224 | buffer, type @kbd{L} to rotate the original image 90 degrees anti | ||
| 1225 | clockwise, and @kbd{R} to rotate it 90 degrees clockwise. This | ||
| 1226 | rotation will be done lossless (the image quality will not be reduced) | ||
| 1227 | and needs an external utility called JpegTRAN to work. | ||
| 1228 | |||
| 1229 | @node Misc Dired Features | 1159 | @node Misc Dired Features |
| 1230 | @section Other Dired Features | 1160 | @section Other Dired Features |
| 1231 | 1161 | ||
| 1162 | @kindex + @r{(Dired)} | ||
| 1163 | @findex dired-create-directory | ||
| 1164 | An unusual Dired file-operation command is @kbd{+} | ||
| 1165 | (@code{dired-create-directory}). This command reads a directory name, | ||
| 1166 | and creates the directory if it does not already exist. | ||
| 1167 | |||
| 1232 | @cindex Adding to the kill ring in Dired. | 1168 | @cindex Adding to the kill ring in Dired. |
| 1233 | @kindex w @r{(Dired)} | 1169 | @kindex w @r{(Dired)} |
| 1234 | @findex dired-copy-filename-as-kill | 1170 | @findex dired-copy-filename-as-kill |
| @@ -1236,16 +1172,18 @@ and needs an external utility called JpegTRAN to work. | |||
| 1236 | names of the marked (or next @var{n}) files into the kill ring, as if | 1172 | names of the marked (or next @var{n}) files into the kill ring, as if |
| 1237 | you had killed them with @kbd{C-w}. The names are separated by a space. | 1173 | you had killed them with @kbd{C-w}. The names are separated by a space. |
| 1238 | 1174 | ||
| 1175 | With a zero prefix argument, this uses the absolute file name of | ||
| 1176 | each marked file. With just @kbd{C-u} as the prefix argument, it uses | ||
| 1177 | file names relative to the Dired buffer's default directory. (This | ||
| 1178 | can still contain slashes if in a subdirectory.) As a special case, | ||
| 1179 | if point is on a directory headerline, @kbd{w} gives you the absolute | ||
| 1180 | name of that directory. Any prefix argument or marked files are | ||
| 1181 | ignored in this case. | ||
| 1182 | |||
| 1239 | The main purpose of this command is so that you can yank the file | 1183 | The main purpose of this command is so that you can yank the file |
| 1240 | names into arguments for other Emacs commands. It also displays what | 1184 | names into arguments for other Emacs commands. It also displays what |
| 1241 | was pushed onto the kill ring, so you can use it to display the list | 1185 | it added to the kill ring, so you can use it to display the list of |
| 1242 | of currently marked files in the echo area. With a zero prefix | 1186 | currently marked files in the echo area. |
| 1243 | argument, this uses the absolute file name of each marked file. With | ||
| 1244 | just @kbd{C-u} as the prefix argument, it uses file names relative to | ||
| 1245 | the Dired buffer's default directory. (This can still contain slashes | ||
| 1246 | if in a subdirectory.) As a special case, if point is on a directory | ||
| 1247 | headerline, @kbd{w} gives you the absolute name of that directory. | ||
| 1248 | Any prefix argument or marked files are ignored in this case. | ||
| 1249 | 1187 | ||
| 1250 | @findex dired-compare-directories | 1188 | @findex dired-compare-directories |
| 1251 | The command @kbd{M-x dired-compare-directories} is used to compare | 1189 | The command @kbd{M-x dired-compare-directories} is used to compare |