branch: externals/mpdired commit 0f0e96d4b9119b2f05a3c88ebcc2d28f603c95c9 Author: Manuel Giraud <man...@ledu-giraud.fr> Commit: Manuel Giraud <man...@ledu-giraud.fr>
mark with regexp --- mpdired.el | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/mpdired.el b/mpdired.el index 127afbf1ba..86b9b32734 100644 --- a/mpdired.el +++ b/mpdired.el @@ -84,7 +84,8 @@ "t" #'mpdired-toggle-marks "* t" #'mpdired-toggle-marks "* c" #'mpdired-change-marks - ;; Only in the queue view + "% d" #'mpdired-flag-files-regexp + "% m" #'mpdired-mark-files-regexp "x" #'mpdired-flagged-delete "D" #'mpdired-delete) @@ -701,6 +702,21 @@ (forward-line)) result))) +(defun mpdired-mark-files-regexp (regexp &optional mark) + (interactive (list (read-regexp "Mark (regexp): "))) + (save-excursion + (goto-char (point-min)) + (let ((mark (or mark ?*)) + (max (point-max))) + (while (< (point) max) + (when (re-search-forward regexp (line-end-position) t) + (mpdired--mark mark)) + (forward-line))))) + +(defun mpdired-flag-files-regexp (regexp) + (interactive (list (read-regexp "Flag for deletion (regexp): "))) + (mpdired-mark-files-regexp regexp ?d)) + (defun mpdired--append-message (message) "Put a message for the communication buffer." (with-current-buffer mpdired--comm-buffer