]> git.eshelyaron.com Git - emacs.git/commitdiff
Provide facility to ignore all marked files in vc
authorWolfgang Scherer <wolfgang.scherer@gmx.de>
Sun, 15 Sep 2019 13:00:20 +0000 (15:00 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Sun, 15 Sep 2019 13:00:20 +0000 (15:00 +0200)
* lisp/vc/vc-dir.el: (vc-dir-ignore) With prefix argument, ignore all
marked files (bug#37240).

etc/NEWS
lisp/vc/vc-dir.el

index 252c6bf9b9ff3f15213874e3f288e496ecf57450..09535a56b9d57d71f364ee20cdefc9501fdfd62a 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -743,6 +743,10 @@ file.
 *** New customizable variable 'vc-find-revision-no-save'.
 With non-nil, 'vc-find-revision' doesn't write the created buffer to file.
 
+---
+*** 'vc-dir-ignore' now takes a prefix argument to ignore all marked
+files.
+
 *** New customizable variable 'vc-git-grep-template'.
 This new variable allows customizing the default arguments passed to
 'git-grep' when 'vc-git-grep' is used.
index 9a6f6bb687492fc2970b9d0f74a259ca914a8f76..e2259785923b6007f86e49e64c68624348cba3d3 100644 (file)
@@ -864,10 +864,18 @@ with the command \\[tags-loop-continue]."
    delimited)
   (fileloop-continue))
 
-(defun vc-dir-ignore ()
-  "Ignore the current file."
-  (interactive)
-  (vc-ignore (vc-dir-current-file)))
+(defun vc-dir-ignore (&optional arg)
+  "Ignore the current file.
+If a prefix argument is given, ignore all marked files."
+  (interactive "P")
+  (if arg
+      (ewoc-map
+       (lambda (filearg)
+        (when (vc-dir-fileinfo->marked filearg)
+          (vc-ignore (vc-dir-fileinfo->name filearg))
+          t))
+       vc-ewoc)
+    (vc-ignore (vc-dir-current-file))))
 
 (defun vc-dir-current-file ()
   (let ((node (ewoc-locate vc-ewoc)))