comparison lisp/dired.el @ 20991:0cd10d49b777

(dired-do-toggle): Moved here from dired-x.el. (dired-mode-map): Changed dired-do-toggle from "T" to "t".
author Karl Heuer <kwzh@gnu.org>
date Fri, 27 Feb 1998 21:45:01 +0000
parents f3f9df46d008
children 55c278cd38f0
comparison
equal deleted inserted replaced
20990:eefd01920e56 20991:0cd10d49b777
891 (define-key map "o" 'dired-find-file-other-window) 891 (define-key map "o" 'dired-find-file-other-window)
892 (define-key map "\C-o" 'dired-display-file) 892 (define-key map "\C-o" 'dired-display-file)
893 (define-key map "p" 'dired-previous-line) 893 (define-key map "p" 'dired-previous-line)
894 (define-key map "q" 'dired-quit) 894 (define-key map "q" 'dired-quit)
895 (define-key map "s" 'dired-sort-toggle-or-edit) 895 (define-key map "s" 'dired-sort-toggle-or-edit)
896 (define-key map "t" 'dired-do-toggle)
896 (define-key map "u" 'dired-unmark) 897 (define-key map "u" 'dired-unmark)
897 (define-key map "v" 'dired-view-file) 898 (define-key map "v" 'dired-view-file)
898 (define-key map "x" 'dired-do-flagged-delete) 899 (define-key map "x" 'dired-do-flagged-delete)
899 (define-key map "+" 'dired-create-directory) 900 (define-key map "+" 'dired-create-directory)
900 ;; moving 901 ;; moving
1017 '("Flag" . dired-flag-file-deletion)) 1018 '("Flag" . dired-flag-file-deletion))
1018 (define-key map [menu-bar mark unmark] 1019 (define-key map [menu-bar mark unmark]
1019 '("Unmark" . dired-unmark)) 1020 '("Unmark" . dired-unmark))
1020 (define-key map [menu-bar mark mark] 1021 (define-key map [menu-bar mark mark]
1021 '("Mark" . dired-mark)) 1022 '("Mark" . dired-mark))
1023 (define-key map [menu-bar mark toggle-marks]
1024 '("Toggle Marks" . dired-do-toggle))
1022 1025
1023 (define-key map [menu-bar operate] 1026 (define-key map [menu-bar operate]
1024 (cons "Operate" (make-sparse-keymap "Operate"))) 1027 (cons "Operate" (make-sparse-keymap "Operate")))
1025 1028
1026 (define-key map [menu-bar operate query-replace] 1029 (define-key map [menu-bar operate query-replace]
2097 (defun dired-unmark-backward (arg) 2100 (defun dired-unmark-backward (arg)
2098 "In dired, move up lines and remove deletion flag there. 2101 "In dired, move up lines and remove deletion flag there.
2099 Optional prefix ARG says how many lines to unflag; default is one line." 2102 Optional prefix ARG says how many lines to unflag; default is one line."
2100 (interactive "p") 2103 (interactive "p")
2101 (dired-unmark (- arg))) 2104 (dired-unmark (- arg)))
2105
2106 (defun dired-do-toggle ()
2107 "Toggle marks.
2108 That is, currently marked files become unmarked and vice versa.
2109 Files marked with other flags (such as `D') are not affected.
2110 `.' and `..' are never toggled.
2111 As always, hidden subdirs are not affected."
2112 (interactive)
2113 (save-excursion
2114 (goto-char (point-min))
2115 (let (buffer-read-only)
2116 (while (not (eobp))
2117 (or (dired-between-files)
2118 (looking-at dired-re-dot)
2119 ;; use subst instead of insdel because it does not move
2120 ;; the gap and thus should be faster and because
2121 ;; other characters are left alone automatically
2122 (apply 'subst-char-in-region
2123 (point) (1+ (point))
2124 (if (eq ?\040 (following-char)) ; SPC
2125 (list ?\040 dired-marker-char)
2126 (list dired-marker-char ?\040))))
2127 (forward-line 1)))))
2102 2128
2103 ;;; Commands to mark or flag files based on their characteristics or names. 2129 ;;; Commands to mark or flag files based on their characteristics or names.
2104 2130
2105 (defvar dired-regexp-history nil 2131 (defvar dired-regexp-history nil
2106 "History list of regular expressions used in Dired commands.") 2132 "History list of regular expressions used in Dired commands.")