[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/hyperbole 72d17af6e8 081/143: Merge branch 'rsw' into H
From: |
ELPA Syncer |
Subject: |
[elpa] externals/hyperbole 72d17af6e8 081/143: Merge branch 'rsw' into HEAD |
Date: |
Mon, 19 Feb 2024 15:59:08 -0500 (EST) |
branch: externals/hyperbole
commit 72d17af6e81c30dddf42dfaa5f9a21f228701f16
Merge: ffd2dcbb85 3940e00d12
Author: Bob Weiner <rsw@gnu.org>
Commit: Bob Weiner <rsw@gnu.org>
Merge branch 'rsw' into HEAD
---
ChangeLog | 99 ++++++++++++++++++++++++++++++++++++-
DEMO | 2 -
FAST-DEMO | 1 -
HY-COPY | 2 +-
HY-NEWS | 2 -
Makefile | 22 +++++----
hargs.el | 10 ++--
hmouse-drv.el | 8 +--
hmouse-tag.el | 4 +-
hpath.el | 4 +-
hsys-flymake.el | 28 +++++------
hsys-org.el | 81 +++++++++++++++++++++++++++---
hsys-xref.el | 4 +-
hui-mouse.el | 32 +++++++++---
hui.el | 12 +++--
hypb.el | 38 ++++++++++++---
hyperbole.el | 14 ++++--
hyrolo.el | 114 ++++++++++++++++++++++++++-----------------
test/demo-tests.el | 1 -
test/hui-tests.el | 5 +-
test/hy-test-dependencies.el | 23 +++++++--
test/hy-test-helpers.el | 4 +-
test/hyrolo-tests.el | 7 ++-
23 files changed, 386 insertions(+), 131 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index b22591cf36..35b0fe694f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,7 +9,104 @@
(ebut-delete-removes-ebut-in-message-mode-buffer): Add tests for
non-file buffer and non-file in message-mode buffer.
-2024-01-09 Bob Weiner <rsw@gnu.org>
+2024-01-13 Bob Weiner <rsw@gnu.org>
+
+* test/hy-test-dependencies.el: Print status of resolving any
+ multi-version/mixed Org installations.
+
+* hyrolo.el (hyrolo-any-file-type-problem-p): Disable printing
+ output if 'hyrolo-boolean-only-flag' is non-nil, used in
+ testing.
+ test/hyrolo-tests.el (hyrolo-tests--get-file-list-wrong-suffix):
+ Use above flag.
+
+* Makefile (test-ert): Do not ellide any stack traces, i.e. set
+ 'ert-batch-print-length' to nil.
+ Change test SELECTOR= to test= and document how to run.
+
+* hyrolo.el (hyrolo-any-file-type-problem-p): Disable printing of
+ any output when 'hyrolo-boolean-only-flag' is non-nil, typically
+ used for testing purposes.
+
+* hui.el (hui:ebut-unmark): Fix to handle a non-file-based buffer as
+ 'key-src'.
+
+* hsys-org.el (hsys-org-fix-version): Add. Add .org suffix to
+ 'auto-mode-alist' as it may be removed in this function. Return
+ t when Org is reloaded, nil if not. Require Org libraries even
+ when no reload is done. Handle when 'org-version' differs from
+ version number in 'org-dir'.
+ hyperbole.el (hyperb:init): Add call to 'hsys-org-fix-version' when
+ detect a mixed version installation of Org, typically part of
+ built-in Org loaded before loading a newer packaged version.
+
+* hargs.el (hargs:at-p): Fix 'no-default' arg handling to not select
+ non-existent dirs and files when no-default is true.
+
+* hsys-xref.el (hsys-xref-definitions): Fix to pass symbol, not string to
+ 'ert-test-boundp'.
+
+* hmouse-drv.el (hkey-help-show): Rename local var from 'org-help' to
+ 'hkey-org-help' to eliminate any confusion that this is an Org variable.
+
+* hyrolo.el (hyrolo-any-file-type-problem-p): Print error buffer to stdout
+ when run noninteractively (batch mode).
+
+* hyrolo.el (hyrolo-org-mode): Conditionalize org-fold usage as it is only
+ available in newer Org versions. Add missing forward declarations.
+
+* hyrolo.el (hyrolo-org-mode): Add newer Org 9.7-pre hide/show support.
+ test/hyrolo-tests.el (hyrolo-tests--outline-hide-show-heading,
+
hyrolo-tests--outline-show-when-moving-out-of-hidden-line):
+ The above change fixes these tests, so they have been re-enabled.
+
+* hmouse-tag.el (smart-lisp-identifier-chars): Add @ char as advised
+ functions use the orig-function@advice-wrapper-name to refer to the
+ advice.
+
+* hpath.el (hpath:variables): Move 'load-path' and 'exec-path' before
+ 'Info-directory-list' as they should be higher priority matches.
+ Remove old 'Info-directory'.
+
+2024-01-12 Bob Weiner <rsw@gnu.org>
+
+* hypb.el (hypb:display-file-with-logo): Expand any folded headings
+ in the file.
+
+ Improve use in tests by doing the following when in batch mode
+ (noninteractive): Kill off any non-modified buffer showing the file
+ to display before freshly reading it.
+
+2024-01-10 Bob Weiner <rsw@gnu.org>
+
+* hui-mouse.el (hkey-alist): Move 'smart-eolp' to immediately before
+ 'smart-org' clause.
+ hsys-org.el (hsys-org-cycle-bob-file-list): Add to list files auto
+ set to 'org-mode' with minor 'view-mode' that allow org global
+ cycling of headings with {TAB} when at the beginning of buffer and
+ not on a heading.
+ hyrolo.el (hyrolo-verify): Allow buffers associated with files from
+ 'hsys-org-cycle-bob-file-list' as well.
+ hui-mouse.el (smart-org-bob-and-non-heading-p): Check whether {TAB} or
+ {M-RET} should org-global-cycle at point."
+ (smart-eolp): Allow for org global cycling at start of
+ buffer on a non-heading line in Hyperbole doc files when displayed from
+ Hyperbole menu items.
+ hypb.el (hypb:insert-hyperbole-banner): Update so Hyperbole logo link
+ does not include the first blank line, allowing for a different
+ action on {RET} there.
+
+* hyrolo.el (hyrolo-verify): Remove mentions of HyNote (not in this release).
+
+* hypb.el (hypb:display-file-with-logo): Remove call (skip-syntax-forward "-")
+ so point stays at the beginning of buffer for Org global display cycling.
+ Replace 'id-browse-file' and 'view-mode' with 'hyrolo-mode'.
+
+* hsys-flymake.el (repeat-mode): Add missing (require 'repeat) since
+ 'repeat-mode' function used herein is not autoloaded.
+ (flymake-mode-hook): Check whether `repeat-mode' is
+ fboundp or not before trying to enable it (should be autoloaded when
+ it exists, probably in Emacs 28 or greater).
* hsys-xref.el: Add forgotten file.
diff --git a/DEMO b/DEMO
index dea93b59ec..48df6e4b27 100644
--- a/DEMO
+++ b/DEMO
@@ -1,5 +1,3 @@
--*- Mode: org; org-cycle-global-at-bob: t; hsys-org-enable-smart-keys: t -*-
-
* GNU Hyperbole Full Demo/Tutorial by Bob Weiner
Send an email or a testimonial if you like Hyperbole to <rsw@gnu.org>.
diff --git a/FAST-DEMO b/FAST-DEMO
index 8c0c6982ac..1e032c4fff 100644
--- a/FAST-DEMO
+++ b/FAST-DEMO
@@ -1,4 +1,3 @@
--*- Mode: org; org-cycle-global-at-bob: t; hsys-org-enable-smart-keys: t -*-
* GNU Hyperbole Fast Demo by Bob Weiner
diff --git a/HY-COPY b/HY-COPY
index a9335e0425..abd302f665 100644
--- a/HY-COPY
+++ b/HY-COPY
@@ -4,7 +4,7 @@
The following copyright applies to the GNU Hyperbole software.
-Copyright (C) 1989-2022 Free Software Foundation, Inc.
+Copyright (C) 1989-2024 Free Software Foundation, Inc.
Originally developed with support from Motorola Inc., who donated all
such work to the Free Software Foundation, Inc. in the 1990s.
diff --git a/HY-NEWS b/HY-NEWS
index 5ea5c7929c..bc544534d9 100644
--- a/HY-NEWS
+++ b/HY-NEWS
@@ -1,5 +1,3 @@
--*- Mode: org; org-cycle-global-at-bob: t; hsys-org-enable-smart-keys: t -*-
-
* What's New in GNU Hyperbole
by Bob Weiner
diff --git a/Makefile b/Makefile
index e58eae5ad5..5fc7426c91 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
# Author: Bob Weiner
#
# Orig-Date: 15-Jun-94 at 03:42:38
-# Last-Mod: 7-Jan-24 at 14:27:34 by Bob Weiner
+# Last-Mod: 13-Jan-24 at 19:12:58 by Bob Weiner
#
# Copyright (C) 1994-2023 Free Software Foundation, Inc.
# See the file HY-COPY for license information.
@@ -70,8 +70,9 @@
# * Developer targets
#
# To run unit tests:
-# make test - run not interactive tests in batch
mode
-# make test-all - run all tests starting an Emacs in
windowed mode
+# make test - run non-interactive tests in
batch mode
+# make test-all - run all tests starting an
interactive Emacs
+# make test test=<test-name> - run a single test or tests
matching the name
#
# Verify hyperbole installation using different sources:
# make install-<source>
@@ -459,7 +460,7 @@ packageclean:
cd $(pkg_hyperbole)/man/im && $(RM) -r .DS_Store core .place* ._* .*~
*~ \
*.ps *\# *- *.orig *.rej .nfs* CVS .cvsignore; fi
-# Ert test
+# ERT test
.PHONY: tests test test-ert all-tests test-all
tests: test
test: test-ert
@@ -469,10 +470,10 @@ test: test-ert
LET_VARIABLES = (auto-save-default) (enable-local-variables :all)
LOAD_TEST_ERT_FILES=$(patsubst %,(load-file \"%\"),${TEST_ERT_FILES})
-# Run make test SELECTOR=<ert-test-selector> to limit batch test to
+# Run make test test=<ert-test-selector> to limit batch test to
# tests specified by the selector. See "(ert)test selectors"
-ifeq ($(origin SELECTOR), command line)
-HYPB_ERT_BATCH = (ert-run-tests-batch-and-exit \"${SELECTOR}\")
+ifeq ($(origin test), command line)
+HYPB_ERT_BATCH = (ert-run-tests-batch-and-exit \"${test}\")
else
HYPB_ERT_BATCH = (ert-run-tests-batch-and-exit)
endif
@@ -487,9 +488,10 @@ endif
test-ert:
@echo "# Tests: $(TEST_ERT_FILES)"
$(EMACS_BATCH) --eval "(load-file \"test/hy-test-dependencies.el\")" \
- --eval "(let ((auto-save-default) (ert-batch-print-level 10)
(ert-batch-print-length 20) \
- $(HYPB_ERT_BATCH_BT) (ert-batch-backtrace-right-margin 2048)) \
- $(LOAD_TEST_ERT_FILES) $(HYPB_ERT_BATCH))"
+ --eval "(let ((auto-save-default) (ert-batch-print-level 10) \
+ (ert-batch-print-length nil) (backtrace-line-length 5000)
\
+ $(HYPB_ERT_BATCH_BT) (ert-batch-backtrace-right-margin
2048)) \
+ $(LOAD_TEST_ERT_FILES) $(HYPB_ERT_BATCH))"
all-tests: test-all
test-all:
diff --git a/hargs.el b/hargs.el
index fb58c616a3..355a01007b 100644
--- a/hargs.el
+++ b/hargs.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 31-Oct-91 at 23:17:35
-;; Last-Mod: 1-Dec-23 at 11:23:52 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 16:09:00 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -658,9 +658,9 @@ Handles all of the interactive argument types that
`hargs:iform-read' does."
((hpath:at-p 'file))
;; Unquoted remote file name.
((hpath:is-p (hpath:remote-at-p) 'file))
- ;; Possibly non-existent file name
- ((when no-default (hpath:at-p 'file 'non-exist)))
(no-default nil)
+ ;; Possibly non-existent file name
+ ((hpath:at-p 'file 'non-exist))
((buffer-file-name))))
((eq hargs:reading-type 'directory)
(cond ((derived-mode-p 'dired-mode)
@@ -672,9 +672,9 @@ Handles all of the interactive argument types that
`hargs:iform-read' does."
((hpath:at-p 'directory))
;; Unquoted remote directory name.
((hpath:is-p (hpath:remote-at-p) 'directory))
- ;; Possibly non-existent directory name
- ((when no-default (hpath:at-p 'directory 'non-exist)))
(no-default nil)
+ ;; Possibly non-existent directory name
+ ((hpath:at-p 'directory 'non-exist))
(default-directory)))
((eq hargs:reading-type 'string)
(or (hargs:delimited "\"" "\"") (hargs:delimited "'" "'")
diff --git a/hmouse-drv.el b/hmouse-drv.el
index fa7f3822f4..fb40cad7ef 100644
--- a/hmouse-drv.el
+++ b/hmouse-drv.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 04-Feb-90
-;; Last-Mod: 3-Jan-24 at 02:24:39 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 15:32:40 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -1240,7 +1240,7 @@ the current window. By default, it is displayed
according to the setting of
`hpath:display-where'."
(if (bufferp buffer) (setq buffer (buffer-name buffer)))
(if (null buffer) (setq buffer (buffer-name (current-buffer))))
- (let ((org-help (and (stringp buffer) (string-match "\\`\\*Org Help\\*"
buffer)))
+ (let ((hkey-org-help (and (stringp buffer) (string-match "\\`\\*Org Help\\*"
buffer)))
(owind (selected-window)))
(and (stringp buffer)
(string-match "^\\*Help\\|Help\\*$" buffer)
@@ -1262,7 +1262,7 @@ the current window. By default, it is displayed
according to the setting of
(selected-window))
(t (hpath:display-buffer buf)))))
;; Ignore org-mode's temp help buffers which it handles on its own.
- (when (and wind (not org-help))
+ (when (and wind (not hkey-org-help))
(setq minibuffer-scroll-window wind)
;; Don't use help-mode in buffers already set up with a
;; quit-key to bury the buffer, e.g. minibuffer completions,
@@ -1275,7 +1275,7 @@ the current window. By default, it is displayed
according to the setting of
(when (derived-mode-p 'help-mode)
(local-set-key "q" #'hkey-help-hide)))))
;; If in an *Org Help* buffer, reselect the Org buffer.
- (when org-help
+ (when hkey-org-help
(select-window owind))
;; If in a *Completions* buffer, re-select the window that
;; generated the completions.
diff --git a/hmouse-tag.el b/hmouse-tag.el
index ae64e23b86..29bf64d525 100644
--- a/hmouse-tag.el
+++ b/hmouse-tag.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 24-Aug-91
-;; Last-Mod: 7-Jan-24 at 14:34:32 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 01:29:42 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -598,7 +598,7 @@ in the current directory or any of its ancestor
directories."
"Regexp matching the first character of a Lisp identifier.")
;;;###autoload
-(defconst smart-lisp-identifier-chars "-_:/*+=%$&?!<>a-zA-Z0-9~^"
+(defconst smart-lisp-identifier-chars "-_:/*+=%$&?!<>a-zA-Z0-9~^@"
"Regexp matching a valid char in a Lisp identifier except the first char.
Excludes character matching square brackets, so may be used with
skip-characters-forward/backward.")
diff --git a/hpath.el b/hpath.el
index 0ed3599ea3..4ee5a5793d 100644
--- a/hpath.el
+++ b/hpath.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 1-Nov-91 at 00:44:23
-;; Last-Mod: 26-Dec-23 at 22:42:39 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 00:57:41 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -546,7 +546,7 @@ Used only if the function `image-mode' is defined."
;; link is later resolved.
;;
(defcustom hpath:variables
- '(hyperb:dir Info-directory Info-directory-list sm-directory load-path
exec-path)
+ '(hyperb:dir load-path exec-path Info-directory-list sm-directory)
"*List of Emacs Lisp variable symbols to substitute within matching link
paths.
Each variable value, if bound, must be either a pathname or a list of
pathnames.
When embedded within a path, the format is ${variable}."
diff --git a/hsys-flymake.el b/hsys-flymake.el
index 10d167972f..4873af3b7d 100644
--- a/hsys-flymake.el
+++ b/hsys-flymake.el
@@ -3,16 +3,14 @@
;; Keywords: tools
;;
;; Author: Bob Weiner
-;; Org: RWorks
-;; E-mail: rsw@gnu.org
;;
;; Orig-Date: 31-Dec-23 at 13:54:08
-;; Last-Mod: 4-Jan-24 at 22:51:11 by Bob Weiner
+;; Last-Mod: 9-Jan-24 at 21:29:43 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
;; Copyright (C) 2023-2024 Free Software Foundation, Inc.
-;; Licensed under the GNU General Public License, version 3.
+;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
;;
@@ -59,11 +57,11 @@
;;
;;; Code:
-;; Don't require `flymake-mode' or `repeat-mode' here. Instead we
-;; leave it to each function to check whether `flymake-mode' is
-;; enabled and active in the current buffer. This way, if the user
-;; never uses `flymake-mode' that library is never loaded and the
-;; Smart Key context from `hkey-alist' in "hui-mouse.el" that invokes
+;; Don't require `flymake-mode' or `repeat' here. Instead we leave
+;; it to each function to check whether `flymake-mode' is enabled
+;; and active in the current buffer. This way, if the user never
+;; uses `flymake-mode' that library is never loaded and the Smart
+;; Key context from `hkey-alist' in "hui-mouse.el" that invokes
;; functions from herein, never triggers.
(require 'hbut)
@@ -141,7 +139,7 @@ Issue is inserted into the buffer after the current visible
line."
;; flymake-mode does not bind any keys; it has only menu bindings.
;; Add key bindings for use in the source buffer on the C-c C-l prefix.
-;; Each time these keys are changed, need to disable repeat-mode and
+;; Each time these keys are changed, need to disable `repeat-mode' and
;; then re-enable it to read the updated key bindings.
(defvar hsys-flymake-mode-control-l-prefix-map
(let ((map (make-sparse-keymap)))
@@ -155,9 +153,9 @@ Issue is inserted into the buffer after the current visible
line."
(define-key map "w" 'hsys-flymake-toggle-wraparound)
map))
-;; Use repeat-mode for appropriate flymake commands so can repeat them
-;; with their last keystroke, e.g. repeat {C-c C-l n} by pressing {n}
-;; repeatedly.
+;; Use `repeat-map' property for appropriate flymake commands so can
+;; repeat them with their last keystroke, e.g. repeat {C-c C-l n} by
+;; pressing {n} repeatedly.
(defvar hsys-flymake-repeat-map
(let ((map (make-sparse-keymap)))
(mapc (lambda (cmd)
@@ -181,7 +179,9 @@ Issue is inserted into the buffer after the current visible
line."
(lambda () (when flymake-mode
(define-key flymake-mode-map "\C-c"
hsys-flymake-mode-control-c-prefix-map)
- (repeat-mode 1))))
+ ;; probably Emacs 28 or greater
+ (when (fboundp 'repeat-mode)
+ (repeat-mode 1)))))
;; If flymake-mode is already enabled, re-enable it to ensure
;; repeat-mode gets enabled.
(when (and (featurep 'flymake) flymake-mode)
diff --git a/hsys-org.el b/hsys-org.el
index 2d7bf681bb..910b0682d9 100644
--- a/hsys-org.el
+++ b/hsys-org.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 2-Jul-16 at 14:54:14
-;; Last-Mod: 26-Dec-23 at 12:05:46 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 19:50:40 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -68,12 +68,12 @@
;;;###autoload
(defcustom hsys-org-enable-smart-keys 'unset
"This applies in Org major/minor modes only when `hyperbole-mode' is active.
-If set to \\='unset prior to loading Hyperbole, then Hyperbole
-initialization will set its value.
+If set to \\='unset prior to loading Hyperbole, then Hyperbole initialization
+will set its value.
-The following table shows what the Smart Keys do in various contexts
-with different settings of this option. For example, a nil value makes
-{M-RET} operate as it normally does within Org mode contexts.
+The following table shows what the Smart Keys do in various contexts with
+different settings of this option. For example, a nil value makes {M-RET}
+operate as it normally does within Org mode contexts.
|---------+-------------------+------------------+----------+------------------|
| Setting | Smart Key Context | Hyperbole Button | Org Link | Fallback Command
|
@@ -100,6 +100,13 @@ with different settings of this option. For example, a
nil value makes
;;; Public Action Types
;;; ************************************************************************
+(defcustom hsys-org-cycle-bob-file-list
+ '("${hyperb:dir}/DEMO" "${hyperb:dir}/FAST-DEMO" "${hyperb:dir}/MANIFEST"
+ "${hyperb:dir}/HY-ABOUT" "${hyperb:dir}/HY-NEWS")
+ "List of files to globally `org-cycle' when at the beginning of the buffer."
+ :type '(repeat file)
+ :group 'hyperbole)
+
(defact org-link (&optional link)
"Follow an optional Org mode LINK to its target.
If LINK is nil, follow any link at point. Otherwise, trigger an error."
@@ -145,6 +152,68 @@ an error."
;;; Public functions
;;; ************************************************************************
+;;;###autoload
+(defun hsys-org-fix-version ()
+ "If multiple Org versions are loaded, use the one first on `load-path'.
+Always ensure Org libraries have been required.
+Return t if Org is reloaded, else nil."
+ ;; Not all versions of org include this variable, so set it
+ (setq org--inhibit-version-check nil
+ org-list-allow-alphabetical nil)
+ (let ((org-dir (ignore-errors (org-find-library-dir "org")))
+ (org-install-dir
+ (ignore-errors (org-find-library-dir "org-loaddefs")))
+ org-dir-version)
+ (cond ((and org-dir org-install-dir (string-equal org-dir org-install-dir)
+ ;; Still may have a situation where the Org version matches the
+ ;; builtin Org but the directories are for a newer Org
+ ;; package version.
+ (if (string-match "[\\/]org-\\([0-9.]+-?[a-z]*\\)" org-dir)
+ (string-equal (setq org-dir-version (match-string 1
org-dir))
+ (remove ?- (org-release)))
+ t))
+ ;; Just require these libraries used for testing to ensure
+ ;; they are loaded from the single Org version used.
+ (mapc (lambda (lib-sym) (require lib-sym nil t))
+ '(org-version org-keys org-compat ol org-table org-macs org-id
+ org-element org-list org-element org-src
org-fold org))
+ nil)
+ (t
+ ;; Ensure using any local available packaged version of Org mode
+ ;; rather than built-in which may have been activated before
+ ;; load-path was set correctly. Avoids mixed version load of Org.
+ (mapc (lambda (lib-sym) (when (featurep lib-sym) (unload-feature
lib-sym t)))
+ '(org org-version org-keys org-compat ol org-table org-macs
org-id
+ org-element org-list org-element org-src org-fold))
+ (package-initialize)
+ (let ((pkg-desc (car (cdr (assq 'org package-archive-contents)))))
+ (package-activate pkg-desc t))
+ ;; Otherwise, `font-lock-ensure' make invoke an undefined matcher
+ ;; function, `org-fontify-inline-src-blocks'.
+ (load "org-src")
+ ;; Otherwise, `org-id-get-create' may call undefined
+ ;; `org-element-cache-active-p'
+ (load "org-element")
+ ;; Otherwise, {M-RET} may not be bound to a key
+ (load "org-keys")
+ ;; Otherwise, `org-file-name-concat' may be undefined
+ (load "org-compat")
+ ;; Otherwise, `org--inhibit-version-check' may be undefined
+ (load "org-macs")
+ ;; Otherwise, `org-list-allow-alphabetical' may be undefined
+ (load "org-list")
+ ;; Otherwise, `org-fold--advice-edit-commands' may be undefined
+ (load "org-fold")
+ ;; Otherwise, `org-link--description-folding-spec' may be undefined
+ (load "ol")
+ (cl-flet ((require (lambda (lib-sym &optional _filename _noerror)
+ (load (symbol-name lib-sym)))))
+ (require 'org))
+ ;; Next setting may have been deleted with the library
+ ;; unloading, so restore it.
+ (add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
+ t))))
+
;;;###autoload
(defun hsys-org-meta-return-shared-p ()
"Return non-nil if hyperbole-mode is active and shares the org-meta-return
key."
diff --git a/hsys-xref.el b/hsys-xref.el
index 13b441e6af..e02fff0609 100644
--- a/hsys-xref.el
+++ b/hsys-xref.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 24-Aug-91
-;; Last-Mod: 9-Jan-24 at 12:07:34 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 15:55:13 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -31,7 +31,7 @@
(let* ((elisp-flag (smart-emacs-lisp-mode-p))
(xref-backend (or (and elisp-flag
(fboundp 'ert-test-boundp)
- (ert-test-boundp identifier)
+ (ert-test-boundp (intern-soft identifier))
(boundp 'xref-etags-mode)
'etags)
(xref-find-backend)))
diff --git a/hui-mouse.el b/hui-mouse.el
index 3c9affdb67..b1ffa16509 100644
--- a/hui-mouse.el
+++ b/hui-mouse.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 04-Feb-89
-;; Last-Mod: 4-Jan-24 at 22:51:41 by Bob Weiner
+;; Last-Mod: 10-Jan-24 at 21:26:33 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -40,7 +40,10 @@
;;; ************************************************************************
(require 'ert-results nil t) ;; Action Key support in ERT result buffers
-(require 'hsys-flymake)
+;; Library in next line (for code optionally used in `smart-eol') uses
+;; `repeat-map' which was not added to the "repeat.el" library in Emacs 27.1,
+;; so don't use if it fails to load properly.
+(ignore-errors (require 'hsys-flymake))
(require 'hload-path)
(require 'hsys-org)
(require 'hbut)
@@ -292,6 +295,10 @@ Its default value is `smart-scroll-down'. To disable it,
set it to
(smart-helm-alive-p)))
. ((funcall (key-binding (kbd "RET"))) . (funcall (key-binding (kbd
"RET")))))
;;
+ ;; If at the end of a line (eol), invoke the associated Smart Key handler
EOL handler.
+ ((smart-eolp)
+ . ((funcall action-key-eol-function) . (funcall assist-key-eol-function)))
+ ;;
;; Handle any Org mode-specific contexts but give priority to Hyperbole
;; buttons prior to cycling Org headlines
((and (not (hyperb:stack-frame '(smart-org)))
@@ -312,10 +319,6 @@ Its default value is `smart-scroll-down'. To disable it,
set it to
((and (fboundp 'xref--item-at-point) (xref--item-at-point))
. ((xref-goto-xref) . (xref-show-location-at-point)))
;;
- ;; If at the end of a line (eol), invoke the associated Smart Key handler
EOL handler.
- ((smart-eolp)
- . ((funcall action-key-eol-function) . (funcall assist-key-eol-function)))
- ;;
;; The Smart Menu system is an attractive in-buffer menu system
;; that works on any display system that supports Emacs. It
;; predates Emacs' menu systems; it is a part of InfoDock.
@@ -1918,6 +1921,15 @@ handled by the separate implicit button type,
`org-link-outside-org-mode'."
;; contexts
nil)))))
+(defun smart-org-bob-and-non-heading-p ()
+ "Check whether {TAB} should globally `org-cycle' at point."
+ (and (bobp)
+ buffer-file-name
+ (derived-mode-p 'org-mode)
+ (not (org-at-heading-p))
+ (member buffer-file-name
+ (hpath:expand-list hsys-org-cycle-bob-file-list))))
+
;;; ************************************************************************
;;; smart-outline functions
;;; ************************************************************************
@@ -2090,12 +2102,16 @@ If key is pressed:
"Return t if point is at the end of a visible line but not the end of the
buffer."
;; smart-helm handles eol for helm buffers
(unless (or (and (smart-helm-alive-p) (equal (helm-buffer-get)
(buffer-name)))
+ ;; Allow for org global cycling at start of buffer on a
+ ;; non-heading line in Hyperbole doc files when
+ ;; displayed from Hyperbole menu items.
+ (smart-org-bob-and-non-heading-p)
+ ;; If there is a flymake diagnostic issue at eol,
+ ;; drop through this clause to handle it later.
(and (featurep 'hsys-flymake)
(boundp 'flymake-mode)
flymake-mode
(eolp)
- ;; If there is a flymake diagnostic issue at eol,
- ;; drop through this clause to handle it later.
(hsys-flymake-get-issue-at-position)))
(if (eq major-mode 'kotl-mode)
(and (not (kotl-mode:eobp)) (kotl-mode:eolp t))
diff --git a/hui.el b/hui.el
index a2d7db4bd5..3d64713b7a 100644
--- a/hui.el
+++ b/hui.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 19-Sep-91 at 21:42:03
-;; Last-Mod: 3-Jan-24 at 23:42:18 by Mats Lidell
+;; Last-Mod: 13-Jan-24 at 18:55:34 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -1522,10 +1522,12 @@ With a prefix argument, also delete the button text
between the delimiters."
(when (search-forward ebut:label-end nil t) (funcall form)))
;; Non-interactive invocation.
(let (cur-flag)
- (if (and (or (null key-src) (eq key-src buffer-file-name))
- (or (null directory) (eq directory default-directory)))
- (setq cur-flag t)
- (set-buffer (find-file-noselect (expand-file-name key-src
directory))))
+ (cond ((and (or (null key-src) (eq key-src buffer-file-name))
+ (or (null directory) (eq directory default-directory)))
+ (setq cur-flag t))
+ ((bufferp key-src)
+ (set-buffer key-src))
+ (t (set-buffer (find-file-noselect (expand-file-name key-src
directory)))))
(unless (stringp but-key)
(setq but-key (hbut:label-p))
(unless (stringp but-key)
diff --git a/hypb.el b/hypb.el
index 538107e289..4cd751a9ad 100644
--- a/hypb.el
+++ b/hypb.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 6-Oct-91 at 03:42:38
-;; Last-Mod: 3-Jan-24 at 23:44:37 by Mats Lidell
+;; Last-Mod: 12-Jan-24 at 08:20:56 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -1091,17 +1091,43 @@ If FILE is not an absolute path, expand it relative to
`hyperb:dir'."
(error "(hypb:display-file-with-logo): 'file' must be a string, not '%s'"
file))
(unless (file-name-absolute-p file)
(setq file (expand-file-name file hyperb:dir)))
- (let ((existing-buf (when (stringp file) (get-file-buffer file))))
- ;; A stub for this function is defined in hversion.el when not running in
InfoDock.
- (id-browse-file file)
+ (let ((existing-buf (when (stringp file) (get-file-buffer file)))
+ (hsys-org-enable-smart-keys hsys-org-enable-smart-keys))
+
+ ;; Ensure Smart Keys do not defer to Org mode when running tests
noninteractively
+ (when noninteractive
+ (setq sys-org-enable-smart-keys t))
+
+ (when (and existing-buf noninteractive)
+ ;; Likely are running tests when running non-interactively, so
+ ;; kill existing buffer, so each test run starts from scratch
+ ;; and is consistent. Trigger an error if buffer has been
+ ;; modified.
+ (when (buffer-modified-p existing-buf)
+ (error "(hypb:display-file-with-logo): Attempt to kill modified buffer:
%s" existing-buf))
+ (when (kill-buffer existing-buf)
+ (setq existing-buf nil)))
+
+ ;; A stub for the `id-browse-file' function is defined in
+ ;; "hversion.el" when not running in InfoDock.
+ (if (eq (symbol-function #'id-browse-file) #'view-file)
+ (find-file file)
+ ;; Running under InfoDock
+ (id-browse-file file))
+
(unless existing-buf
(let ((buffer-read-only))
(hypb:insert-hyperbole-banner))
(goto-char (point-min))
- (skip-syntax-forward "-")
(set-window-start (selected-window) 1)
(set-buffer-modified-p nil)
+ (org-mode)
+ (setq-local org-cycle-global-at-bob t)
(view-mode)
+ ;; Ensure no initial folding of the buffer, possibly from a hook
+ (if (fboundp 'org-fold-show-all)
+ (org-fold-show-all)
+ (org-show-all))
;; On some versions of Emacs like Emacs28, need a slight delay
;; for file loading before searches will work properly.
;; Otherwise, "test/demo-tests.el" may fail.
@@ -1146,7 +1172,7 @@ Without file, the banner is prepended to the current
buffer."
(insert "\n")
(insert-image hyperbole-banner)
(insert "\n")
- (setq button (make-button (- (point) 3) (- (point) 2) :type
'hyperbole-banner))
+ (setq button (make-button (- (point) 2) (- (point) 1) :type
'hyperbole-banner))
(button-put button 'help-echo (concat "Click to visit " hypb:home-page))
(button-put button 'action #'hypb:browse-home-page)
(button-put button 'face 'default)
diff --git a/hyperbole.el b/hyperbole.el
index 6e7e7f8dc1..ee11cbf1bf 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -8,7 +8,7 @@
;; Maintainer: Mats Lidell <matsl@gnu.org>
;; Maintainers: Robert Weiner <rsw@gnu.org>, Mats Lidell <matsl@gnu.org>
;; Created: 06-Oct-92 at 11:52:51
-;; Last-Mod: 3-Jan-24 at 02:27:05 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 16:28:45 by Bob Weiner
;; Released: 03-Dec-23
;; Version: 9.0.0
;; Keywords: comm, convenience, files, frames, hypermedia, languages,
mail, matching, mouse, multimedia, outlines, tools, wp
@@ -496,6 +496,13 @@ frame, those functions by default still return the prior
frame."
'buttons
t)))
;;
+ ;; This next function call must be run before any tests involving Org
+ ;; in case the user has installed a new version of Org but Emacs has
+ ;; loaded parts of Org before his load path is finalized. It loads
+ ;; the newer version of Org, if any, assuming `load-path' is configured
+ ;; correctly.
+ (hsys-org-fix-version)
+ ;;
;; When vertico-mode is used, vertico-mouse-mode is needed for the
;; Action Key to properly select completions from the candidate
;; list, so force its usage when vertico-mode is invoked.
@@ -505,9 +512,10 @@ frame, those functions by default still return the prior
frame."
;;
;; Hyperbole initialization is complete.
(message "Initializing Hyperbole...done"))
+
-;; This call loads the rest of the Hyperbole system.
-(require 'hinit)
+ ;; This call loads the rest of the Hyperbole system.
+ (require 'hinit)
(defun hyperbole--enable-mode ()
"Enable Hyperbole global minor mode."
diff --git a/hyrolo.el b/hyrolo.el
index b400dc575b..a199de2a88 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: 6-Jan-24 at 10:02:10 by Mats Lidell
+;; Last-Mod: 13-Jan-24 at 20:04:26 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -28,10 +28,11 @@
;;; Other required Elisp libraries
;;; ************************************************************************
-(require 'custom) ;; For 'defface'.
+(require 'custom) ;; For `defface'
(require 'hversion)
(require 'hmail)
-(require 'hypb) ;; For 'hypb:mail-address-regexp'.
+(require 'hsys-org) ;; For `hsys-org-cycle-bob-file-list'
+(require 'hypb) ;; For `hypb:mail-address-regexp'
(require 'outline)
(require 'package)
(require 'reveal)
@@ -61,9 +62,12 @@
(defvar helm-org-rifle-show-level-stars)
(defvar hproperty:but-emphasize-flag)
(defvar markdown-regex-header)
+(defvar org-fold-core-style)
+(defvar org-link--link-folding-spec)
(defvar org-roam-db-autosync-mode)
(defvar org-roam-directory)
(defvar plstore-cache-passphrase-for-symmetric-encryption)
+(defvar reveal-auto-hide)
(declare-function consult-grep "ext:consult")
(declare-function consult-ripgrep "ext:consult")
@@ -78,6 +82,8 @@
(declare-function helm-org-rifle-org-directory "ext:helm-org-rifle")
(declare-function helm-org-rifle-show-full-contents "ext:helm-org-rifle")
(declare-function kotl-mode:to-valid-position "kotl/kotl-mode")
+(declare-function org-fold-initialize "org-fold")
+(declare-function org-fold-core-set-folding-spec-property "org-fold")
(declare-function org-roam-db-autosync-mode "ext:org-roam")
(declare-function xml-node-child-string "ext:google-contacts")
(declare-function xml-node-get-attribute-type "ext:google-contacts")
@@ -1136,16 +1142,19 @@ matched entries."
(hyrolo-show-levels 1))
(defun hyrolo-verify ()
- "Verify point is in a HyRolo or HyNote match buffer."
- (when (not (member (buffer-name) (list hyrolo-display-buffer
- (and (car (hyrolo-get-file-list))
- (file-name-nondirectory (car
(hyrolo-get-file-list))))
- (when (boundp 'hynote-display-buffer)
- hynote-display-buffer)
- (when (boundp 'hynote-file-list)
- (and (car hynote-file-list)
- (file-name-nondirectory (car
hynote-file-list)))))))
- (error "(HyRolo): Use this command in HyRolo/HyNote match buffers or
primary file buffers")))
+ "Verify point is in a HyRolo match buffer."
+ (when (not (member (buffer-name) (nconc (list hyrolo-display-buffer
+ (and (car
(hyrolo-get-file-list))
+ (file-name-nondirectory
(car (hyrolo-get-file-list)))))
+ (mapcar #'file-name-nondirectory
+ (hpath:expand-list
hsys-org-cycle-bob-file-list))
+ ;; (when (boundp
'hynote-display-buffer)
+ ;; hynote-display-buffer)
+ ;; (when (boundp 'hynote-file-list)
+ ;; (and (car hynote-file-list)
+ ;; (file-name-nondirectory (car
hynote-file-list))))
+ )))
+ (error "(HyRolo): Use this command in HyRolo match buffers or primary file
buffers")))
(defun hyrolo-widen ()
"Widen non-special HyRolo buffers mainly for adding entries or editing them."
@@ -2015,7 +2024,7 @@ of the current heading, or to 1 if the current line is
not a heading."
"Move back to the start of current subtree and hide everything after the
heading.
If within a file header, hide the whole file after the end of the current line.
-Necessary, since with reveal-mode active, outline-hide-subtree works
+Necessary, since with reveal-mode active, `outline-hide-subtree' works
only if on the heading line of the subtree."
(interactive)
(if (and (hyrolo-hdr-in-p)
@@ -2411,37 +2420,41 @@ package is not installed."
;; 6. if not, display a buffer with the invalid file types and return t
(when (or files-invalid-suffix-list files-no-mode-list)
- (with-help-window "*HyRolo Errors*"
- (princ "`hyrolo-file-list' gets its files from these patterns:\n")
- (mapc (lambda (spec) (princ (format "\t%S\n" spec)))
- hyrolo-file-list)
- (terpri)
- (princ "When expanded, it includes the following files that HyRolo
cannot process:\n\n")
-
- (when files-invalid-suffix-list
- (princ (format "Files with invalid or no suffixes:\n (valid
suffixes: %S)\n"
- hyrolo-file-suffix-regexp))
- (mapc (lambda (file) (princ (format "\t%S\n" file)))
- files-invalid-suffix-list)
+ (unless (and (boundp 'hyrolo-boolean-only-flag) hyrolo-boolean-only-flag)
+ (with-help-window "*HyRolo Errors*"
+ (princ "`hyrolo-file-list' gets its files from these patterns:\n")
+ (mapc (lambda (spec) (princ (format "\t%S\n" spec)))
+ hyrolo-file-list)
(terpri)
- (princ "Please remove the above files from `hyrolo-file-list'.\n")
- (terpri))
-
- (when files-no-mode-list
- (princ "Files with invalid modes (file suffixes not in
`auto-mode-alist'):\n")
- (mapc (lambda (file) (princ (format "\t%S\n" file)))
- files-no-mode-list)
- (terpri)
- (princ "Please add appropriate entries for the above files to
`auto-mode-alist'.\n")
- (terpri))
-
- (when (hyperb:stack-frame '(hyrolo-file-list-changed))
- ;; Errors occurred with a let of `hyrolo-file-list' so
- ;; include backtrace of where this occurred.
- (princ "Stack trace of where invalid files were referenced:\n")
- (terpri)
- ;; (setq backtrace-view (plist-put backtrace-view :show-locals t))
- (backtrace)))
+ (princ "When expanded, it includes the following files that HyRolo
cannot process:\n\n")
+
+ (when files-invalid-suffix-list
+ (princ (format "Files with invalid or no suffixes:\n (valid
suffixes: %S)\n"
+ hyrolo-file-suffix-regexp))
+ (mapc (lambda (file) (princ (format "\t%S\n" file)))
+ files-invalid-suffix-list)
+ (terpri)
+ (princ "Please remove the above files from `hyrolo-file-list'.\n")
+ (terpri))
+
+ (when files-no-mode-list
+ (princ "Files with invalid modes (file suffixes not in
`auto-mode-alist'):\n")
+ (mapc (lambda (file) (princ (format "\t%S\n" file)))
+ files-no-mode-list)
+ (terpri)
+ (princ "Please add appropriate entries for the above files to
`auto-mode-alist'.\n")
+ (terpri))
+
+ (when (hyperb:stack-frame '(hyrolo-file-list-changed))
+ ;; Errors occurred with a let of `hyrolo-file-list' so
+ ;; include backtrace of where this occurred.
+ (princ "Stack trace of where invalid files were referenced:\n")
+ (terpri)
+ ;; (setq backtrace-view (plist-put backtrace-view :show-locals t))
+ (backtrace))
+
+ (when noninteractive
+ (princ (buffer-string)))))
t)))
(defun hyrolo-buffer-exists-p (hyrolo-buf)
@@ -2600,6 +2613,19 @@ Any non-nil value returned is a cons of (<entry-name> .
<entry-source>)."
;; set its parent mode property to org-mode so can `derived-mode-p'
;; checks will pass.
(put 'hyrolo-org-mode 'derived-mode-parent 'org-mode)
+
+ (when (featurep 'org-fold) ;; newer Org versions
+ (when (and org-link-descriptive
+ (eq org-fold-core-style 'overlays))
+ (add-to-invisibility-spec '(org-link)))
+ (org-fold-initialize (or (and (stringp org-ellipsis) (not (equal ""
org-ellipsis)) org-ellipsis)
+ "..."))
+ (make-local-variable 'org-link-descriptive)
+ (when (eq org-fold-core-style 'overlays) (add-to-invisibility-spec
'(org-hide-block . t)))
+ (if org-link-descriptive
+ (org-fold-core-set-folding-spec-property (car
org-link--link-folding-spec) :visible nil)
+ (org-fold-core-set-folding-spec-property (car
org-link--link-folding-spec) :visible t)))
+
(setq-local hyrolo-entry-regexp "^\\(\\*+\\)\\([ ]+\\)"
hyrolo-hdr-and-entry-regexp (concat hyrolo-hdr-prefix-regexp
hyrolo-entry-regexp)
hyrolo-entry-group-number 1
diff --git a/test/demo-tests.el b/test/demo-tests.el
index 0b1c328de8..8414396d6e 100644
--- a/test/demo-tests.el
+++ b/test/demo-tests.el
@@ -274,7 +274,6 @@
(should (not (org-check-for-hidden 'headlines)))
(save-excursion
(action-key))
-;;; (org-hide-entry)
(should (org-check-for-hidden 'headlines)))))
;; Manifest
diff --git a/test/hui-tests.el b/test/hui-tests.el
index c059fc5fda..28e51208af 100644
--- a/test/hui-tests.el
+++ b/test/hui-tests.el
@@ -3,7 +3,7 @@
;; Author: Mats Lidell <matsl@gnu.org>
;;
;; Orig-Date: 30-Jan-21 at 12:00:00
-;; Last-Mod: 30-Dec-23 at 00:00:18 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 16:30:08 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -935,11 +935,14 @@ With point on label suggest that ibut for rename."
(ert-deftest hui--link-possible-types ()
"Verify right type is selected from referent buffer."
+ (hsys-org-fix-version)
+
;; Org Roam or Org Id link-to-org-id
(let ((file (make-temp-file "hypb" nil ".org")))
(unwind-protect
(progn
(find-file file)
+ (erase-buffer)
(org-id-get-create nil)
(re-search-forward ":ID:")
(hy-test-helpers:ensure-link-possible-type 'link-to-org-id))
diff --git a/test/hy-test-dependencies.el b/test/hy-test-dependencies.el
index ecf59675c7..7fc56087c5 100644
--- a/test/hy-test-dependencies.el
+++ b/test/hy-test-dependencies.el
@@ -3,11 +3,11 @@
;; Author: Mats Lidell <matsl@gnu.org>
;;
;; Orig-Date: 20-Feb-21 at 23:16:00
-;; Last-Mod: 2-Oct-23 at 04:48:58 by Bob Weiner
+;; Last-Mod: 13-Jan-24 at 20:08:39 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
-;; Copyright (C) 2021 Free Software Foundation, Inc.
+;; Copyright (C) 2021-2024 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -18,12 +18,13 @@
;;; Code:
+(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/";))
+(package-initialize)
+
(require 'hload-path)
+(require 'hyperbole)
(add-to-list 'load-path (expand-file-name "test" hyperb:dir))
-(package-initialize)
-(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/";))
-
(defun hy-test-ensure-package-installed (pkg-symbol)
(unless (package-installed-p pkg-symbol)
(package-refresh-contents)
@@ -35,5 +36,17 @@
;; Needed when `hypb:display-file-with-logo' uses `org-mode'.
(setq hsys-org-enable-smart-keys t)
+(require 'pp)
+(terpri)
+(print (format "org-directory = %S" (ignore-errors (org-find-library-dir
"org"))))
+(print (format "ord-load-dir = %S" (ignore-errors (org-find-library-dir
"org-loaddefs"))))
+(print (format "version = %S" (org-release)))
+(terpri)
+
+(let ((org-reloaded (hsys-org-fix-version)))
+ (if org-reloaded
+ (message "Mixed Org versions fixed and reloaded; version is now %s"
org-version)
+ (message "Correct, single version of Org is active %s" org-version)))
+
(provide 'hy-test-dependencies)
;;; hy-test-dependencies.el ends here
diff --git a/test/hy-test-helpers.el b/test/hy-test-helpers.el
index 80bd4814f3..1ac28dd1a4 100644
--- a/test/hy-test-helpers.el
+++ b/test/hy-test-helpers.el
@@ -3,7 +3,7 @@
;; Author: Mats Lidell <matsl@gnu.org>
;;
;; Orig-Date: 30-Jan-21 at 12:00:00
-;; Last-Mod: 7-Jan-24 at 00:56:08 by Mats Lidell
+;; Last-Mod: 13-Jan-24 at 16:21:45 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -19,7 +19,7 @@
;;; Code:
(require 'ert)
-(require 'hmouse-drv) ;For `action-key'.
+(require 'hmouse-drv) ; For `action-key'
(eval-when-compile (require 'cl-lib))
(defun hy-test-helpers:consume-input-events ()
diff --git a/test/hyrolo-tests.el b/test/hyrolo-tests.el
index e033a471da..4ede38fa42 100644
--- a/test/hyrolo-tests.el
+++ b/test/hyrolo-tests.el
@@ -3,7 +3,7 @@
;; Author: Mats Lidell <matsl@gnu.org>
;;
;; Orig-Date: 19-Jun-21 at 22:42:00
-;; Last-Mod: 7-Jan-24 at 01:00:43 by Mats Lidell
+;; Last-Mod: 13-Jan-24 at 20:05:16 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -464,7 +464,8 @@ Match a string in the second cell."
(let ((tmp-file (make-temp-file "hypb" nil)))
(unwind-protect
(should-error
- (let ((hyrolo-file-list (list tmp-file)))
+ (let* ((hyrolo-boolean-only-flag t)
+ (hyrolo-file-list (list tmp-file)))
()))
(hy-delete-file-and-buffer tmp-file))))
@@ -773,7 +774,6 @@ Make cell start with HEADING and follow by next line BODY."
(ert-deftest hyrolo-tests--outline-hide-show-heading ()
"Verify hiding and showing headings."
- (skip-unless (version< org-version "9.6"))
(let* ((org-file (make-temp-file "hypb" nil ".org"
(hyrolo-tests--gen-outline ?* "heading" 1
"body" 2)))
(hyrolo-file-list (list org-file)))
@@ -815,7 +815,6 @@ Make cell start with HEADING and follow by next line BODY."
(ert-deftest hyrolo-tests--outline-show-when-moving-out-of-hidden-line ()
"Verify region is shown after moving out of hidden area."
- (skip-unless (version< org-version "9.6"))
(let* ((org-file (make-temp-file "hypb" nil ".org"
(hyrolo-tests--gen-outline ?* "heading" 1
"body" 2)))
(hyrolo-file-list (list org-file)))
- [elpa] externals/hyperbole c36535463c 071/143: Merge pull request #435 from rswgnu/matsl-rsw-run-tests-specified-by-selector, (continued)
- [elpa] externals/hyperbole c36535463c 071/143: Merge pull request #435 from rswgnu/matsl-rsw-run-tests-specified-by-selector, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole ffd2dcbb85 077/143: Add tests for non file ebut creation and deletion, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 3940e00d12 080/143: Fix mult-version/mixed Org installations and hyrolo improvements, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole cec4659839 082/143: ebut-delete-removes-ebut-in-non-file-buffer - Enable this test, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 1b8fb059c6 089/143: Fix HyRolo {f} and {b} commands and tests, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 3206c44448 086/143: Remove tar-ball dependency on elc files (#442), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 433eba17ca 092/143: Print build environment info when using eln target (#445), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole a85f06a9e4 090/143: Merge branch 'rsw' of hyperbole into rsw, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 19aced9b01 078/143: Fix hyrolo-org-mode hide/show commands;, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 94b792e23f 076/143: hsys-xref.el - Add forgotten file, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 72d17af6e8 081/143: Merge branch 'rsw' into HEAD,
ELPA Syncer <=
- [elpa] externals/hyperbole 30ec5b242a 083/143: Merge pull request #440 from rswgnu/matsl-rsw-add-tests-for-various-ebut, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 89b2477423 094/143: Remove skip guard on test that works in batch mode, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 4c28ade4aa 093/143: Respect EMACS macro in echo target (#446), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 48210fb535 091/143: Fix hyrolo-to-entry-beginning, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole edeaad38cd 102/143: Set copyright notice to include 2024 for files updated under 2024 (#453), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 44b5b447f7 101/143: Add hsettings tests (#452), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole 9def89866a 112/143: HyRolo - (hyrolo-markdown-mode): Add missing (require 'markdown-mode), ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole cf6c291eae 124/143: Rename ibut:act to ibut:act-label, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole c0f33ab989 095/143: hsys-org-fix-version - fix to reload Org libs from the proper path, ELPA Syncer, 2024/02/19
- [elpa] externals/hyperbole f40a30d11c 127/143: Use actionv4 (#465), ELPA Syncer, 2024/02/19