From: Juri Linkov Date: Mon, 5 Aug 2019 21:04:07 +0000 (+0300) Subject: * lisp/dired-x.el (dired-guess-shell-alist-default): Use git when possible. X-Git-Tag: emacs-27.0.90~1692 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=bf276b792157023d2e469d6a32394cce9589e47e;p=emacs.git * lisp/dired-x.el (dired-guess-shell-alist-default): Use git when possible. Check for Git backend and provide "git apply" for patch files (bug#36895). --- diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 462fa4ee152..313a22725c7 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -827,6 +827,7 @@ Also useful for `auto-mode-alist' like this: ;; install GNU zip's version of zcat. (autoload 'Man-support-local-filenames "man") +(autoload 'vc-responsible-backend "vc") (defvar dired-guess-shell-alist-default (list @@ -909,7 +910,10 @@ Also useful for `auto-mode-alist' like this: '(concat "znew" (if dired-guess-shell-gzip-quiet " -q") " " dired-guess-shell-znew-switches)) - '("\\.patch\\'" "cat * | patch") + (list "\\.patch\\'" + '(if (eq (ignore-errors (vc-responsible-backend default-directory)) 'Git) + "cat * | git apply" + "cat * | patch")) (list "\\.patch\\.g?z\\'" "gunzip -qc * | patch" ;; Optional decompression. '(concat "gunzip" (if dired-guess-shell-gzip-quiet " -q")))