                (f-file-p dst-fpath)
                ;; Check some.part was renamed to some.txt.
                ;; part is one of the ignored extensions.
-               (and (-contains-p danny-ignored-extensions (f-ext src-fpath))
-                    (not (-contains-p danny-ignored-extensions (f-ext dst-fpath)))))
+               (and
+                (-find-index (lambda (ignored-regexp)
+                               (s-matches-p ignored-regexp src-fpath))
+                             danny-ignored-regexps)
+                (not (-find-index (lambda (ignored-regexp)
+                                    (s-matches-p ignored-regexp dst-fpath))
+                                  danny-ignored-regexps))))
       dst-fpath)))
 
 (defun danny-process-last-download ()

        (fpath (nth 2 event)))
    (when (and (eq event-type 'created)
               (f-file-p fpath)
               (not (-contains-p danny-ignored-extensions
                                 (f-ext fpath)) ))
      fpath)))

(defun danny--new-downloaded-file-for-event (event)

  dpath
  recursive)

(defvar danny-ignored-regexps (list "crdownload$"
                                    "part$"
                                    "m4a$"
                                    "ytdl$"
                                    "com\\.google\\.Chrome\\.")
  "List of ignored regular expressions matching file names.
These are handy for matching temp files created during downloads.

For example \"crdownload$\" and \"part$\".")

(defvar danny-destination-roots
  (list (make-danny-destination-root :name "Documents"
