;ELC ;;; Compiled by cyd@localhost on Mon Apr 23 22:20:38 2007 ;;; from file /home/cyd/emacs/lisp/dired.el ;;; in Emacs version 22.0.99 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`dired.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301\302\303\304\305\306\307&\210\300\310\302\311\312\313\306\301&\207" [custom-declare-group dired nil "Directory editing." :link (custom-manual "(emacs)Dired") :group files dired-mark "Handling marks in Dired." :prefix "dired-"] 8) #@439 *Switches passed to `ls' for Dired. MUST contain the `l' option. May contain all other options that don't contradict `-l'; may contain even `F', `b', `i' and `s'. See also the variable `dired-ls-F-marks-symlinks' concerning the `F' switch. On systems such as MS-DOS and MS-Windows, which use `ls' emulation in Lisp, some of the `ls' switches are not supported; see the doc string of `insert-directory' in `ls-lisp.el' for more details. (custom-declare-variable 'dired-listing-switches '"-al" '(#$ . -810) :type 'string :group 'dired) #@109 If non-nil, switches passed to `ls' for inserting subdirectories. If nil, `dired-listing-switches' is used. (defvar dired-subdir-switches nil (#$ . 1353)) #@58 Name of chown command (usually `chown' or `/etc/chown'). (defvar dired-chown-program (byte-code "\301>\203\302\207\303\304!\203\304\207\305\207" [system-type (hpux dgux usg-unix-v irix linux gnu/linux cygwin) "chown" file-exists-p "/usr/sbin/chown" "/etc/chown"] 2) (#$ . 1514)) #@46 Non-nil means Dired should use `ls --dired'. (defvar dired-use-ls-dired (byte-code "\301\302\"??\207" [system-configuration string-match "gnu"] 3) (#$ . 1804)) #@42 Name of chmod command (usually `chmod'). (defvar dired-chmod-program "chmod" (#$ . 1971)) #@42 Name of touch command (usually `touch'). (defvar dired-touch-program "touch" (#$ . 2067)) #@602 *Informs Dired about how `ls -lF' marks symbolic links. Set this to t if `ls' (or whatever program is specified by `insert-directory-program') with `-lF' marks the symbolic link itself with a trailing @ (usually the case under Ultrix). Example: if `ln -s foo bar; ls -F bar' gives `bar -> foo', set it to nil (the default), if it gives `bar@ -> foo', set it to t. Dired checks if there is really a @ appended. Thus, if you have a marking `ls' program on one host and a non-marking on another host, and don't care about symbolic links which really end in a @, you can always set this variable to t. (custom-declare-variable 'dired-ls-F-marks-symlinks 'nil '(#$ . -2164) :type 'boolean :group 'dired-mark) #@151 *Regexp of files to skip when finding first file of a directory. A value of nil means move to the subdir line. A value of t means move to first file. (custom-declare-variable 'dired-trivial-filenames '"^\\.\\.?$\\|^#" '(#$ . -2878) :type '(choice (const :tag "Move to subdir" nil) (const :tag "Move to first" t) regexp) :group 'dired) #@205 *Controls marking of renamed files. If t, files keep their previous marks when they are renamed. If a character, renamed files (whether previously marked or not) are afterward marked with that character. (custom-declare-variable 'dired-keep-marker-rename 't '(#$ . -3220) :type '(choice (const :tag "Keep" t) (character :tag "Mark")) :group 'dired-mark) #@192 *Controls marking of copied files. If t, copied files are marked if and as the corresponding original files were. If a character, copied files are unconditionally marked with that character. (custom-declare-variable 'dired-keep-marker-copy '67 '(#$ . -3581) :type '(choice (const :tag "Keep" t) (character :tag "Mark")) :group 'dired-mark) #@184 *Controls marking of newly made hard links. If t, they are marked if and as the files linked to were marked. If a character, new links are unconditionally marked with that character. (custom-declare-variable 'dired-keep-marker-hardlink '72 '(#$ . -3928) :type '(choice (const :tag "Keep" t) (character :tag "Mark")) :group 'dired-mark) #@188 *Controls marking of newly made symbolic links. If t, they are marked if and as the files linked to were marked. If a character, new links are unconditionally marked with that character. (custom-declare-variable 'dired-keep-marker-symlink '89 '(#$ . -4271) :type '(choice (const :tag "Keep" t) (character :tag "Mark")) :group 'dired-mark) #@269 *If non-nil, Dired tries to guess a default target directory. This means: if there is a dired buffer displayed in the next window, use its current subdir, instead of the current subdir of this dired buffer. The target is used in the prompt for file copy, rename etc. (custom-declare-variable 'dired-dwim-target 'nil '(#$ . -4617) :type 'boolean :group 'dired) #@104 *If non-nil, Dired preserves the last-modified time in a file copy. (This works on only some systems.) (custom-declare-variable 'dired-copy-preserve-time 't '(#$ . -4985) :type 'boolean :group 'dired) (byte-code "\300\301\302\"\210\300\303\304\"\207" [defvaralias dired-free-space-program directory-free-space-program dired-free-space-args directory-free-space-args] 3) #@87 Run after loading Dired. You can customize key bindings or load extensions with this. (custom-declare-variable 'dired-load-hook 'nil '(#$ . 5361) :group 'dired :type 'hook) #@38 Run at the very end of `dired-mode'. (custom-declare-variable 'dired-mode-hook 'nil '(#$ . 5540) :group 'dired :type 'hook) #@74 This hook is run before a dired buffer is read in (created or reverted). (custom-declare-variable 'dired-before-readin-hook 'nil '(#$ . 5670) :group 'dired :type 'hook) #@165 Hook run after each time a file or directory is read by Dired. After each listing of a file or directory, this hook is run with the buffer narrowed to the listing. (custom-declare-variable 'dired-after-readin-hook 'nil '(#$ . 5846) :group 'dired :type 'hook) #@209 The functions to call when a drop in `dired-mode' is made. See `dnd-protocol-alist' for more information. When nil, behave as in other buffers. Changing this option is effective only for new dired buffers. (custom-declare-variable 'dired-dnd-protocol-alist ''(("^file:///" . dired-dnd-handle-local-file) ("^file://" . dired-dnd-handle-file) ("^file:" . dired-dnd-handle-local-file)) '(#$ . 6112) :type '(choice (repeat (cons (regexp) (function))) (const :tag "Behave as in other buffers" nil)) :version "22.1" :group 'dired) #@112 In Dired, the current mark character. This is what the do-commands look for, and what the mark-commands store. (defvar dired-marker-char 42 (#$ . 6646)) #@44 Character used to flag files for deletion. (defvar dired-del-marker 68 (#$ . 6805)) #@73 Non-nil means Dired shrinks the display buffer to fit the marked files. (defvar dired-shrink-to-fit t (#$ . 6895)) (byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list dired-flagging-regexp default-boundp set-default nil] 3) #@272 The directory name or wildcard spec that this dired directory lists. Local to each dired buffer. May be a list, in which case the car is the directory name and the cdr is the list of files to mention. The directory name must be absolute, but need not be fully expanded. (defvar dired-directory nil (#$ . 7155)) #@72 The value of `dired-listing-switches' used to make this buffer's text. (defvar dired-actual-switches nil (#$ . 7473)) #@72 Regexp for optional initial inode and file size as made by `ls -i -s'. (defvar dired-re-inode-size "[0-9 ]*" (#$ . 7597)) (byte-code "\303B\304\303!\204\305\303\306\"\210\301B\304\301!\204\305\301\307\"\210\310B\304\310!\2040\305\310 \n\311Q\"\210\312B\304\312!\204B\305\312 \n\313Q\"\210\314B\304\314!\204U\305\314\315\316\317\320#\"\210\321B\304\321!\204d\305\321\322\"\210\323B\304\323!\204s\305\323\324\"\210\303\207" [current-load-list dired-re-maybe-mark dired-re-inode-size dired-re-mark default-boundp set-default "^[^ \n]" "^. " dired-re-dir "d[^:]" dired-re-sym "l[^:]" dired-re-exe mapconcat #[(x) " \nQ\207" [dired-re-maybe-mark dired-re-inode-size x] 3] ("-[-r][-w][xs][-r][-w].[-r][-w]." "-[-r][-w].[-r][-w][xs][-r][-w]." "-[-r][-w].[-r][-w].[-r][-w][xst]") "\\|" dired-re-perms "[-bcdlps][-r][-w].[-r][-w].[-r][-w]." dired-re-dot "^.* \\.\\.?/?$"] 6) #@237 Association list of subdirectories and their buffer positions. Each subdirectory has an element: (DIRNAME . STARTMARKER). The order of elements is the reverse of the order in the buffer. In simple cases, this list contains one element. (defvar dired-subdir-alist nil (#$ . 8495)) #@117 Keeps track of which switches to use for inserted subdirectories. This is an alist of the form (SUBDIR . SWITCHES). (defvar dired-switches-alist nil (#$ . 8782)) (byte-code "\300\301!\210\302\303\304\"\207" [make-variable-buffer-local dired-switches-alist defvaralias dired-move-to-filename-regexp directory-listing-before-filename-regexp] 3) #@278 Regexp matching a maybe hidden subdirectory line in `ls -lR' output. Subexpression 1 is the subdirectory proper, no trailing colon. The match starts at the beginning of the line and ends after the end of the line (\n or \r). Subexpression 2 must end right before the \n or \r. (defvar dired-subdir-regexp "^. \\([^\n ]+\\)\\(:\\)[\n ]" (#$ . 9132)) (byte-code "\300\301\302\303\304\305\304\306&\210\307\310\311\312\304\301\313\314&\207" [custom-declare-group dired-faces nil "Faces used by Dired." :group dired faces custom-declare-face dired-header ((t (:inherit font-lock-type-face))) "Face used for directory headers." :version "22.1"] 8) #@39 Face name used for directory headers. (defvar dired-header-face 'dired-header (#$ . 9782)) (custom-declare-face 'dired-mark '((t (:inherit font-lock-constant-face))) "Face used for dired marks." :group 'dired-faces :version "22.1") #@33 Face name used for dired marks. (defvar dired-mark-face 'dired-mark (#$ . 10020)) (custom-declare-face 'dired-marked '((t (:inherit font-lock-warning-face))) "Face used for marked files." :group 'dired-faces :version "22.1") #@34 Face name used for marked files. (defvar dired-marked-face 'dired-marked (#$ . 10251)) (custom-declare-face 'dired-flagged '((t (:inherit font-lock-warning-face))) "Face used for flagged files." :group 'dired-faces :version "22.1") #@35 Face name used for flagged files. (defvar dired-flagged-face 'dired-flagged (#$ . 10489)) (custom-declare-face 'dired-warning '((t (:inherit font-lock-comment-face))) "Face used to highlight a part of a buffer that needs user attention." :group 'dired-faces :version "22.1") #@66 Face name used for a part of a buffer that needs user attention. (defvar dired-warning-face 'dired-warning (#$ . 10770)) (custom-declare-face 'dired-directory '((t (:inherit font-lock-function-name-face))) "Face used for subdirectories." :group 'dired-faces :version "22.1") #@36 Face name used for subdirectories. (defvar dired-directory-face 'dired-directory (#$ . 11051)) (custom-declare-face 'dired-symlink '((t (:inherit font-lock-keyword-face))) "Face used for symbolic links." :group 'dired-faces :version "22.1") #@36 Face name used for symbolic links. (defvar dired-symlink-face 'dired-symlink (#$ . 11298)) (custom-declare-face 'dired-ignored '((t (:inherit shadow))) "Face used for files suffixed with `completion-ignored-extensions'." :group 'dired-faces :version "22.1") #@73 Face name used for files suffixed with `completion-ignored-extensions'. (defvar dired-ignored-face 'dired-ignored (#$ . 11562)) #@52 Additional expressions to highlight in Dired mode. (defvar dired-font-lock-keywords (byte-code "\306D \307D\310\311\n!\312Q\313D\310\311 !\312Q\314D\f \315Q\316D\f \317Q\320D\321D\322D\323\324\257\n\207" [dired-subdir-regexp dired-re-mark dired-marker-char dired-del-marker dired-re-maybe-mark dired-re-inode-size (1 dired-header-face) (0 dired-mark-face) "^[" char-to-string "]" (".+" (dired-move-to-filename) nil (0 dired-marked-face)) (".+" (dired-move-to-filename) nil (0 dired-flagged-face)) "[-d]....\\(w\\)...." (1 dired-warning-face) "[-d].......\\(w\\)." (1 dired-warning-face) (".+" (dired-move-to-filename) nil (0 dired-directory-face)) (".+" (dired-move-to-filename) nil (0 dired-symlink-face)) (eval list (concat "\\(" (regexp-opt completion-ignored-extensions) "\\|#\\)$") '(".+" (dired-move-to-filename) nil (0 dired-ignored-face))) (eval list (concat "\\(" (regexp-opt completion-ignored-extensions) "\\|#\\)[*=|]$") '(".+" (progn (end-of-line) (unless (get-text-property (1- (point)) 'mouse-face) (dired-move-to-filename))) nil (0 dired-ignored-face))) dired-re-dir dired-re-sym] 10) (#$ . 11696)) #@317 Mark all files for which PREDICATE evals to non-nil. PREDICATE is evaluated on each line, with point at beginning of line. MSG is a noun phrase for the type of files being marked. It should end with a noun that can be pluralized by adding `s'. Return value is the number of files marked, or nil if none were marked. (defalias 'dired-mark-if '(macro . #[(predicate msg) "\302\303\304\305\306\307\310EE\311\312\313\306 \314BB\315BBB\306\307\316\317\320BBBBE\257\321BBB\207" [msg predicate let (buffer-read-only count) save-excursion (setq count 0) if message "Marking %ss..." (goto-char (point-min)) while (not (eobp)) ((progn (delete-char 1) (insert dired-marker-char) (setq count (1+ count)))) ((forward-line 1)) "%s %s%s %s%s." count ((dired-plural-s count) (if (eq dired-marker-char 32) "un" "") (if (eq dired-marker-char dired-del-marker) "flagged" "marked")) ((and (> count 0) count))] 14 (#$ . 12823)])) #@1055 Eval BODY with point on each marked line. Return a list of BODY's results. If no marked file could be found, execute BODY on the current line. If ARG is an integer, use the next ARG (or previous -ARG, if ARG<0) files instead of the marked files. In that case point is dragged along. This is so that commands on the next ARG (instead of the marked) files can be chained easily. If ARG is otherwise non-nil, use current file instead. If optional third arg SHOW-PROGRESS evaluates to non-nil, redisplay the dired buffer after each file is processed. No guarantee is made about the position on the marked line. BODY must ensure this itself if it depends on this. Search starts at the beginning of the buffer, thus the car of the list corresponds to the line nearest to the buffer's bottom. This is also true for (positive and negative) integer values of ARG. BODY should not be too long as it is expanded four times. If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file, return (t FILENAME) instead of (FILENAME). (defalias 'dired-map-over-marks '(macro . #[(body arg &optional show-progress distinguish-one-marked) "\304\305\306\307\307\310D\311\312\313\314\315\307 \316BB\317\320\321\n\322BBEFDE\307\323\324BB\325BBE\326\nDF\305\327\330\331\332\333\334\335\307 \336BB\317\320\321\n\337BBE\340BBBBBF\307\341 \342BB\343BB\307\344\320\326\nDF\257FE\345BB\207" [arg show-progress body distinguish-one-marked prog1 let (buffer-read-only case-fold-search found results) if integerp progn dired-repeat-over-lines function lambda nil ((sit-for 0)) setq results cons (results) < (0) ((nreverse results) results) list ((regexp (dired-marker-regexp)) next-position) save-excursion (goto-char (point-min)) (setq next-position (and (re-search-forward regexp nil t) (point-marker)) found (not (null next-position))) while next-position (goto-char next-position) ((sit-for 0)) (results) ((goto-char next-position) (forward-line 1) (set-marker next-position nil) (setq next-position (and (re-search-forward regexp nil t) (point-marker)))) and ((= (length results) 1)) ((setq results (cons t results))) found ((dired-move-to-filename))] 20 (#$ . 13745)])) #@762 Return the marked files' names as list of strings. The list is in the same order as the buffer, that is, the car is the first marked file. Values returned are normally absolute file names. Optional arg LOCALP as in `dired-get-filename'. Optional second argument ARG specifies files near point instead of marked files. If ARG is an integer, use the next ARG files. If ARG is otherwise non-nil, use file. Usually ARG comes from the command's prefix arg. Optional third argument FILTER, if non-nil, is a function to select some of the files--those for which (funcall FILTER FILENAME) is non-nil. If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file, return (t FILENAME) instead of (FILENAME). Don't use that together with FILTER. (defalias 'dired-get-marked-files #[(&optional localp arg filter distinguish-one-marked) "\212\306\211\211\211\f\203-\f\250\203&\307\f\310\"\210\f\311W\203\"\237\202\224\202\224\312 !C\202\224\313 \306\212eb\210\314\306\315#\205C\316 \211??\203vb\210\312 !Bb\210\317y\210\306\211\223\210\314\306\315#\205p\316 \211\204N)\203\207G\317U\203\207\315B \203\217\202\223\312 !C*,\320 \210)\306\204\273\203\265@\315=\203\265\202\346\237\202\346\306\211\203\343@!\203\332BA\211\204\306**\207" [results found case-fold-search buffer-read-only arg localp nil dired-repeat-over-lines #[nil "\302! B\211\207" [localp results dired-get-filename] 2] 0 dired-get-filename dired-marker-regexp re-search-forward t point-marker 1 dired-move-to-filename next-position regexp distinguish-one-marked all-of-them result filter file #1=#:--cl-dolist-temp--] 5 (#$ . 15938)]) (defalias 'dired-read-dir-and-switches #[(str) "\304\205 \305\306 \"\307 \203\310\311\312\n\"\313 \313$\202#\314\311\312\n\"\313 \313$D!\207" [current-prefix-arg dired-listing-switches str default-directory reverse read-string "Dired listing switches: " next-read-file-uses-dialog-p read-directory-name format "Dired %s(directory): " nil read-file-name] 7]) #@799 "Edit" directory DIRNAME--delete, rename, print, etc. some files in it. Optional second argument SWITCHES specifies the `ls' options used. (Interactively, use a prefix argument to be able to specify SWITCHES.) Dired displays a list of files in DIRNAME (which may also have shell wildcards appended to select certain files). If DIRNAME is a cons, its first element is taken as the directory name and the rest as an explicit list of files to make directory entries for. \You can move around in it with the usual commands. You can flag files for deletion with \[dired-flag-file-deletion] and then delete them by typing \[dired-do-flagged-delete]. Type \[describe-mode] after entering Dired for more info. If DIRNAME is already in a dired buffer, that buffer is used without refresh. (defalias 'dired #[(dirname &optional switches) "\302\303 \"!\207" [dirname switches switch-to-buffer dired-noselect] 4 (#$ . 18020) (dired-read-dir-and-switches "")]) #@72 "Edit" directory DIRNAME. Like `dired' but selects in another window. (defalias 'dired-other-window #[(dirname &optional switches) "\302\303 \"!\207" [dirname switches switch-to-buffer-other-window dired-noselect] 4 (#$ . 18993) (dired-read-dir-and-switches "in other window ")]) #@64 "Edit" directory DIRNAME. Like `dired' but makes a new frame. (defalias 'dired-other-frame #[(dirname &optional switches) "\302\303 \"!\207" [dirname switches switch-to-buffer-other-frame dired-noselect] 4 (#$ . 19281) (dired-read-dir-and-switches "in other frame ")]) #@73 Like `dired' but returns the dired buffer as value, does not select it. (defalias 'dired-noselect #[(dir-or-list &optional switches) "\204 \306\211:\203@\202\307 ! \230\310\311\312 !!!\f\203-\313 !\n\2047\314 !\203;\307 !:\203H AB\202J \315 \"*\207" [dir-or-list default-directory initially-was-dirname dirname find-file-visit-truename switches nil file-name-as-directory abbreviate-file-name expand-file-name directory-file-name file-truename file-directory-p dired-internal-noselect] 4 (#$ . 19558)]) (defalias 'dired-directory-changed-p #[(dirname) "\303!\304  \305=\206\n@\306=?\206\307\n8 \232*?\207" [dirname modtime attributes file-attributes visited-file-modtime 0 t 5] 2]) #@186 Return non-nil if current dired buffer needs updating. If NOCONFIRM is non-nil, then this function always returns nil for a remote directory. This feature is used by Auto Revert Mode. (defalias 'dired-buffer-stale-p #[(&optional noconfirm) ":\203\n@\202 \211;\205%\n\205\303 !?\205%\304 !\205%\305 !)\207" [dired-directory dirname noconfirm file-remote-p file-readable-p dired-directory-changed-p] 3 (#$ . 20283)]) (defalias 'dired-internal-noselect #[(dir-or-list &optional switches mode) "\306\211\306p\f:\203\f@\202\f\307 \"\211? \204+\310\311\312!!) q\210\n\204R\203B\f\313!\210\202\203\314!\203\203\315\316\317\320!\"\210\202\203\321!\204` \203j \210\202p\322\f\"\210\323\324\216\325 \210\306*eb\210\326!\210 q\210 ,\207" [dirname buffer new-buffer-p old-buf dir-or-list mode nil dired-find-buffer-nocreate fundamental-mode create-file-buffer directory-file-name dired-sort-other dired-directory-changed-p message "%s" substitute-command-keys "Directory has changed on disk; type \\[revert-buffer] to update Dired" file-name-directory dired-mode t ((byte-code "\203\302 !\210\302\207" [failed buffer kill-buffer] 2)) dired-readin dired-initial-position default-major-mode switches dired-directory default-directory dired-listing-switches failed] 5]) #@67 Alist of expanded directories and their associated dired buffers. (defvar dired-buffers nil (#$ . 21609)) (defalias 'dired-find-buffer-nocreate #[(dirname &optional mode) "\306!\307 \f\204\310\n\203W\311\n@A!\204!\nA\211\202\212\n@Aq\210 \f=\203P\n\203P\306\n:\203@\n@\202B\n!\232\203P\n@A\307\202S\nA)\202 *\207" [dirname dired-buffers blist found mode major-mode expand-file-name nil dired-mode buffer-name dired-directory] 4]) #@204 Read in a new dired buffer. Differs from `dired-insert-subdir' in that it accepts wildcards, erases the buffer, and builds the subdir-alist anew (including making it buffer-local and clearing it first). (defalias 'dired-readin #[nil "\306 :\203 @\202 \307!\212\310\311!\210\n:\203\306\312\304!\210 \206(\f\306\313~\210\314 \210\315 \210*eb\210\312\316!\210\306\317 \210\320!\211@\313=\203V\321\3228!\210)\323\306!\210\310\324!*\207" [dirname dired-directory buffer-undo-list coding-system-for-read file-name-coding-system buffer-read-only nil expand-file-name run-hooks dired-before-readin-hook make-local-variable t erase-buffer dired-readin-insert dired-subdir-alist dired-build-subdir-alist file-attributes set-visited-file-modtime 5 set-buffer-modified-p dired-after-readin-hook attributes] 4 (#$ . 22074)]) (defalias 'dired-readin-insert #[nil "\304\211\n:\203\n@\nA\202\n\304\305 !\306 !\307\232\2030\2040\310 \304\211\311%\202I\312\313\314 !!!\204A\315\316 \"\202I\310 \211?\311%*\207" [file-list dir dired-directory dired-actual-switches nil expand-file-name file-name-nondirectory "" dired-insert-directory t file-readable-p directory-file-name file-name-directory error "Directory %s inaccessible or nonexistent"] 6]) #@115 Align the fields of a file to the ones of surrounding lines. BEG..END is the line where the file info is located. (defalias 'dired-align-file #[(beg end) "\212\306\211\211\211\fb\210\307\306 \"\211\205.i\211\205.\fb\203,\310\311y!\203,\307 \206:\fb\205:\310\312y!\205:\307 \211\205.i\211\205. U?\205.\nV\205. W\203x\fb\203x\310\312y!\203x\307 \203xi\211W\203w`) V\203\202\313 !\313 !\fb\210\314\306w\210\nV\203* `V\203*i\315\316!\212 b\210\317!\210\315`Sf\320=\203\267\321\202\270\322\205\276\323P!\205\310\324\225\324\224Z)\204\325\202\347\205\347\212\325\306w\210iZZ)\211\203\324V\203\n\\\211V\203\nZZ\326\320\"\210\212\307 \327 !)=\204\330[!\210,\325\306w\210\314\306w\210\202\215 \306\211\223-\207" [other-col other file-col file beg end nil dired-move-to-filename zerop -1 1 copy-marker " " looking-at "[0-9]" move-to-column 32 " *" "[^ ]* *" "[0-9][^ ]*" 0 "^ " insert-char marker-position delete-char alt-col curcol num-align align-pt-offset spaces] 5 (#$ . 23353)]) #@384 Insert a directory listing of DIR, Dired style. Use SWITCHES to make the listings. If FILE-LIST is non-nil, list only those files. Otherwise, if WILDCARD is non-nil, expand wildcards; in that case, DIR should be a file name that uses wildcards. In other cases, DIR should be a directory name or a directory filename. If HDR is non-nil, insert a header line with the directory name. (defalias 'dired-insert-directory #[(dir switches &optional file-list wildcard hdr) "`\306!\307 \204\310\f!\203\311 P&\203J&\307'\211(\203F(@'`)\312' \307\211$\210\313)`\"\210)(A\211(\204&*\202S\312\f *\211?$\210\314\315+\"\204\233\212\316 \nb\210\317\320 \321#\203z\322\323\324\325\326\327\224!#\307\321#\210\202b\nb\210\317\330 \321#\203\225\322\323\324\331\326\327\224!#\307\321#\210\202} \307\211\223\210)\332\n`\"\210\212\nb\210\333\334!)\204\265\307,\335\n`\336#\210)\212\nb\210-\204\303*\203\323\333\337!\204\323\334\340\341\f!!\342\261\210*\205\337\343\344\f!\345\261,\207" [process-environment end opoint dired-use-ls-dired dir switches copy-sequence nil file-remote-p "--dired " insert-directory dired-align-file string-match "b" point-marker search-forward "\\" t replace-match apply propertize "\\\\" text-properties-at 0 " " "\\015" dired-insert-set-properties looking-at " " indent-rigidly 2 "^ /.*:$" directory-file-name file-name-directory ":\n" " wildcard " file-name-nondirectory "\n" file-list f #1=#:--cl-dolist-temp-- beg wildcard dired-actual-switches indent-tabs-mode hdr] 6 (#$ . 24428)]) #@58 Make the file names highlight when the mouse is on them. (defalias 'dired-insert-set-properties #[(beg end) "\212b\210` W\205\302\303\304\217\210\305y\210\202)\207" [beg end nil (byte-code "\300 \203\301`\212\302 \210`)\303#\210\300\207" [dired-move-to-filename add-text-properties dired-move-to-end-of-filename (mouse-face highlight help-echo "mouse-2: visit this file in other window")] 4) ((error)) 1] 3 (#$ . 25976)]) #@188 Reread the dired buffer. Must also be called after `dired-actual-switches' have changed. Should not fail even on completely garbaged buffers. Preserves old cursor, marks/flags, hidden-p. (defalias 'dired-revert #[(&optional arg noconfirm) "~\210\306 `\307\310\311\"\310\312 \313!A\310\211eb\210\314ed\"\315:\2032@\2024!\210\310\316 \210\317 !\210)\320 !\210\321\322!\210\203U\323!\204Yb\210\324 \210\212\f\310\211\203\200@\325!\203w\326\327!\210A\211\204g+?\205\212\330\310!.\207" [dired-subdir-alist buffer-read-only case-fold-search old-subdir-alist hidden-subdirs mark-alist buffer-modified-p dired-get-filename nil t dired-remember-hidden reverse dired-remember-marks dired-uncache dired-readin dired-insert-old-subdirs dired-mark-remembered run-hooks dired-after-readin-hook dired-goto-file dired-move-to-filename dired-goto-subdir dired-hide-subdir 1 restore-buffer-modified-p ofile opoint modflag dired-directory dir #1=#:--cl-dolist-temp--] 8 (#$ . 26412)]) #@57 Return alist of files and their marks, from BEG to END. (defalias 'dired-remember-marks #[(beg end) "\203\306\307\n \310\311$\210)\306\211\211 \212\nb\210\312 \313#\2038\314\306\313\"\211 \203h B\fB\202)\f+\207" [selective-display buffer-read-only beg end alist chr nil subst-char-in-region 13 10 re-search-forward t dired-get-filename fil dired-re-mark] 5 (#$ . 27436)]) #@91 Mark all files remembered in ALIST. Each element of ALIST looks like (FILE . MARKERCHAR). (defalias 'dired-mark-remembered #[(alist) "\304\211\211 \205+ @ A\n@\nA\305 !\203\212\306 \210\307\310!\210c\210)\202+\207" [chr fil elt alist nil dired-goto-file beginning-of-line delete-char 1] 3 (#$ . 27833)]) #@53 Return a list of names of subdirs currently hidden. (defalias 'dired-remember-hidden #[nil "\305\211\211\f\203+\f@@\f@A\fA\nb\210\306\305w\210g\307=\203 B\202 ,\207" [dired-subdir-alist result pos dir l nil "^ \n" 13] 4 (#$ . 28156)]) #@116 Try to insert all subdirs that were displayed before. Do so according to the former subdir alist OLD-SUBDIR-ALIST. (defalias 'dired-insert-old-subdirs #[(old-subdir-alist) "\304\305\"\206!\306\211 \205 @ A\n@\306\307\310\217\210\202 *\207" [dired-actual-switches dir elt old-subdir-alist string-match "R" nil (byte-code "\301!\210\302!\207" [dir dired-uncache dired-insert-subdir] 2) ((error))] 3 (#$ . 28413)]) #@48 Remove directory DIR from any directory cache. (defalias 'dired-uncache #[(dir) "\302\303\"\211\205 \303\")\207" [dir handler find-file-name-handler dired-uncache] 4 (#$ . 28843)]) #@40 Local keymap for `dired-mode' buffers. (defvar dired-mode-map (byte-code "\301 \302!\210\303\304\305#\210\303\306\307#\210\303\310\311#\210\303\312\313#\210\303\314\315#\210\303\316\317#\210\303\320\321#\210\303\322\323#\210\303\324\325#\210\303\326\327#\210\303\330\331#\210\303\332\333#\210\303\334\335#\210\303\336\337#\210\303\340\341#\210\303\342\343#\210\303\344\345#\210\303\346\347#\210\303\350\351#\210\303\352\353#\210\303\354\355#\210\303\356\357#\210\303\360\355#\210\303\361\362#\210\303\363\364#\210\303\365\366#\210\303\367\370#\210\303\371\372#\210\303\373\374#\210\303\375\376#\210\303\377\201@#\210\303\201A\201B#\210\303\201C\201D#\210\303\201E\201F#\210\303\201G\201H#\210\303\201I\201J#\210\303\201K\201L#\210\303\201M\201N#\210\303\201O\201P#\210\303\201Q\201R#\210\303\201S\201T#\210\303\201U\201P#\210\303\201V\201W#\210\303\201X\201D#\210\303\201Y\201Z#\210\303\201[\201\\#\210\303\201]\201^#\210\303\201_\201N#\210\303\201`\201a#\210\303\201b\201c#\210\303\201d\201e#\210\303\201f\201g#\210\303\201h\366#\210\303\201i\201j#\210\303\201k\201j#\210\303\201l\201m#\210\303\201n\201B#\210\303\201o\201@#\210\303\201p\201q#\210\303\201r\201s#\210\303\201t\201u#\210\303\201v\201w#\210\303\201x\201w#\210\303\201y\201z#\210\303\201{\201|#\210\303\201}\201~#\210\303\201\201\200#\210\303\201\201\201\202#\210\303\201\203\201\204#\210\303\201\205\201\206#\210\303\201\207\201e#\210\303\201\210\201\211#\210\303\201\212\201\213#\210\303\201\214\201\215#\210\303\201\216\201\217#\210\303\201\220\201\221#\210\303\201\222\201\223#\210\303\201\224\201q#\210\303\201\225\201g#\210\303\201\226\201\227#\210\303\201\230\201\231#\210\303\201\232\201\233#\210\303\201\234\201\235#\210\303\201\236\201\237#\210\303\201\240\201\241#\210\303\201\242\201\243#\210\303\201\244\201\245#\210\303\201\246\201\211#\210\303\201\247\201\211#\210\303\201\250\201\217#\210\303\201\251\201\211#\210\303\201\252\201\217#\210\303\201\253\201\254#\210\303\201\255\201\256#\210\303\201\257\201\260#\210\303\201\261\201m#\210\303\201\262\201\263#\210\303\201\264\201\263#\210\303\201\265\201\266#\210\303\201\267\201\270#\210\303\201\271\201\272#\210\303\201\273\201\274#\210\303\201\275\201\276#\210\303\201\277\201\300#\210\303\201\301\201\302#\210\303\201\303\201\304#\210\303\201\305\201\306#\210\303\201\307\201\310#\210\303\201\311\201\312#\210\303\201\313\201\314#\210\303\201\315\201\316\201\317\201\316!B#\210\303\201\320\201\321#\210\303\201\322\201\323#\210\303\201\324\201\325#\210\303\201\326\201\327#\210\303\201\330\201\331#\210\303\201\332\201\333#\210\303\201\334\201\335#\210\303\201\336\201\337#\210\303\201\340\201\341#\210\303\201\342\201\343#\210\303\201\344\201\345\201\317\201\345!B#\210\303\201\346\201\347#\210\303\201\350\201\351#\210\303\201\352\201\353#\210\303\201\354\201\355#\210\303\201\356\201\357#\210\303\201\360\201\361#\210\303\201\362\201\363#\210\303\201\364\201\365#\210\303\201\366\201\367#\210\303\201\370\201\371#\210\303\201\372\201\373#\210\303\201\374\201\375#\210\303\201\376\201\377#\210\303\201\201#\210\303\201\201\201\317\201!B#\210\303\201\201#\210\303\201\201#\210\303\201\201 #\210\303\201\n\201 #\210\303\201\f\201 #\210\303\201\201#\210\303\201\201#\210\303\201\201#\210\303\201\201#\210\303\201\201#\210\303\201\201#\210\303\201\201\201\317\201!B#\210\303\201\201#\210\303\201\201#\210\303\201 \201!#\210\303\201\"\201##\210\303\201$\201%#\210\303\201&\201'#\210\303\201(\201)#\210\303\201*\201+#\210\303\201,\201-#\210\303\201.\201/#\210\303\2010\2011#\210\303\2012\2013#\210\303\2014\2015#\210\303\2016\2017#\210\303\2018\2019#\210\303\201:\201;\201\317\201;!B#\210\303\201<\201=#\210\303\201>\201?#\210\303\201@\201A#\210\303\201B\201C#\210\303\201D\201E#\210\303\201F\201G#\210\303\201H\201I#\210\303\201J\201K#\210\303\201L\201M#\210\303\201N\201O#\210\303\201P\201Q#\210\303\201R\201S#\210\303\201T\201U#\210\303\201V\201W#\210\303\201X\201Y#\210\303\201Z\201[#\210\303\201\\\201]#\210\303\201^\201_#\210\303\201`\201a#\210\303\201b\201c#\210\303\201d\201e#\210\303\201f\201g#\210)\207" [map make-keymap suppress-keymap define-key [mouse-2] dired-mouse-find-file-other-window [follow-link] mouse-face "#" dired-flag-auto-save-files "." dired-clean-directory "~" dired-flag-backup-files "&" dired-flag-garbage-files "A" dired-do-search "C" dired-do-copy "B" dired-do-byte-compile "D" dired-do-delete "G" dired-do-chgrp "H" dired-do-hardlink "L" dired-do-load "M" dired-do-chmod "O" dired-do-chown "P" dired-do-print "Q" dired-do-query-replace-regexp "R" dired-do-rename "S" dired-do-symlink "T" dired-do-touch "X" dired-do-shell-command "Z" dired-do-compress "!" "=" dired-diff "\275" dired-backup-diff "\377" dired-unmark-all-files "\204" dired-tree-down "\225" dired-tree-up "\216" dired-next-subdir "\220" dired-prev-subdir "\373" dired-prev-marked-file "\375" dired-next-marked-file "%" nil "%u" dired-upcase "%l" dired-downcase "%d" dired-flag-files-regexp "%g" dired-mark-files-containing-regexp "%m" dired-mark-files-regexp "%r" dired-do-rename-regexp "%C" dired-do-copy-regexp "%H" dired-do-hardlink-regexp "%R" "%S" dired-do-symlink-regexp "*" "**" dired-mark-executables "*/" dired-mark-directories "*@" dired-mark-symlinks "*%" "*c" dired-change-marks "*s" dired-mark-subdir-files "*m" dired-mark "*u" dired-unmark "*?" "*!" dired-unmark-all-marks "U" "*" dired-unmark-backward "*" "*" "*t" dired-toggle-marks "a" dired-find-alternate-file "d" dired-flag-file-deletion "e" dired-find-file "f" " " dired-advertised-find-file "g" revert-buffer "h" describe-mode "i" dired-maybe-insert-subdir "j" dired-goto-file "k" dired-do-kill-lines "l" dired-do-redisplay "m" "n" dired-next-line "o" dired-find-file-other-window "" dired-display-file "p" dired-previous-line "q" quit-window "s" dired-sort-toggle-or-edit "t" "u" "v" dired-view-file "w" dired-copy-filename-as-kill "x" dired-do-flagged-delete "y" dired-show-file-type "+" dired-create-directory "<" dired-prev-dirline ">" dired-next-dirline "^" dired-up-directory " " "" "" [down] [up] "$" dired-hide-subdir "\244" dired-hide-all "?" dired-summary "" [remap undo] dired-undo [remap advertised-undo] "d" image-dired-display-thumbs "t" image-dired-tag-files "r" image-dired-delete-tag "j" image-dired-jump-thumbnail-buffer "i" image-dired-dired-display-image "x" image-dired-dired-display-external "a" image-dired-display-thumbs-append "." image-dired-display-thumb "c" image-dired-dired-comment-files "f" image-dired-mark-tagged-files "" image-dired-dired-insert-marked-thumbs "e" image-dired-dired-edit-comment-and-tags [menu-bar subdir] "Subdir" make-sparse-keymap [menu-bar subdir hide-all] (menu-item "Hide All" dired-hide-all :help "Hide all subdirectories, leave only header lines") [menu-bar subdir hide-subdir] (menu-item "Hide/UnHide Subdir" dired-hide-subdir :help "Hide or unhide current directory listing") [menu-bar subdir tree-down] (menu-item "Tree Down" dired-tree-down :help "Go to first subdirectory header down the tree") [menu-bar subdir tree-up] (menu-item "Tree Up" dired-tree-up :help "Go to first subdirectory header up the tree") [menu-bar subdir up] (menu-item "Up Directory" dired-up-directory :help "Edit the parent directory") [menu-bar subdir prev-subdir] (menu-item "Prev Subdir" dired-prev-subdir :help "Go to previous subdirectory header line") [menu-bar subdir next-subdir] (menu-item "Next Subdir" dired-next-subdir :help "Go to next subdirectory header line") [menu-bar subdir prev-dirline] (menu-item "Prev Dirline" dired-prev-dirline :help "Move to next directory-file line") [menu-bar subdir next-dirline] (menu-item "Next Dirline" dired-next-dirline :help "Move to previous directory-file line") [menu-bar subdir insert] (menu-item "Insert This Subdir" dired-maybe-insert-subdir :help "Insert contents of subdirectory") [menu-bar immediate] "Immediate" [menu-bar immediate image-dired-dired-display-external] (menu-item "Display Image Externally" image-dired-dired-display-external :help "Display image in external viewer") [menu-bar immediate image-dired-dired-display-image] (menu-item "Display Image" image-dired-dired-display-image :help "Display sized image in a separate window") [menu-bar immediate dashes-4] ("--") [menu-bar immediate revert-buffer] (menu-item "Refresh" revert-buffer :help "Update contents of shown directories") [menu-bar immediate dashes] ("--") [menu-bar immediate compare-directories] (menu-item "Compare Directories..." dired-compare-directories :help "Mark files with different attributes in two dired buffers") [menu-bar immediate backup-diff] (menu-item "Compare with Backup" dired-backup-diff :help "Diff file at cursor with its latest backup") [menu-bar immediate diff] (menu-item "Diff..." dired-diff :help "Compare file at cursor with another file") [menu-bar immediate view] (menu-item "View This File" dired-view-file :help "Examine file at cursor in read-only mode") [menu-bar immediate display] (menu-item "Display in Other Window" dired-display-file :help "Display file at cursor in other window") [menu-bar immediate find-file-other-window] (menu-item "Find in Other Window" dired-find-file-other-window :help "Edit file at cursor in other window") [menu-bar immediate find-file] (menu-item "Find This File" dired-find-file :help "Edit file at cursor") [menu-bar immediate create-directory] (menu-item "Create Directory..." dired-create-directory) [menu-bar immediate wdired-mode] (menu-item "Edit File Names" wdired-change-to-wdired-mode) [menu-bar regexp] "Regexp" [menu-bar regexp image-dired-mark-tagged-files] (menu-item "Mark From Image Tag..." image-dired-mark-tagged-files :help "Mark files whose image tags matches regexp") [menu-bar regexp dashes-1] ("--") [menu-bar regexp downcase] (menu-item "Downcase" dired-downcase :enable (or (not (fboundp 'msdos-long-file-names)) (msdos-long-file-names)) :help "Rename marked files to lower-case name") [menu-bar regexp upcase] (menu-item "Upcase" dired-upcase :enable (or (not (fboundp 'msdos-long-file-names)) (msdos-long-file-names)) :help "Rename marked files to upper-case name") [menu-bar regexp hardlink] (menu-item "Hardlink..." dired-do-hardlink-regexp :help "Make hard links for files matching regexp") [menu-bar regexp symlink] (menu-item "Symlink..." dired-do-symlink-regexp :visible (fboundp 'make-symbolic-link) :help "Make symbolic links for files matching regexp") [menu-bar regexp rename] (menu-item "Rename..." dired-do-rename-regexp :help "Rename marked files matching regexp") [menu-bar regexp copy] (menu-item "Copy..." dired-do-copy-regexp :help "Copy marked files matching regexp") [menu-bar regexp flag] (menu-item "Flag..." dired-flag-files-regexp :help "Flag files matching regexp for deletion") [menu-bar regexp mark] (menu-item "Mark..." dired-mark-files-regexp :help "Mark files matching regexp for future operations") [menu-bar regexp mark-cont] (menu-item "Mark Containing..." dired-mark-files-containing-regexp :help "Mark files whose contents matches regexp") [menu-bar mark] "Mark" [menu-bar mark prev] (menu-item "Previous Marked" dired-prev-marked-file :help "Move to previous marked file") [menu-bar mark next] (menu-item "Next Marked" dired-next-marked-file :help "Move to next marked file") [menu-bar mark marks] (menu-item "Change Marks..." dired-change-marks :help "Replace marker with another character") [menu-bar mark unmark-all] (menu-item "Unmark All" dired-unmark-all-marks) [menu-bar mark symlinks] (menu-item "Mark Symlinks" dired-mark-symlinks :visible (fboundp 'make-symbolic-link) :help "Mark all symbolic links") [menu-bar mark directories] (menu-item "Mark Directories" dired-mark-directories :help "Mark all directories except `.' and `..'") [menu-bar mark directory] (menu-item "Mark Old Backups" dired-clean-directory :help "Flag old numbered backups for deletion") [menu-bar mark executables] (menu-item "Mark Executables" dired-mark-executables :help "Mark all executable files") [menu-bar mark garbage-files] (menu-item "Flag Garbage Files" dired-flag-garbage-files :help "Flag unneeded files for deletion") [menu-bar mark backup-files] (menu-item "Flag Backup Files" dired-flag-backup-files :help "Flag all backup files for deletion") [menu-bar mark auto-save-files] (menu-item "Flag Auto-save Files" dired-flag-auto-save-files :help "Flag auto-save files for deletion") [menu-bar mark deletion] (menu-item "Flag" dired-flag-file-deletion :help "Flag current line's file for deletion") [menu-bar mark unmark] (menu-item "Unmark" dired-unmark :help "Unmark or unflag current line's file") [menu-bar mark mark] (menu-item "Mark" dired-mark :help "Mark current line's file for future operations") [menu-bar mark toggle-marks] (menu-item "Toggle Marks" dired-toggle-marks :help "Mark unmarked files, unmark marked ones") [menu-bar operate] "Operate" [menu-bar operate dashes-2] ("--") [menu-bar operate image-dired-delete-tag] (menu-item "Delete Image Tag..." image-dired-delete-tag :help "Delete image tag from current or marked files") [menu-bar operate image-dired-tag-files] (menu-item "Add Image Tags..." image-dired-tag-files :help "Add image tags to current or marked files") [menu-bar operate image-dired-dired-comment-files] (menu-item "Add Image Comment..." image-dired-dired-comment-files :help "Add image comment to current or marked files") [menu-bar operate image-dired-display-thumbs] (menu-item "Display Image-Dired" image-dired-display-thumbs :help "Display image-dired for current or marked image files") [menu-bar operate dashes-3] ("--") [menu-bar operate query-replace] (menu-item "Query Replace in Files..." dired-do-query-replace-regexp :help "Replace regexp in marked files") [menu-bar operate search] (menu-item "Search Files..." dired-do-search :help "Search marked files for regexp") [menu-bar operate chown] (menu-item "Change Owner..." dired-do-chown :visible (not (memq system-type '(ms-dos windows-nt))) :help "Change the owner of marked files") [menu-bar operate chgrp] (menu-item "Change Group..." dired-do-chgrp :visible (not (memq system-type '(ms-dos windows-nt))) :help "Change the group of marked files") [menu-bar operate chmod] (menu-item "Change Mode..." dired-do-chmod :help "Change mode (attributes) of marked files") [menu-bar operate touch] (menu-item "Change Timestamp..." dired-do-touch :help "Change timestamp of marked files") [menu-bar operate load] (menu-item "Load" dired-do-load :help "Load marked Emacs Lisp files") [menu-bar operate compile] (menu-item "Byte-compile" dired-do-byte-compile :help "Byte-compile marked Emacs Lisp files") [menu-bar operate compress] (menu-item "Compress" dired-do-compress :help "Compress/uncompress marked files") [menu-bar operate print] (menu-item "Print..." dired-do-print :help "Ask for print command and print marked files") [menu-bar operate hardlink] (menu-item "Hardlink to..." dired-do-hardlink :help "Make hard links for current or marked files") [menu-bar operate symlink] (menu-item "Symlink to..." dired-do-symlink :visible (fboundp 'make-symbolic-link) :help "Make symbolic links for current or marked files") [menu-bar operate command] (menu-item "Shell Command..." dired-do-shell-command :help "Run a shell command on each of marked files") [menu-bar operate delete] (menu-item "Delete" dired-do-delete :help "Delete current file or all marked files") [menu-bar operate rename] (menu-item "Rename to..." dired-do-rename :help "Rename current file or move marked files") [menu-bar operate copy] (menu-item "Copy to..." dired-do-copy :help "Copy current file or all marked files")] 6) (#$ . 29035)) (put 'dired-mode 'mode-class 'special) #@2954 Mode for "editing" directory listings. In Dired, you are "editing" a list of the files in a directory and (optionally) its subdirectories, in the format of `ls -lR'. Each directory is a page: use \[backward-page] and \[forward-page] to move pagewise. "Editing" means that you can run shell commands on files, visit, compress, load or byte-compile them, change their file attributes and insert subdirectories into the same buffer. You can "mark" files for later commands or "flag" them for deletion, either file by file or all files matching certain criteria. You can move using the usual cursor motion commands.\ Letters no longer insert themselves. Digits are prefix arguments. Instead, type \[dired-flag-file-deletion] to flag a file for Deletion. Type \[dired-mark] to Mark a file or subdirectory for later commands. Most commands operate on the marked files and use the current file if no files are marked. Use a numeric prefix argument to operate on the next ARG (or previous -ARG if ARG<0) files, or just `1' to operate on the current file only. Prefix arguments override marks. Mark-using commands display a list of failures afterwards. Type \[dired-summary] to see why something went wrong. Type \[dired-unmark] to Unmark a file or all files of a subdirectory. Type \[dired-unmark-backward] to back up one line and unflag. Type \[dired-do-flagged-delete] to eXecute the deletions requested. Type \[dired-advertised-find-file] to Find the current line's file (or dired it in another buffer, if it is a directory). Type \[dired-find-file-other-window] to find file or dired directory in Other window. Type \[dired-maybe-insert-subdir] to Insert a subdirectory in this buffer. Type \[dired-do-rename] to Rename a file or move the marked files to another directory. Type \[dired-do-copy] to Copy files. Type \[dired-sort-toggle-or-edit] to toggle Sorting by name/date or change the `ls' switches. Type \[revert-buffer] to read all currently expanded directories aGain. This retains all marks and hides subdirs again that were hidden before. SPC and DEL can be used to move down and up by lines. If Dired ever gets confused, you can either type \[revert-buffer] to read the directories again, type \[dired-do-redisplay] to relist a single or the marked files or a subdirectory, or type \[dired-build-subdir-alist] to parse the buffer again for the directory tree. Customization variables (rename this buffer and type \[describe-variable] on each line for more info): `dired-listing-switches' `dired-trivial-filenames' `dired-shrink-to-fit' `dired-marker-char' `dired-del-marker' `dired-keep-marker-rename' `dired-keep-marker-copy' `dired-keep-marker-hardlink' `dired-keep-marker-symlink' Hooks (use \[describe-variable] to see their documentation): `dired-before-readin-hook' `dired-after-readin-hook' `dired-mode-hook' `dired-load-hook' Keybindings: \{dired-mode-map} (defalias 'dired-mode #[(&optional dirname switches) "\306 \210\307!\210\310 \210\311\312\313\211\314\315!\316\317!\210\320\316\321!\210\322\316\323!\210\324\316\325!\210%\2066&\316\326!\210\327<\203I@\202K!\316\330!\210'\206Y(\316\331!\210\332\316\333!\210\334\335)\336\313\"\210\337\340!\203\204\316\341!\210\342*!\"!\343\344!\207" [dired-mode-map major-mode mode-name buffer-read-only selective-display mode-line-buffer-identification kill-all-local-variables use-local-map dired-advertise dired-mode "Dired" t propertized-buffer-identification "%17b" make-local-variable revert-buffer-function dired-revert buffer-stale-function dired-buffer-stale-p page-delimiter "\n\n" dired-directory list-buffers-directory expand-file-name dired-actual-switches font-lock-defaults (dired-font-lock-keywords t nil nil beginning-of-line) desktop-save-buffer dired-desktop-buffer-misc-data nil dired-sort-other featurep dnd dnd-protocol-alist append run-mode-hooks dired-mode-hook dirname default-directory switches dired-listing-switches dired-switches-alist dired-dnd-protocol-alist] 4 (#$ . 45151)]) #@62 Summarize basic Dired commands and show recent dired errors. (defalias 'dired-summary #[nil "\300 \210\301\302!\207" [dired-why message "d-elete, u-ndelete, x-punge, f-ind, o-ther window, R-ename, C-opy, h-elp"] 2 (#$ . 49245) nil]) #@161 Undo in a dired buffer. This doesn't recover lost files, it just undoes changes in the buffer itself. You can use it to recover marks, killed lines or subdirs. (defalias 'dired-undo #[nil "\301\302 \210)\303 \210\304\305!\207" [buffer-read-only nil undo dired-build-subdir-alist message "Change in dired buffer undone.\nActual changes in files cannot be undone by Emacs."] 2 (#$ . 49485) nil]) #@114 Move down lines then position at filename. Optional prefix ARG says how many lines to move; default is one line. (defalias 'dired-next-line #[(arg) "\301!\210\302 \207" [arg next-line dired-move-to-filename] 2 (#$ . 49887) "p"]) #@112 Move up lines then position at filename. Optional prefix ARG says how many lines to move; default is one line. (defalias 'dired-previous-line #[(arg) "\301!\210\302 \207" [arg previous-line dired-move-to-filename] 2 (#$ . 50124) "p"]) #@39 Goto ARG'th next directory file line. (defalias 'dired-next-dirline #[(arg &optional opoint) "\204` \303V\203\304\n\305\306 $\202\307 \210\310\n\305\306 [$\203%\311 \207b\210\312\313!\207" [opoint arg dired-re-dir 0 re-search-forward nil t beginning-of-line re-search-backward dired-move-to-filename error "No more subdirectories"] 5 (#$ . 50366) "p"]) #@43 Goto ARG'th previous directory file line. (defalias 'dired-prev-dirline #[(arg) "\301[!\207" [arg dired-next-dirline] 2 (#$ . 50735) "p"]) #@151 Run Dired on parent directory of current directory. Find the parent directory either in this buffer or another buffer. Creates a buffer if necessary. (defalias 'dired-up-directory #[(&optional other-window) "\304 \305\306!!\307\306!!\206.\nA\203\310 !\206. \203'\311 !\210\202+\312 !\210\307!*\207" [dir up dired-subdir-alist other-window dired-current-directory file-name-directory directory-file-name dired-goto-file dired-goto-subdir dired-other-window dired] 3 (#$ . 50882) "P"]) #@73 Get the current line's file name, with an error if file does not exist. (defalias 'dired-get-file-for-visit #[nil "\302\303\304\"\303\211\204\305\306!\210\307 \304\"\310!\203\202-\311!\203*\305\312!\202-\305\313!*\207" [file-name raw dired-get-filename nil t error "No file on this line" file-name-sans-versions file-exists-p file-symlink-p "File is a symlink to a nonexistent target" "File no longer exists; type `g' to update dired buffer"] 4 (#$ . 51383) nil]) (defalias 'dired-advertised-find-file 'dired-find-file) #@59 In Dired, visit the file or directory named on this line. (defalias 'dired-find-file #[nil "\301\302\303 !)\207" [find-file-run-dired t find-file dired-get-file-for-visit] 2 (#$ . 51922) nil]) #@69 In Dired, visit this file or directory instead of the dired buffer. (defalias 'dired-find-alternate-file #[nil "\300\301!\210\302\303 !\207" [set-buffer-modified-p nil find-alternate-file dired-get-file-for-visit] 2 (#$ . 52122) nil]) #@58 In Dired, visit the file or directory name you click on. (defalias 'dired-mouse-find-file-other-window #[(event) "\306\211\211\212 \211:\203\307 8:\203\307\202\310 8\202%\311 `\312\313F)\313\f8) \211:\203D\307 8:\203>\307\202?\310 8\202J\311 `\312\313F)\314\f8\206c\310\f8:\203`\310\f8@\202c\310\f8)\315\n!\204o\316\317!\210\320\n!q\210 b\210\321 )\322!\203\226 A\203\214\323!\206\240\324\n!\210\325!\202\240\324\n!\210\326\327\330\"!+\207" [file pos window event position dired-subdir-alist nil 2 1 selected-window (0 . 0) 0 5 windowp error "No file chosen" window-buffer dired-get-file-for-visit file-directory-p dired-goto-subdir select-window dired-other-window find-file-other-window file-name-sans-versions t] 5 (#$ . 52363) "e"]) #@179 In Dired, examine a file in view mode, returning to Dired when done. When file is a directory, show it in this buffer if it is inserted. Otherwise, display it in another buffer. (defalias 'dired-view-file #[nil "\302 \303!\203 A\203\304!\206\305!\202\306!)\207" [file dired-subdir-alist dired-get-file-for-visit file-directory-p dired-goto-subdir dired view-file] 2 (#$ . 53140) nil]) #@59 In Dired, visit this file or directory in another window. (defalias 'dired-find-file-other-window #[nil "\300\301 !\207" [find-file-other-window dired-get-file-for-visit] 2 (#$ . 53544) nil]) #@61 In Dired, display this file or directory in another window. (defalias 'dired-display-file #[nil "\300\301\302 !!\207" [display-buffer find-file-noselect dired-get-file-for-visit] 3 (#$ . 53742) nil]) #@571 In Dired, return name of file mentioned on this line. Value returned normally includes the directory name. Optional arg LOCALP with value `no-dir' means don't include directory name in result. A value of `verbatim' means to return the name exactly as it occurs in the buffer, and a value of t means construct name relative to `default-directory', which still may contain slashes if in a subdirectory. Optional arg NO-ERROR-IF-NOT-FILEP means treat `.' and `..' as regular filenames and return nil if no filename on this line. Otherwise, an error occurs in these cases. (defalias 'dired-get-filename #[(&optional localp no-error-if-not-filep) "\306\211\211\211\211\212\307 ?!\211\203\310 !)\n\205$ \205$\n {\211\203Q\311\312 G\306 $\210\313\314\315\316 \317\306\320%\206> \314Q! \203Q\321 !\204Q\322 ! \203e\323 !\203e \312H\324=\204e\320 \204m\306\202\364!\325=\203x \202\364 \204\210 \326\235\203\210\327\330!\202\364!\331=\203\231\203\231\332 !\202\364\203\271\333 \306\"\211\"\203\264\"\334N\204\264\335 P\202\265 )\202\364!\331=\203\304 \202\364\336 \337\232\203\356\336!! P\333 \306\"\211\"\203\351\"\334N\204\351\335 P\202\352 )\202\364\336!! P-\207" [already-absolute p2 p1 file case-fold-search no-error-if-not-filep nil dired-move-to-filename dired-move-to-end-of-filename set-text-properties 0 read "\"" dired-string-replace-match "\\([^\\]\\|\\`\\)\"" "\\1\\\\\"" t multibyte-string-p string-to-multibyte file-name-absolute-p 126 verbatim ("." "..") error "Cannot operate on `.' or `..'" no-dir file-name-nondirectory find-file-name-handler safe-magic "/:" dired-current-directory "/" enable-multibyte-characters localp handler] 9 (#$ . 53949)]) #@224 Replace first match of REGEXP in STRING with NEWTEXT. If it does not match, nil is returned instead of the new string. Optional arg LITERAL means to take NEWTEXT literally. Optional arg GLOBAL means to replace all matches. (defalias 'dired-string-replace-match #[(regexp string newtext &optional literal global) "\203-\306\307\310 \f\n#\203*\fG\306\225Z\311 \312\f\f$\211\fG Z)\202 *\207\310 \f\306#\205=\311 \312\f\f$\207" [global ret start regexp string from-end 0 nil string-match replace-match t newtext literal] 5 (#$ . 55671)]) (defalias 'dired-make-absolute #[(file &optional dir) "\206 \nP\207" [dir default-directory file] 2]) #@158 Convert FILE (an absolute file name) to a name relative to DIR. If this is impossible, return FILE unchanged. DIR must be a directory name, not a file name. (defalias 'dired-make-relative #[(file &optional dir ignore) "\204 G\303V\203\303H\304U\203\305!\306\307\310!P\n\"\203*\n\303\225\311O\207\n\207" [dir default-directory file 0 126 expand-file-name string-match "^" regexp-quote nil] 4 (#$ . 56333)]) #@62 Regular expression to match the permission flags in `ls -l'. (defvar dired-permission-flags-regexp "\\([^ ]\\)[-r][-w]\\([^ ]\\)[-r][-w]\\([^ ]\\)[-r][-w]\\([^ ]\\)" (#$ . 56759)) #@136 Move to the beginning of the filename on the current line. Return the position of the beginning of the filename, or nil if none found. (defalias 'dired-move-to-filename #[(&optional raise-error eol) "\204\305 \306 \210\307`\310\311$\211\203 W\203 b\202L\312\n\313#\203.\314\225b\202L\312 \313#\203E\f\203>\315\316!\210\306 \210\311\202L\f\205L\315\317!)\207" [eol change directory-listing-before-filename-regexp dired-permission-flags-regexp raise-error line-end-position beginning-of-line next-single-property-change dired-filename nil re-search-forward t 0 error "Unrecognized line! Check directory-listing-before-filename-regexp" "No file on this line"] 6 (#$ . 56946)]) (defalias 'dired-move-to-end-of-filename #[(&optional no-error) "\306`\307\"\203 \310`\307\"b\207\311\211\211\211\211\211\211\211 !\312\313\"\"`!\212\311\210`)#\205;\212\314\315\316#)\211\204\253\212\317$\311\316#\203h\320\224f\211 \321= \205d\312\322\323\324!\323\325!\323\326!Q\"\202q%\204q\327\330!\210)\f\203\226\314\331\316#\203\253\332u\210 \203\253&\203\253h\333=\203\253\334u\210\202\253b\210 \203\253 \335>\204\250 \203\253\334u\210%\204\305!`=\203\305\327 \203\302\336\337!\202\303\330!\210!`=?\205\316`.\207" [eol used-F case-fold-search hidden symlink executable get-text-property dired-filename next-single-property-change nil string-match "F" search-forward " " t re-search-backward 1 108 "[xst]" match-string 2 3 4 error "No file on this line" " -> " -4 64 -1 (100 115 112) substitute-command-keys "File line is hidden, type \\[dired-hide-subdir] to unhide" file-type opoint dired-actual-switches selective-display dired-permission-flags-regexp no-error dired-ls-F-marks-symlinks] 9]) #@507 Copy names of marked (or next ARG) files into the kill ring. The names are separated by a space. With a zero prefix arg, use the absolute file name of each marked file. With \[universal-argument], use the file name relative to the dired buffer's `default-directory'. (This still may contain slashes if in a subdirectory.) If on a subdir headerline, use absolute subdirname instead; prefix arg and marked files are ignored in this case. You can then feed the file name(s) to other commands with \[yank]. (defalias 'dired-copy-filename-as-kill #[(&optional arg) "\303 \2061\304\305\203,\306\307!!\203\310 \202/:\203#\310\311!\202/\310\312\307!\"\202/\310\312!\313#\n\314=\203@\315 \316\"\210\202D\317 !\210\320\321 \")\207" [arg string last-command dired-get-subdir mapconcat identity zerop prefix-numeric-value dired-get-marked-files t no-dir " " kill-region kill-append nil kill-new message "%s"] 6 (#$ . 58698) "P"]) (defalias 'dired-buffers-for-dir #[(dir &optional file) "\306! \307\211\211\211\203b @\211A\310\n!\203V\311 @\"\203[r\nq\210\312\"\203R\203N\313!\211G\314U\206J\315\316!\")\203R\n\fB)\202[\317 \" A\211\204\f,\207" [dir dired-buffers buf elt result alist file-name-as-directory nil buffer-name dired-in-this-tree assoc file-name-nondirectory 0 string-match dired-glob-regexp delq dired-subdir-alist file dired-directory wildcards] 5]) #@55 Convert glob-pattern PATTERN to a regular expression. (defalias 'dired-glob-regexp #[(pattern) "\306\307\310\311\n #\203w\306\225\n\306\224H\312\n \306\224O!P \313U\203-\314P\f\202s \315U\203g\306\224\n TH\316U\203E \317\\\202H \320\\\310\321\n#\n TOPT,\202s \322U\203s\323P\f*\202\324\312\n \307O!\325R*\207" [regexp matched-in-pattern pattern next-op op-end set-start 0 nil string-match "[[?*]" regexp-quote 63 "." 91 94 3 2 "]" 42 ".*" "\\`" "\\'" set-cont set-end set] 6 (#$ . 60110)]) (defalias 'dired-advertise #[nil "\303!p\304 !>\203\305\202 pB\nB\211)\207" [default-directory expanded-default dired-buffers expand-file-name dired-buffers-for-dir t] 3]) (defalias 'dired-unadvertise #[(dir) "\302\303\304! \" \"\211\207" [dir dired-buffers delq assoc expand-file-name] 4]) (defalias 'dired-in-this-tree #[(file dir) "\303\304\305\306 !P\n\")\207" [case-fold-search dir file nil string-match "^" regexp-quote] 4]) (defalias 'dired-normalize-subdir #[(dir) "\302\303!\203 \202\304 \"!\207" [dir default-directory file-name-as-directory file-name-absolute-p expand-file-name] 4]) (defalias 'dired-get-subdir #[nil "\212\302 \303 \210\304`\305\306 \"!Z!\205*\207" [cur-dir dired-subdir-alist dired-current-directory beginning-of-line zerop dired-get-subdir-min assoc] 6]) (defalias 'dired-get-subdir-min 'cdr) (defalias 'dired-get-subdir-max #[(elt) "\212\301!b\210\302 )\207" [elt dired-get-subdir-min dired-subdir-max] 2]) (defalias 'dired-clear-alist #[nil "\205\301@!\302\211\223\210A\211\204\302\207" [dired-subdir-alist dired-get-subdir-min nil] 4]) (defalias 'dired-subdir-index #[(dir) "\305\306 \203\"\f @@\230\203\305\307\202 A\nT\202 \205'\n+\207" [dired-subdir-alist alist index found dir nil 0 t] 3]) #@47 Go to next subdirectory, regardless of level. (defalias 'dired-next-subdir #[(arg &optional no-error-if-not-found no-skip) "\306 \307\211\310\n! Z\211\311Y\205\312\f8!\211\203, b\210 \204(\313\307w\210`\202@?\205@\314\315 \311V\203>\316\202?\317\"+\207" [index pos this-dir arg dired-subdir-alist no-skip dired-current-directory nil dired-subdir-index 0 dired-get-subdir-min "^\n " error "%s directory" "Last" "First" no-error-if-not-found] 5 (#$ . 61921) "p"]) #@174 Build `dired-subdir-alist' by parsing the buffer. Returns the new value of the alist. If optional arg SWITCHES is non-nil, use its value instead of `dired-actual-switches'. (defalias 'dired-build-subdir-alist #[(&optional switches) "\306 \210\212\307\310\311 \206\f\310\312\313 \"\205(\312\314\"\205(\315\316\317\"Peb\210\310\320 \310\311#\203\245\212\307\224b\210\321 \210\322u\210\323 !\324\216\325\"!+\2040\212\317\224b\210\326`\317\225\"\323 !\327\216\203\202 \230\204\202\312 \"\203\202 \307\225\310OP\202\205\330 !*`\317\225|\210 c\210)T\331 \212\307\224b\210\321 \210\332 )\"\210\2020\317V\203\264t\203\264\333\334\"\210.)\207" [count buffer-read-only buffer-undo-list switches dired-actual-switches new-dir-name dired-clear-alist 0 nil t string-match "R" "\\`/.*:\\(/.*\\)" "\\`" match-string 1 re-search-forward beginning-of-line 2 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at buffer-substring-no-properties ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) expand-file-name dired-alist-add-1 point-marker message "Buffer includes %d directories" default-directory R-ftp-base-dir-regex dired-subdir-alist dired-subdir-regexp save-match-data-internal dired-re-perms] 4 (#$ . 62406) nil]) (defalias 'dired-alist-add-1 #[(dir new-marker) "\303! B\nB\211\207" [dir new-marker dired-subdir-alist dired-normalize-subdir] 2]) (defalias 'dired-goto-next-nontrivial-file #[nil "\301 \210;\205&m?\205&\302\303\304\305\306\"\206\307!\"\205&\310y\210\311 \210\202\207" [dired-trivial-filenames dired-goto-next-file string-match file-name-nondirectory dired-get-filename nil t "" 1 dired-move-to-filename] 6]) (defalias 'dired-goto-next-file #[nil "\301 S\302 ?\205`W\205\303y\210\202)\207" [max dired-subdir-max dired-move-to-filename 1] 2]) #@55 Go to line describing file FILE in this dired buffer. (defalias 'dired-goto-file #[(file) "\306!\307\211\211\310!\206\311\312\"\212 \313\f!\230\203#eb\202+ A\203v\314 !\203v\315!\307\316 \317\320\321\307\322%\317\323\211\307\322% \204u\324\325P\326#\203u\327\330\322\"\232\203o\331 \211\202O\332y\210\202N+) \205} b+\207" [file dir case-fold-search found default-directory dired-subdir-alist directory-file-name nil file-name-directory error "File name `%s' is not absolute" expand-file-name dired-goto-subdir file-name-nondirectory dired-subdir-max replace-regexp-in-string " " "\\^m" t "\\\\" search-forward " " move dired-get-filename no-dir dired-move-to-filename 1 boundary search-string base] 7 (#$ . 64316) (byte-code "\300\301\302\303 \"!C\304 \210\207" [expand-file-name read-file-name "Goto file: " dired-current-directory push-mark] 4)]) (defalias 'dired-initial-position #[(dirname) "\301\210\205 \302 \207" [dired-trivial-filenames nil dired-goto-next-nontrivial-file] 1]) #@210 Return the name of the subdirectory to which this line belongs. This returns a string with trailing slash, like `default-directory'. Optional argument means return a file name relative to `default-directory'. (defalias 'dired-current-directory #[(&optional localp) "`\206 \306\307p\"\310\211 \203) @\211@\311\n!\fX?\205$ A\211\204 \2035\312  \"\2026 ,\207" [dired-subdir-alist dir elt alist here localp error "No subdir-alist in %s" nil dired-get-subdir-min dired-make-relative default-directory] 5 (#$ . 65354)]) (defalias 'dired-subdir-max #[nil "\212A\203\301\302\303\211#\204d\202`)\207" [dired-subdir-alist dired-next-subdir 1 t] 4]) #@289 *Decide whether recursive deletes are allowed. nil means no recursive deletes. `always' means delete recursively without asking. This is DANGEROUS! `top' means ask for each directory at top level, but delete its subdirectories without asking. Anything else means ask for each directory. (custom-declare-variable 'dired-recursive-deletes 'nil '(#$ . -66023) :type '(choice :tag "Delete non-empty directories" (const :tag "Yes" always) (const :tag "No--only delete empty directories" nil) (const :tag "Confirm for each directory" t) (const :tag "Confirm for each top directory only" top)) :group 'dired) (byte-code "\301B\302\301!\204\303\301\304\"\210\301\207" [current-load-list dired-re-no-dot default-boundp set-default "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*"] 3) #@310 Delete FILE or directory (possibly recursively if optional RECURSIVE is true.) RECURSIVE determines what to do with a non-empty directory. If RECURSIVE is: nil, do not delete. `always', delete recursively without asking. `top', ask for each directory at top level. Anything else, ask for each sub-directory. (defalias 'dired-delete-file #[(file &optional recursive) "\304\305 !@\306=\204\307 !\202L\n\203I\310 \306 #\211\203I\n\311=\2040\312\313\314\315 !\"!\203I\n\316=\2038\311\203I\317@\n\"\210A\211\204<\320 !)\207" [files file recursive dired-re-no-dot nil file-attributes t delete-file directory-files always yes-or-no-p format "Recursive delete of %s? " dired-make-relative top dired-delete-file delete-directory] 6 (#$ . 66800)]) #@135 In Dired, delete the files flagged for deletion. If NOMESSAGE is non-nil, we don't display any message if there are no flagged files. (defalias 'dired-do-flagged-delete #[(&optional nomessage) "\306 \307\212eb\210\310\n\307\311#)\203}\312\307\211\211\211\306 \307\212eb\210\310\n\307\311#\2052\313 \211??\203eb\210\314 `B\fBb\210\315y\210\307\211\223\210\310\n\307\311#\205_\313 \211\204=) \203n\f\202s\314 `BC.\316 \210\307\"\202\205\206\205\317\320!+\207" [dired-del-marker dired-marker-char regexp case-fold-search results found dired-marker-regexp nil re-search-forward t dired-internal-do-deletions point-marker dired-get-filename 1 dired-move-to-filename message "(No deletions requested)" buffer-read-only next-position nomessage] 6 (#$ . 67563) nil]) #@40 Delete all marked (or next ARG) files. (defalias 'dired-do-delete #[(&optional arg) "\306\307\211\211\211\f\203.\f\250\203&\310\f\311\"\210\f\312W\203\"\237\202\200\202\200\313 `BC\202\200\314 \307\212eb\210\315\307\316#\205C\317 \211?? \203q b\210\313 `BB b\210\320y\210 \307\211\223\210\315\307\316#\205l\317 \211\204L) \203z\202\313 `BC*,\321 \210\f\"\207" [results found case-fold-search buffer-read-only arg next-position dired-internal-do-deletions nil dired-repeat-over-lines #[nil "\301 `BB\211\207" [results dired-get-filename] 2] 0 dired-get-filename dired-marker-regexp re-search-forward t point-marker 1 dired-move-to-filename regexp] 6 (#$ . 68366) "P"]) (byte-code "\301B\302\301!\204\303\301\304\"\210\301\207" [current-load-list dired-deletion-confirmer default-boundp set-default yes-or-no-p] 3) (defalias 'dired-internal-do-deletions #[(l arg) "\306\307\"G\310\306\311 \"\237\312\313\314 \f\315\316\317 \"\"%\203`\212\320\203=@Ab\210\320\321\322\323\217\210)A\211\204(\204M\324\325\n\326\n!#\210\202\\\327\315\330G\n\326\n!$\"\210*\202d\324\331!\210+\332 \207" [l succ count files dired-deletion-confirmer arg mapcar car 0 dired-make-relative dired-mark-pop-up " *Deletions*" delete format "Delete %s " dired-mark-prompt nil err (byte-code "@@\305 \n\"\210 T\306\307 \f#\210\310\311 !\312 !\313 $\210)\305\207" [l fn dired-recursive-deletes succ count dired-delete-file message "%s of %s deletions" dired-fun-in-all-buffers file-name-directory file-name-nondirectory dired-delete-entry] 5) ((error (byte-code "\303\304\"\210 @@\nB\303\207" [err l failures dired-log "%s\n"] 3))) message "%d deletion%s done" dired-plural-s dired-log-summary "%d of %d deletion%s failed" "(No deletions performed)" dired-move-to-filename failures buffer-read-only] 11]) (defalias 'dired-fun-in-all-buffers #[(directory file fun &rest args) "\306\307\310 !\n\"\306\211\203,\f@r q\210\311  \"\203$\312 !B)\fA\211\204*)\207" [success-list directory file buf #1=#:--cl-dolist-temp-- fun nil dired-buffers-for-dir expand-file-name apply buffer-name args] 4]) (defalias 'dired-delete-entry #[(file) "\212\302!\203\303\304 \210`\212\305y\210`)|\210))\306!\207" [file buffer-read-only dired-goto-file nil beginning-of-line 1 dired-clean-up-after-deletion] 2]) (defalias 'dired-clean-up-after-deletion #[(fn) "\212A\205\302 !\205\303 )\207" [dired-subdir-alist fn dired-goto-subdir dired-kill-subdir] 2]) (defalias 'dired-marker-regexp #[nil "\301\302\303!!P\207" [dired-marker-char "^" regexp-quote char-to-string] 4]) (defalias 'dired-plural-s #[(count) "\301U\203\302\207\303\207" [count 1 "" "s"] 2]) (defalias 'dired-mark-prompt #[(arg files) "G\211\304U\203@\202\n\250\203\305\306\n\"\202\305\307 #)\207" [files count arg dired-marker-char 1 format "[next %d files]" "%c [%d files]"] 5]) (defalias 'dired-pop-to-buffer #[(buf) "\204\n\306\307 !!\207\310 \311\211\312\313 \211! V\203*\314 \315\n!U\203*\n\202E\312\316 \211!\211\\\317\\V\203E\314 \315\n!U\203E\n\212 q\210db\210\320\311x\210\321e`\"n\204\\ T)\312\f!\211\\\317\\X\203q\322 !\202\201\323\f\312\f! ]TZ]\"\324\n \"\210\312\n!S W\203\234\325\n!\210\326 \312\n!SZ!\210\327\n\330\"+\207" [dired-shrink-to-fit buf w2 target-lines window split-height-threshold pop-to-buffer get-buffer-create selected-window nil window-height get-largest-window frame-width window-width get-lru-window 0 "\n " count-lines display-buffer split-window set-window-buffer select-window enlarge-window set-window-start 1 window-min-height] 6]) #@234 A list of symbols for commands Dired should not confirm. Command symbols are `byte-compile', `chgrp', `chmod', `chown', `compress', `copy', `delete', `hardlink', `load', `move', `print', `shell', `symlink', `touch' and `uncompress'. (custom-declare-variable 'dired-no-confirm 'nil '(#$ . 71990) :group 'dired :type '(set (const byte-compile) (const chgrp) (const chmod) (const chown) (const compress) (const copy) (const delete) (const hardlink) (const load) (const move) (const print) (const shell) (const symlink) (const touch) (const uncompress))) #@554 Return FUNCTION's result on ARGS after showing which files are marked. Displays the file names in a buffer named BUFNAME; nil gives " *Marked Files*". This uses function `dired-pop-to-buffer' to do that. FUNCTION should not manipulate files, just read input (an argument or confirmation). The window is not shown if there is just one file or OP-SYMBOL is a member of the list in `dired-no-confirm'. FILES is the list of marked files. It can also be (t FILENAME) in the case of one marked file, to distinguish that from using just the current file. (defalias 'dired-mark-pop-up #[(bufname op-symbol files function &rest args) "\204\306 \307=\204\n >\204 G\310U\203\311\f \"\207r\312!q\210\313 \210\314 @\307=\2034 A\2025 !\210\315ed\316#\210)\317\213\207" [bufname dired-no-confirm op-symbol files function args " *Marked Files*" t 1 apply get-buffer-create erase-buffer dired-format-columns-of-files remove-text-properties (mouse-face nil help-echo nil) ((byte-code "\303!\210\304 \n\"\207" [bufname function args dired-pop-to-buffer apply] 3))] 4 (#$ . 72548)]) (defalias 'dired-format-columns-of-files #[(files) "\306\307\310\311\"\"\312\\\313\314 !\312Z\315\n \245]G\211 \245\316\f \246!\203)\317\202*\315\\\317\211\320!\321 _\fZ\322\"\244\211GS\233\241\210 W\203} W\203l _j\210@c\210 \233T\211\202P\323c\210\317TA\202G .\207" [files maxlen width columns nfiles rows apply max mapcar length 2 window-width selected-window 1 zerop 0 copy-sequence make-list "" "\n" i j] 6]) (defalias 'dired-repeat-over-lines #[(arg function) "\303 \304 \210 \305V\203;m\204; S\304 \210m\204%\306 \203%\307y\210\202\212\307y\210`T\310\223\210)\212\n \210)b\210\202 \305W\203eo\204e T\311y\210o\204Z\306 \203Z\311y\210\202K\304 \210\212\n \210)\202;\310\211\223\210\312 )\207" [pos arg function make-marker beginning-of-line 0 dired-between-files 1 nil -1 dired-move-to-filename] 3]) (defalias 'dired-between-files #[nil "\212\300 )?\207" [dired-move-to-filename] 1]) #@70 Move to the next marked file, wrapping around the end of the buffer. (defalias 'dired-next-marked-file #[(arg &optional wrap opoint) "\204` \304V\203\305\n\306\307 $\202\310 \210\311\n\306\307 [$\203%\312 \207 \2040b\210\313\314!\207\315\316!\210 \304V\203>e\202?db\210\317 \306#\207" [opoint arg dired-re-mark wrap 0 re-search-forward nil t beginning-of-line re-search-backward dired-move-to-filename error "No next marked file" message "(Wraparound for next marked file)" dired-next-marked-file] 5 (#$ . 74589) "p\np"]) #@74 Move to the previous marked file, wrapping around the end of the buffer. (defalias 'dired-prev-marked-file #[(arg &optional wrap) "\302[ \"\207" [arg wrap dired-next-marked-file] 3 (#$ . 75131) "p\np"]) (defalias 'dired-file-marker #[(file) "\212\301!\205\302 \210g\303\232?\205g)\207" [file dired-goto-file beginning-of-line 32] 2]) (defalias 'dired-mark-files-in-region #[(start end) "\305 \nV\203\f\306\307!\210 b\210`\nW\205@`\nW\203&\310 \203&\311y\210\202\312 !\204:\313\305\314\"\203:\315\311!\210\fc\210\311y\210\202)\207" [buffer-read-only start end dired-re-dot dired-marker-char nil error "start > end" dired-between-files 1 looking-at dired-get-filename t delete-char] 3]) #@225 Mark the current (or next ARG) files. If on a subdir headerline, mark all its files except `.' and `..'. Use \[dired-unmark-all-files] to remove all marks and \[dired-unmark] on a subdir to remove the marks in this subdir. (defalias 'dired-mark #[(arg) "\302 \203\n\212\303 )\207\304\305\306 !\307\")\207" [buffer-read-only arg dired-get-subdir dired-mark-subdir-files nil dired-repeat-over-lines prefix-numeric-value #[nil "\301\302!\210c\207" [dired-marker-char delete-char 1] 2]] 3 (#$ . 75840) "P"]) #@107 Unmark the current (or next ARG) files. If looking at a subdir, unmark all its files except `.' and `..'. (defalias 'dired-unmark #[(arg) "\302\303 !)\207" [dired-marker-char arg 32 dired-mark] 2 (#$ . 76355) "P"]) #@166 In Dired, flag the current line's file for deletion. With prefix arg, repeat over several lines. If on a subdir headerline, mark all its files except `.' and `..'. (defalias 'dired-flag-file-deletion #[(arg) "\303\n!)\207" [dired-del-marker dired-marker-char arg dired-mark] 2 (#$ . 76578) "P"]) #@129 In Dired, move up lines and remove deletion flag there. Optional prefix ARG says how many lines to unflag; default is one line. (defalias 'dired-unmark-backward #[(arg) "\301[!\207" [arg dired-unmark] 2 (#$ . 76884) "p"]) #@199 Toggle marks: marked files become unmarked, and vice versa. Files marked with other flags (such as `D') are not affected. `.' and `..' are never toggled. As always, hidden subdirs are not affected. (defalias 'dired-toggle-marks #[nil "\212eb\210\303m?\2052\304 \204,\305 !\204,\306\307``Tg\310=\203'\310\nD\202*\n\310D$\210\311y\210\202*\207" [buffer-read-only dired-re-dot dired-marker-char nil dired-between-files looking-at apply subst-char-in-region 32 1] 6 (#$ . 77114) nil]) #@61 History list of regular expressions used in Dired commands. (defvar dired-regexp-history nil (#$ . 77609)) (defalias 'dired-read-regexp #[(prompt) "\301\302\211\211\303%\207" [prompt read-from-minibuffer nil dired-regexp-history] 6]) #@271 Mark all files matching REGEXP for use in later commands. A prefix argument means to unmark them instead. `.' and `..' are never marked. REGEXP is an Emacs regexp, not a shell wildcard. Thus, use `\.o$' for object files--just `.o' will mark more than you might think. (defalias 'dired-mark-files-regexp #[(regexp &optional marker-char) "\206 \306\211\212\307\310\311\312\"\210eb\210m\204G\313\f!\204Al\204A\314\306\315\"\211\2053\316\317 !\")\203A\320\321!\210 c\210\nT\321y\210\202\310\322\n\312\323\n! \324=\203X\325\202Y\326 =\203d\327\202e\330&\210)\n\307V\205p\n+\207" [marker-char dired-marker-char count buffer-read-only dired-re-dot fn nil 0 message "Marking %ss..." "matching file" looking-at dired-get-filename t string-match file-name-nondirectory delete-char 1 "%s %s%s %s%s." dired-plural-s 32 "un" "" "flagged" "marked" regexp dired-del-marker] 9 (#$ . 77851) (list (dired-read-regexp (concat (if current-prefix-arg "Unmark" "Mark") " files (regexp): ")) (if current-prefix-arg 32))]) #@154 Mark all files with contents containing REGEXP for use in later commands. A prefix argument means to unmark them instead. `.' and `..' are never marked. (defalias 'dired-mark-files-containing-regexp #[(regexp &optional marker-char) "\206 \306\211\212\307\310\311\312\"\210eb\210m\204\212\313\f!\204\204l\204\204\314\306\315\"\211\205v\316 !\205v\317 !?\205v\320 ! \310\321 \"\210 \203[r q\210\212eb\210\322!\306\315#*\202u\323\324!\"\325\216r\"q\210\326 !\210eb\210\322!\306\315#+))\203\204\327\330!\210 c\210\nT\330y\210\202\310\331\n\312\332\n! \333=\203\233\334\202\234\335 #=\203\247\336\202\250\337&\210)\n\307V\205\263\n+\207" [marker-char dired-marker-char count buffer-read-only dired-re-dot fn nil 0 message "Marking %ss..." "matching file" looking-at dired-get-filename t file-readable-p file-directory-p get-file-buffer "Checking %s" re-search-forward generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) insert-file-contents delete-char 1 "%s %s%s %s%s." dired-plural-s 32 "un" "" "flagged" "marked" prebuf regexp #1# dired-del-marker] 9 (#$ . 78885) (list (dired-read-regexp (concat (if current-prefix-arg "Unmark" "Mark") " files containing (regexp): ")) (if current-prefix-arg 32))]) #@236 In Dired, flag all files containing the specified REGEXP for deletion. The match is against the non-directory part of the filename. Use `^' and `$' to anchor matches. Exclude subdirs by hiding them. `.' and `..' are never flagged. (defalias 'dired-flag-files-regexp #[(regexp) "\302 \"\207" [regexp dired-del-marker dired-mark-files-regexp] 3 (#$ . 80195) (list (dired-read-regexp "Flag for deletion (regexp): "))]) #@72 Mark all symbolic links. With prefix argument, unflag all those files. (defalias 'dired-mark-symlinks #[(unflag-p) "\203\306\202 \307\211\212\310\311\312\313\"\210eb\210m\2043\314\f!\203-\315\316!\210 c\210\nT\316y\210\202\311\317\n\313\320\n! \306=\203D\321\202E\322 =\203O\323\202P\324&\210)\n\310V\205[\n+\207" [unflag-p dired-marker-char count buffer-read-only dired-re-sym dired-del-marker 32 nil 0 message "Marking %ss..." "symbolic link" looking-at delete-char 1 "%s %s%s %s%s." dired-plural-s "un" "" "flagged" "marked"] 8 (#$ . 80622) "P"]) #@98 Mark all directory file lines except `.' and `..'. With prefix argument, unflag all those files. (defalias 'dired-mark-directories #[(unflag-p) "\203\306\202 \307\211\212\310\311\312\313\"\210eb\210m\2049\314\f!\2033\314 !\2043\315\316!\210 c\210\nT\316y\210\202\311\317\n\313\320\n! \306=\203J\321\202K\322 =\203V\323\202W\324&\210)\n\310V\205b\n+\207" [unflag-p dired-marker-char count buffer-read-only dired-re-dir dired-re-dot 32 nil 0 message "Marking %ss..." "directory file" looking-at delete-char 1 "%s %s%s %s%s." dired-plural-s "un" "" "flagged" "marked" dired-del-marker] 8 (#$ . 81199) "P"]) #@74 Mark all executable files. With prefix argument, unflag all those files. (defalias 'dired-mark-executables #[(unflag-p) "\203\306\202 \307\211\212\310\311\312\313\"\210eb\210m\2043\314\f!\203-\315\316!\210 c\210\nT\316y\210\202\311\317\n\313\320\n! \306=\203D\321\202E\322 =\203O\323\202P\324&\210)\n\310V\205[\n+\207" [unflag-p dired-marker-char count buffer-read-only dired-re-exe dired-del-marker 32 nil 0 message "Marking %ss..." "executable file" looking-at delete-char 1 "%s %s%s %s%s." dired-plural-s "un" "" "flagged" "marked"] 8 (#$ . 81832) "P"]) #@125 Flag for deletion files whose names suggest they are auto save files. A prefix argument says to unflag those files instead. (defalias 'dired-flag-auto-save-files #[(&optional unflag-p) "\203\306\202 \307\211\212\310\311\312\313\"\210eb\210m\204a\212\307\210h\314=\2063h\315=\2053\316u\210h\314=)\203[\317 !\204[\320\321\211\"\211\205M\322\323!!)\203[\324\325!\210\nc\210 T\325y\210\202\311\326 \313\327 !\n\306=\203r\330\202s\331\n =\203}\332\202~\333&\210) \310V\205\211 +\207" [unflag-p dired-del-marker dired-marker-char count buffer-read-only dired-re-dir 32 nil 0 message "Marking %ss..." "auto save file" 35 42 -1 looking-at dired-get-filename t auto-save-file-name-p file-name-nondirectory delete-char 1 "%s %s%s %s%s." dired-plural-s "un" "" "flagged" "marked" fn] 9 (#$ . 82417) "P"]) #@77 Regular expression to match "garbage" files for `dired-flag-garbage-files'. (custom-declare-variable 'dired-garbage-files-regexp '(concat (regexp-opt '(".log" ".toc" ".dvi" ".bak" ".orig" ".rej" ".aux")) "\\'") '(#$ . 83247) :type 'regexp :group 'dired) #@70 Flag for deletion all files that match `dired-garbage-files-regexp'. (defalias 'dired-flag-garbage-files #[nil "\301!\207" [dired-garbage-files-regexp dired-flag-files-regexp] 2 (#$ . 83507) nil]) #@103 Flag all backup files (names ending with `~') for deletion. With prefix argument, unflag these files. (defalias 'dired-flag-backup-files #[(&optional unflag-p) "\203\306\202 \307\211\212\310\311\312\313\"\210eb\210m\204Y\212\307\210h\314=\203*\315u\210h)\316=\203S\317 !\204S\320\321\211\"\211\205E\322!)\203S\323\324!\210\nc\210 T\324y\210\202\311\325 \313\326 !\n\306=\203j\327\202k\330\n =\203u\331\202v\332&\210) \310V\205\201 +\207" [unflag-p dired-del-marker dired-marker-char count buffer-read-only dired-re-dir 32 nil 0 message "Marking %ss..." "backup file" 42 -1 126 looking-at dired-get-filename t backup-file-name-p delete-char 1 "%s %s%s %s%s." dired-plural-s "un" "" "flagged" "marked" fn] 9 (#$ . 83712) "P"]) #@88 Change all OLD marks to NEW marks. OLD and NEW are both characters used to mark files. (defalias 'dired-change-marks #[(&optional old new) "\305=\204\f \305=\203\306 \207\307\310\"\311\212eb\210\312 \311\313#\205E\314U\2035\315 \316\216\317\320\313\"*\2026\313\203\321\322\224\322\225 $\210\202+\207" [old new buffer-read-only string save-match-data-internal 13 ding format "\n%c" nil search-forward t 32 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) dired-get-filename no-dir subst-char-in-region 0] 5 (#$ . 84472) (let* ((cursor-in-echo-area t) (old (progn (message "Change (old mark): ") (read-char))) (new (progn (message "Change %c marks to (new mark): " old) (read-char)))) (list old new))]) #@54 Remove all marks from all files in the dired buffer. (defalias 'dired-unmark-all-marks #[nil "\300\301!\207" [dired-unmark-all-files 13] 2 (#$ . 85244) nil]) #@232 Remove a specific mark (or any mark) from every file. After this command, type the mark character to remove, or type RET to remove all marks. With prefix arg, query for each marked file. Type \[help-command] at that time for help. (defalias 'dired-unmark-all-files #[(mark &optional arg) "\212\306\307\211\307\310\311\f\"\312eb\210\f\313=\203#\314\307\315#\202(\316 \307\315#\203R\203D\317\315\211\"\211\205@\320\303\321#)\203\322`S`h\323$\210T\202\324\325U\203]\326\202^\327\".\207" [count buffer-read-only case-fold-search query mark string 0 nil format "\n%c" "Type SPC or `y' to unmark one file, DEL or `n' to skip to next,\n`!' to unmark all remaining files with no more questions." 13 re-search-forward t search-forward dired-get-filename dired-query "Unmark file `%s'? " subst-char-in-region 32 message 1 "1 mark removed" "%d marks removed" help-form dired-re-mark arg file] 6 (#$ . 85409) "cRemove marks (RET means all): \nP"]) (byte-code "\301B\302\301!\204\303\301\304\"\210\301\207" [current-load-list dired-log-buffer default-boundp set-default "*Dired log*"] 3) #@184 Pop up a buffer with error log output from Dired. A group of errors from a single command ends with a formfeed. Thus, use \[backward-page] to find the beginning of a group of errors. (defalias 'dired-why #[nil "\303!\205#\304 \305\303!!\306\216\307 !\210db\210\310y\210\311\312!\210\313\314!+\207" [dired-log-buffer window owindow get-buffer selected-window display-buffer ((select-window owindow)) select-window -1 backward-page 1 recenter 0] 4 (#$ . 86526) nil]) (defalias 'dired-log #[(log &rest args) "pr\305 !q\210db\210\306 ;\203#\f\203\307\310 \f#\202 c\202O\311 !\203/\312 !\202O \306=\205O\313\314!\210n\204@\315c\210\316 \317\320!\321\261\210db\210\322c+\207" [obuf dired-log-buffer inhibit-read-only log args get-buffer-create t apply format bufferp insert-buffer-substring backward-page 1 "\n" current-time-string " Buffer `" buffer-name "'\n" "\f\n"] 4]) #@221 State a summary of a command's failures, in echo area and log buffer. STRING is an overall summary of the failures. FAILURES is a list of file names that we failed to operate on, or nil if file names are not applicable. (defalias 'dired-log-summary #[(string failures) "G\303U\203$\304\305r q\210db\210\306\303!\210l\203\303y\210`d{)\"\210\2022\304\203-\307\202.\310\n#\210\311\312\n\312Q!\210\311\313!\207" [failures dired-log-buffer string 1 message "%s" backward-page "%s--type ? for details (%s)" "%s--type ? for details" dired-log "\n" t] 4 (#$ . 87420)]) #@391 String of `ls' switches (single letters) except "t" that influence sorting. This indicates to Dired which option switches to watch out for because they will change the sorting order behavior of `ls'. To change the default sorting order (e.g. add a `-v' option), see the variable `dired-listing-switches'. To temporarily override the listing format, use `\[universal-argument] \[dired]'. (defvar dired-ls-sorting-switches "SXU" (#$ . 87997)) #@51 Regexp recognized by Dired to set `by date' mode. (defvar dired-sort-by-date-regexp (concat "^-[^" dired-ls-sorting-switches "]*t[^" dired-ls-sorting-switches "]*$") (#$ . 88447)) #@51 Regexp recognized by Dired to set `by name' mode. (defvar dired-sort-by-name-regexp (concat "^-[^t" dired-ls-sorting-switches "]+$") (#$ . 88633)) #@116 Non-nil means the Dired sort command is disabled. The idea is to set this buffer-locally in special dired buffers. (defvar dired-sort-inhibit nil (#$ . 88787)) (defalias 'dired-sort-set-modeline #[nil "\306=\205%\307\310\n \"\203\311\202!\310\f \"\203\312\202!\313 P)\314 \207" [major-mode case-fold-search dired-sort-by-name-regexp dired-actual-switches dired-sort-by-date-regexp mode-name dired-mode nil string-match "Dired by name" "Dired by date" "Dired " force-mode-line-update] 3]) #@138 Toggle between sort by date/name and refresh the dired buffer. With a prefix argument you can edit the current listing switches instead. (defalias 'dired-sort-toggle-or-edit #[(&optional arg) "\203\303\304!\210 \203\305\306\307\n\"!\207\310 \207" [dired-sort-inhibit arg dired-actual-switches error "Cannot sort this dired buffer" dired-sort-other read-string "ls switches (must contain -l): " dired-sort-toggle] 4 (#$ . 89292) "P"]) (defalias 'dired-sort-toggle #[nil "\303\304\305 \"\203\304\306 \"\203 \307\211\224O\2027 \310P\2027\311\312\313\n\314Q\315 #\304\316\n\314Q \"\2035\315\2026\317Q)\320 \210\321 \207" [case-fold-search dired-actual-switches dired-ls-sorting-switches nil string-match " " " -t\\'" 0 " -t" "-l" dired-replace-in-string "[-lt" "]" "" "[t" "t" dired-sort-set-modeline revert-buffer] 6]) (defalias 'dired-replace-in-string #[(regexp newtext string) "\306\307\310\211\311\f \n#\203$\307\224\307\225 \n O\nQ\202 \n\310OP,\207" [me mb start result regexp string "" 0 nil string-match newtext] 4]) #@276 Specify new `ls' SWITCHES for current dired buffer. Values matching `dired-sort-by-date-regexp' or `dired-sort-by-name-regexp' set the minor mode accordingly, others appear literally in the mode line. With optional second arg NO-REVERT, don't refresh the listing afterwards. (defalias 'dired-sort-other #[(switches &optional no-revert) "\303!\210\304 \210\n\206\305 \207" [switches dired-actual-switches no-revert dired-sort-R-check dired-sort-set-modeline revert-buffer] 2 (#$ . 90351)]) #@55 Value of `dired-subdir-alist' before -R switch added. (defvar dired-subdir-alist-pre-R nil (#$ . 90851)) (make-variable-buffer-local 'dired-subdir-alist-pre-R) #@240 Additional processing of -R in ls option string SWITCHES. Saves `dired-subdir-alist' when R is set and restores saved value minus any directories explicitly deleted when R is cleared. To be called first in body of `dired-sort-other', etc. (defalias 'dired-sort-R-check #[(switches) "\306\307\"\203\306\307 \"\204\n\211\207\306\307 \"\205Q\306\307\"?\205Q \203J\310 \203C\311 \211@@)\n\"\203< @\fB A\211\204+\312\f!)\202O\312\n!@C\211\207" [switches dired-actual-switches dired-subdir-alist dired-subdir-alist-pre-R subdirs x string-match "R" nil assoc reverse] 4 (#$ . 91018)]) #@219 *Decide whether recursive copies are allowed. nil means no recursive copies. `always' means copy recursively without asking. `top' means ask for each directory at top level. Anything else means ask for each directory. (custom-declare-variable 'dired-recursive-copies 'nil '(#$ . -91622) :type '(choice :tag "Copy directories" (const :tag "No recursive copies" nil) (const :tag "Ask for each directory" t) (const :tag "Ask for each top directory only" top) (const :tag "Copy directories without asking" always)) :group 'dired) (defalias 'dired-dnd-popup-notice #[nil "\300\301!\207" [message-box "Recursive copies not enabled.\nSee variable dired-recursive-copies."] 2]) (defalias 'dired-dnd-do-ask-action #[(uri) "\302\303\304\305\306BD\"\211\205\307 \")\207" [action uri x-popup-menu t "What action?" "" (("Copy here" . copy) ("Move here" . move) ("Link here" . link) "--" ("Cancel")) dired-dnd-handle-local-file] 6]) #@194 Copy, move or link a file to the dired directory. URI is the file to handle, ACTION is one of copy, move, link or ask. Ask means pop up a menu for the user to select one of copy, move or link. (defalias 'dired-dnd-handle-local-file #[(uri action) "\305\306!\210\307\310\"\211\205\311 \312 !P \205v \313=\204$ \314=\203A\315 !\2033\f\2043\316 \202v\317 \n\320#\210\321\n!\210 \202v \322=\203U\323 \n\320#\210\321\n!\210 \202v \324=\203i\325 \n\320#\210\321\n!\210 \202v \326=\203u\327!\202v\330*\207" [uri from to action dired-recursive-copies require dired-aux dnd-get-local-file-name t dired-current-directory file-name-nondirectory copy private file-directory-p dired-dnd-popup-notice dired-copy-file 1 dired-relist-entry move dired-rename-file link make-symbolic-link ask dired-dnd-do-ask-action nil] 5 (#$ . 92552)]) #@269 Copy, move or link a file to the dired directory if it is a local file. URI is the file to handle. If the hostname in the URI isn't local, do nothing. ACTION is one of copy, move, link or ask. Ask means pop up a menu for the user to select one of copy, move or link. (defalias 'dired-dnd-handle-file #[(uri action) "\303!\211\205\f\304 \n\")\207" [uri local-file action dnd-get-local-file-uri dired-dnd-handle-local-file] 4 (#$ . 93399)]) #@52 Auxiliary information to be saved in desktop file. (defalias 'dired-desktop-buffer-misc-data #[(desktop-dirname) ":\203\303@ \"AB\202\303 \"\304\305\n\"\237AB\207" [dired-directory desktop-dirname dired-subdir-alist desktop-file-name mapcar #[(f) "\302@ \"\207" [f desktop-dirname desktop-file-name] 3]] 4 (#$ . 93848)]) #@53 Restore a dired buffer specified in a desktop file. (defalias 'dired-restore-desktop-buffer #[(desktop-buffer-file-name desktop-buffer-name desktop-buffer-misc) "@\211:\203 @\202 \304\305\n!!\203%\306 !\210\307\310A\"\210p\2023\311\312\n\"\210 \2032\313\314!\210\315*\207" [desktop-buffer-misc dired-dir dir desktop-missing-file-warning file-directory-p file-name-directory dired mapcar dired-maybe-insert-subdir message "Desktop: Directory %s no longer exists." sit-for 1 nil] 4 (#$ . 94184)]) (byte-code "\301\302\303\"\210\304=\203\305\306!\210\307\310!\210\311\312!\207" [system-type add-to-list desktop-buffer-mode-handlers (dired-mode . dired-restore-desktop-buffer) vax-vms load "dired-vms" provide dired run-hooks dired-load-hook] 3)