branch: externals/hyperbole
commit f44525349c8672bad11f176c63adf076ec78c90b
Merge: b4cc99649b 99289aeb38
Author: Robert Weiner <[email protected]>
Commit: GitHub <[email protected]>
Merge pull request #673 from rswgnu/rsw
hyrolo.el - Return default hyrolo file if none set
---
ChangeLog | 13 +++++++++++++
hyrolo.el | 24 ++++++++++++++----------
test/hyrolo-tests.el | 5 +++--
3 files changed, 30 insertions(+), 12 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 51e731c4f8..5c1393f608 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2025-02-19 Bob Weiner <[email protected]>
+
+* hyrolo.el (hyrolo-expand-path-list): Fix to include a default file name
+ even when the file does not yet exist.
+
+* test/hyrolo-tests.el (hyrolo-test--expand-path-list): Expand matching
+ filename.
+
+* hyrolo.el (hyrolo-expand-path-list): Use default "~/.rolo.org" when it
+ exists and is readable. Fixes gh#rswgnu/hyperbole/672 and bug#76424.
+ (hyrolo-get-file-list): Return a default rolo file when `hyrolo-
+ file-list' is nil.
+
2025-02-08 Mats Lidell <[email protected]>
* hywiki.el (hywiki--sitemap-file): Helper function for getting the sitemap
diff --git a/hyrolo.el b/hyrolo.el
index 1a11b3670e..8a692451b5 100644
--- a/hyrolo.el
+++ b/hyrolo.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 7-Jun-89 at 22:08:29
-;; Last-Mod: 18-Jan-25 at 22:45:52 by Bob Weiner
+;; Last-Mod: 19-Feb-25 at 21:41:13 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -317,8 +317,6 @@ of the match or nil when no match.")
(defvar hproperty:highlight-face)
-;; '("~/.rolo.otl" "~/.rolo.org")
-
(defcustom hyrolo-highlight-face 'match
"Face used to highlight rolo search matches."
:type 'face
@@ -676,12 +674,17 @@ they contain that match `hyrolo-file-suffix-regexp'.
Then, if
`find-file-wildcards' is non-nil (the default), any files
containing [char-matches] or * wildcards are expanded to their
matches."
- (if paths
- (hpath:expand-list paths hyrolo-file-suffix-regexp #'file-readable-p)
- (delq nil
- (list "~/.rolo.otl"
- (if (and (boundp 'bbdb-file) (stringp bbdb-file)) bbdb-file)
- (when (hyrolo-google-contacts-p)
google-contacts-buffer-name)))))
+ (let ((default-file (if (file-readable-p "~/.rolo.org")
+ "~/.rolo.org"
+ "~/.rolo.otl")))
+ (unless paths
+ (setq paths
+ (delq nil
+ (list default-file
+ (if (and (boundp 'bbdb-file) (stringp bbdb-file))
bbdb-file)
+ (when (hyrolo-google-contacts-p)
google-contacts-buffer-name)))))
+ (or (hpath:expand-list paths hyrolo-file-suffix-regexp #'file-readable-p)
+ (list (expand-file-name default-file)))))
;;;###autoload
(defun hyrolo-fgrep (string &optional max-matches hyrolo-file count-only
headline-only no-display)
@@ -782,7 +785,8 @@ If ARG is zero, move to the beginning of the current line."
(defun hyrolo-get-file-list ()
"Return the current expanded list of HyRolo search files."
(if (equal hyrolo-file-list (symbol-value 'hyrolo-file-list))
- (or hyrolo--expanded-file-list hyrolo-file-list)
+ (or hyrolo--expanded-file-list hyrolo-file-list
+ (hyrolo-expand-path-list nil))
;; lexical-binding is enabled and there is a local binding of
;; `hyrolo-file-list', so expand it.
(hyrolo-expand-path-list hyrolo-file-list)))
diff --git a/test/hyrolo-tests.el b/test/hyrolo-tests.el
index a1b7980d3d..ef7b8455ea 100644
--- a/test/hyrolo-tests.el
+++ b/test/hyrolo-tests.el
@@ -3,7 +3,7 @@
;; Author: Mats Lidell <[email protected]>
;;
;; Orig-Date: 19-Jun-21 at 22:42:00
-;; Last-Mod: 21-Jan-25 at 17:04:35 by Mats Lidell
+;; Last-Mod: 19-Feb-25 at 21:08:39 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -1678,7 +1678,8 @@ match
(ert-deftest hyrolo-test--expand-path-list ()
"Verify `hyrolo-expand-path-list'."
- (should (equal (hyrolo-expand-path-list nil) '("~/.rolo.otl")))
+ (should (equal (hyrolo-expand-path-list nil)
+ (list (expand-file-name "~/.rolo.otl"))))
(let ((bbdb-file nil))
(mocklet (((hpath:expand-list
'("/file1")