mirror of
https://github.com/org-roam/org-roam
synced 2025-08-01 12:17:21 -05:00
(fix): org-roam-descendant-of-p
bug on Windows (#2089)
On Windows, `file-truename` and `directory-file-name` downcase driver label: "C:/" => "c:/", while `expand-file-name` keep the case unchanged. If `org-roam-directory` use upper case driver label, `org-roam-descendant-of-p` will alway return `nil`. Fix by only using `file-truename` in the function.
This commit is contained in:
@ -289,7 +289,7 @@ If FILE is not specified, use the current buffer's file-path."
|
||||
(save-match-data
|
||||
(and
|
||||
(org-roam-file-p path)
|
||||
(org-roam-descendant-of-p path directory)))))
|
||||
(file-in-directory-p path directory)))))
|
||||
|
||||
;;;###autoload
|
||||
(defun org-roam-dailies-find-directory ()
|
||||
|
@ -108,13 +108,6 @@ SPEC is a list, as per `dolist'."
|
||||
`(dolist-with-progress-reporter ,spec ,msg ,@body)
|
||||
`(dolist ,spec ,@body)))
|
||||
|
||||
;;; File utilities
|
||||
(defun org-roam-descendant-of-p (a b)
|
||||
"Return t if A is descendant of B."
|
||||
(unless (equal (file-truename a) (file-truename b))
|
||||
(string-prefix-p (expand-file-name b)
|
||||
(expand-file-name a))))
|
||||
|
||||
(defmacro org-roam-with-file (file keep-buf-p &rest body)
|
||||
"Execute BODY within FILE.
|
||||
If FILE is nil, execute BODY in the current buffer.
|
||||
|
@ -194,7 +194,7 @@ FILE is an Org-roam file if:
|
||||
(member ext org-roam-file-extensions)
|
||||
(not (and org-roam-file-exclude-regexp
|
||||
(string-match-p org-roam-file-exclude-regexp path)))
|
||||
(org-roam-descendant-of-p path (expand-file-name org-roam-directory))))))
|
||||
(file-in-directory-p path (expand-file-name org-roam-directory))))))
|
||||
|
||||
(defun org-roam-list-files ()
|
||||
"Return a list of all Org-roam files under `org-roam-directory'.
|
||||
|
Reference in New Issue
Block a user