Merge branch 'xref-instead-of-find'
This commit is contained in:
commit
02d6f42ab4
|
@ -96,33 +96,30 @@ Optional GROUP is a regexp construct for
|
||||||
(when (denote--only-note-p f) f))
|
(when (denote--only-note-p f) f))
|
||||||
files)))
|
files)))
|
||||||
|
|
||||||
;; TODO 2022-06-15: Maybe we can do the same in a more standard way?
|
(autoload 'xref--analyze "xref")
|
||||||
;; Perhaps with `xref-matches-in-files'?
|
|
||||||
;;
|
(defun denote-retrieve--xrefs (identifier)
|
||||||
;; (xref-matches-in-files IDENTIFIER (denote--directory-files :absolute))
|
"Return xrefs of IDENTIFIER in variable `denote-directory'."
|
||||||
|
(xref--analyze
|
||||||
|
(xref-matches-in-files identifier (denote--directory-files :absolute))))
|
||||||
|
|
||||||
|
(defun denote-retrieve--files-in-xrefs (xrefs)
|
||||||
|
"Return sorted file names sans directory from XREFS.
|
||||||
|
Parse `denote-retrieve--xrefs'."
|
||||||
|
(sort
|
||||||
|
(mapcar (lambda (x)
|
||||||
|
(file-name-nondirectory (car x)))
|
||||||
|
xrefs)
|
||||||
|
#'string-lessp))
|
||||||
|
|
||||||
(defun denote-retrieve--proces-grep (identifier)
|
(defun denote-retrieve--proces-grep (identifier)
|
||||||
"Process lines matching IDENTIFIER and return list of files."
|
"Process lines matching IDENTIFIER and return list of files."
|
||||||
(let* ((default-directory (denote-directory))
|
(let* ((default-directory (denote-directory))
|
||||||
(file (file-name-nondirectory (buffer-file-name))))
|
(file (file-name-nondirectory (buffer-file-name))))
|
||||||
(denote-retrieve--files-in-output
|
(denote-retrieve--files-in-output
|
||||||
(sort
|
(delete file
|
||||||
(process-lines
|
(denote-retrieve--files-in-xrefs
|
||||||
"find"
|
(denote-retrieve--xrefs identifier))))))
|
||||||
default-directory
|
|
||||||
"-maxdepth" "1"
|
|
||||||
"-type" "f"
|
|
||||||
"!" "-name" file
|
|
||||||
"-exec"
|
|
||||||
grep-program
|
|
||||||
"--color=never"
|
|
||||||
"-m"
|
|
||||||
"1"
|
|
||||||
"-e"
|
|
||||||
identifier
|
|
||||||
"{}"
|
|
||||||
";"
|
|
||||||
"-print")
|
|
||||||
#'string-lessp))))
|
|
||||||
|
|
||||||
(provide 'denote-retrieve)
|
(provide 'denote-retrieve)
|
||||||
;;; denote-retrieve.el ends here
|
;;; denote-retrieve.el ends here
|
||||||
|
|
Loading…
Reference in a new issue