X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/3aff2f57cc348b90c0f8b5926027cd0f0f378070..b9ad615e658803846192340d18919f3c7ac9b94e:/lisp/dired-x.el diff --git a/lisp/dired-x.el b/lisp/dired-x.el index c6ecbf1e71..25c6f8b69a 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -1,7 +1,6 @@ ;;; dired-x.el --- extra Dired functionality -*- lexical-binding:t -*- -;; Copyright (C) 1993-1994, 1997, 2001-2013 Free Software Foundation, -;; Inc. +;; Copyright (C) 1993-1994, 1997, 2001-2014 Free Software Foundation, Inc. ;; Author: Sebastian Kremer ;; Lawrence R. Dodd @@ -241,7 +240,7 @@ to nil: a pipe using `zcat' or `gunzip -c' will be used." ;;; KEY BINDINGS. -(define-key dired-mode-map "\M-o" 'dired-omit-mode) +(define-key dired-mode-map "\C-x\M-o" 'dired-omit-mode) (define-key dired-mode-map "*O" 'dired-mark-omitted) (define-key dired-mode-map "\M-(" 'dired-mark-sexp) (define-key dired-mode-map "*(" 'dired-mark-sexp) @@ -556,8 +555,9 @@ interactively, prompt for REGEXP. With prefix argument, unflag all those files. Optional fourth argument LOCALP is as in `dired-get-filename'." (interactive - (list (dired-read-regexp - "Mark unmarked files matching regexp (default all): ") + (list (read-regexp + "Mark unmarked files matching regexp (default all): " + nil 'dired-regexp-history) nil current-prefix-arg nil)) (let ((dired-marker-char (if unflag-p ?\s dired-marker-char))) (dired-mark-if @@ -1047,7 +1047,8 @@ Each element of this list looks like (REGEXP COMMAND...) where each COMMAND can either be a string or a Lisp expression that evaluates -to a string. If several COMMANDs are given, the first one will be the default +to a string. This expression can access the file name as the variable `file'. +If several COMMANDs are given, the first one will be the default and the rest will be added temporarily to the history and can be retrieved with \\[previous-history-element] (M-p) . @@ -1105,8 +1106,8 @@ See `dired-guess-shell-alist-user'." ;; Return commands or nil if flist is still non-nil. ;; Evaluate the commands in order that any logical testing will be done. (if (cdr cmds) - (delete-dups (mapcar #'eval cmds)) - (eval (car cmds))))) ; single command + (delete-dups (mapcar (lambda (cmd) (eval cmd `((file . ,file)))) cmds)) + (eval (car cmds) `((file . ,file)))))) ; single command (defun dired-guess-shell-command (prompt files) "Ask user with PROMPT for a shell command, guessing a default from FILES." @@ -1459,6 +1460,9 @@ to mark all zero length files." s nil)) (setq mode (buffer-substring (point) (+ mode-len (point)))) (forward-char mode-len) + ;; Skip any extended attributes marker ("." or "+"). + (or (looking-at " ") + (forward-char 1)) (setq nlink (read (current-buffer))) ;; Karsten Wenger fixed uid. (setq uid (buffer-substring (1+ (point))