emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/hyperbole 8a8787ff50 4/5: Initial 8.0.1pre changes and


From: ELPA Syncer
Subject: [elpa] externals/hyperbole 8a8787ff50 4/5: Initial 8.0.1pre changes and fixes for async nativecomp errors
Date: Thu, 12 May 2022 13:57:47 -0400 (EDT)

branch: externals/hyperbole
commit 8a8787ff50196e8fb03857613f4a7ddb4387fdcd
Author: Bob Weiner <rsw@gnu.org>
Commit: Bob Weiner <rsw@gnu.org>

    Initial 8.0.1pre changes and fixes for async nativecomp errors
---
 ChangeLog          |  55 +++++++++++++++++++++++
 HY-ABOUT           |   2 +-
 HY-NEWS            |  17 +++++++
 Makefile           |  49 ++++++++++----------
 README.md          |   2 +-
 hactypes.el        |   6 +--
 hbdata.el          |   3 +-
 hgnus.el           |   4 +-
 hibtypes.el        |   4 +-
 hinit.el           |   6 +--
 hload-path.el      | 128 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 hmh.el             |   4 +-
 hrmail.el          |   4 +-
 hsys-www.el        |   3 +-
 hui-em-but.el      |   3 +-
 hui-mouse.el       |  27 +++++------
 hui-select.el      |  16 ++++---
 hversion.el        |  15 +------
 hvm.el             |   4 +-
 hypb-ert.el        |   3 +-
 hypb.el            |  52 ++++------------------
 hyperbole.el       |  85 +++--------------------------------
 kotl/kotl-mode.el  |   4 +-
 kotl/kview.el      |   4 +-
 kotl/kvspec.el     |   3 +-
 man/hyperbole.html |  32 +++++++-------
 man/hyperbole.info | Bin 589642 -> 589583 bytes
 man/hyperbole.pdf  | Bin 1342011 -> 1342006 bytes
 man/hyperbole.texi |  36 +++++++--------
 man/version.texi   |   4 +-
 30 files changed, 326 insertions(+), 249 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e4396a37c6..b4028b6122 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,58 @@
+2022-05-12  Bob Weiner  <rsw@gnu.org>
+
+* hypb.el (hypb:rgrep): Fix so --exclude directories are always included; sexp
+    nesting was wrong.
+
+2022-05-11  Bob Weiner  <rsw@gnu.org>
+
+* hversion.el (hyperb:microsoft-os-p, hyperb:wsl-os-p): Move to 
"hload-path.el".
+  All the changes in the last 3 days resolve the async native compiler Errors,
+  leaving just warnings which may be ignored.
+
+2022-05-10  Bob Weiner  <rsw@gnu.org>
+
+* hibtypes.el (elisp-compiler-msg): Add support for 
"*Async-native-compile-log*".
+
+* hui-mouse.el (smart-dired): Remove 'quit-window' when (eolp) since Hyperbole 
globally
+    controls EOL behavior and overrides this.  Extend subdir display when on 
any Dired
+    header line (not just the first one), i.e. when subdirs are inserted with 
{i}.
+
+* hbdata.el (require 'hversion): Add to satisfy async nativecomp.
+
+* hypb.el (hypb:with-suppressed-warnings): Move to "hload-path.el" and rename 
to
+    'hyperb:with-suppressed-warnings'.
+
+2022-05-09  Bob Weiner  <rsw@gnu.org>
+
+* Makefile (release): Add 'git-pull' and 'git-verify-no-update' dependencies 
and remove
+    from 'pkg' target so can make test packages without having to synchronize 
with git
+    master.
+           (hyperbole-$(HYPB_VERSION).tar): Archive the current state of the 
Hyperbole
+    branch rather than the last commit, so can test packages before committing.
+
+* hyperbole.el:
+  hrmail.el:
+  hmh.el:
+  hgnus.el:
+  hsys-www.el:
+  hui-em-but.el:
+  hui-mouse.el:
+  hypb-ert.el:
+  hvm.el (hload-path): Add require of this library to handle autoloads.
+
+2022-05-08  Bob Weiner  <rsw@gnu.org>
+
+* hyperbole.el (hyperb:init): Run 'hyperb:maybe-generate-autoloads' even if
+    Emacs is noninteractive.
+               (hyperb:init): Move loading of autoloads from here to 
"hload-path.el"
+    so can be loaded when native compilation is invoked asynchronously upon
+    Hyperbole package installation.
+  hload-path.el: Move whole autoloads section from "hyperbole.el" to here.
+
+2022-05-02  Bob Weiner  <rsw@gnu.org>
+
+* hactypes.el (require 'hvar): Add to ensure var:append is defined.
+
 2022-05-02  Mats Lidell  <matsl@gnu.org>
 
 * hypb-maintenance.el (hypb:web-repo-update): Add files to website that
diff --git a/HY-ABOUT b/HY-ABOUT
index 9c0747e275..5811c10f31 100644
--- a/HY-ABOUT
+++ b/HY-ABOUT
@@ -3,7 +3,7 @@
                    Designed and Written by Bob Weiner
                 Maintained by Mats Lidell and Bob Weiner
                  https://www.gnu.org/software/hyperbole/
-                            Version 8.0.0
+                            Version 8.0.1pre
 
          Say thanks or send a testimonial if you like Hyperbole:
                         Email: <rsw@gnu.org>
diff --git a/HY-NEWS b/HY-NEWS
index 0a8b09cc81..b55ba8bb29 100644
--- a/HY-NEWS
+++ b/HY-NEWS
@@ -1,6 +1,23 @@
                          What's New in GNU Hyperbole
                                 by Bob Weiner
 
+===========================================================================
+*                                   V8.0.1pre
+===========================================================================
+
+** HYPERBOLE SYSTEM
+
+*** Native Comp Autoloads: Work around Emacs bug where async native comp of
+    a package being installed does not load hyperbole-autoloads.el (require
+    libraries to eliminate all Error-level messages).
+
+
+** SMART KEYS
+
+*** Smart Dired: Action Key subdirectory selection at point now works on
+    any dired header line, not just the first one.  Use {i} to insert
+    multiple subdirectories in Dired mode.
+
 ===========================================================================
 *                                   V8.0.0
 ===========================================================================
diff --git a/Makefile b/Makefile
index d3f9da112c..9f2ebd7831 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
 # Author:       Bob Weiner
 #
 # Orig-Date:    15-Jun-94 at 03:42:38
-# Last-Mod:      1-May-22 at 11:33:26 by Bob Weiner
+# Last-Mod:     11-May-22 at 01:30:04 by Bob Weiner
 #
 # Copyright (C) 1994-2022  Free Software Foundation, Inc.
 # See the file HY-COPY for license information.
@@ -83,7 +83,7 @@
 
 # This ver setup won't work under any make except GNU make, so set it manually.
 #HYPB_VERSION = "`head -3 hversion.el | tail -1 | sed -e 's/.*|\(.*\)|.*/\1/'`"
-HYPB_VERSION = 8.0.0
+HYPB_VERSION = 8.0.1pre
 
 # Emacs executable used to byte-compile .el files into .elc's.
 # Possibilities include: emacs, infodock, etc.
@@ -145,11 +145,11 @@ ZIP = \zip -qry
 CVS = \cvs
 
 # Directory in which to create new package distributions of Hyperbole.
-pkg_dir = /tmp
-pkg_hyperbole = $(pkg_dir)/hyperbole
+pkg_parent = /tmp
+pkg_hyperbole = $(pkg_parent)/hyperbole-$(HYPB_VERSION)
 
 # Temp file to use to build .elc files.
-ELISP_TO_COMPILE = $(pkg_dir)/elc-${USER}
+ELISP_TO_COMPILE = $(pkg_parent)/elc-${USER}
 
 # Path to dir where the web repository is located i.e. hypb:web-repo-location
 HYPB_WEB_REPO_LOCATION = "../hyweb/hyperbole/"
@@ -162,7 +162,7 @@ HYPB_WEB_REPO_LOCATION = "../hyweb/hyperbole/"
 PRELOADS = $(SITE_PRELOADS) -l ./hload-path.el -l ./hversion.el -l 
./hyperbole.el 
 
 # Compile in batch mode.  Load site-lisp/site-start.el, which may set 
load-path.
-BATCHFLAGS = -batch -Q
+BATCHFLAGS = -batch -Q --eval "(setq debug-on-error t)"
 
 EMACS_BATCH=$(EMACS) $(BATCHFLAGS) $(PRELOADS)
 
@@ -378,11 +378,11 @@ website: website-local
 
 # Generate a Hyperbole package suitable for distribution via the Emacs package 
manager.
 pkg: package
-package: git-pull doc git-verify-no-update 
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig
+package: doc $(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.sig
 
 # Generate and distribute a Hyperbole release to ftp.gnu.org.
 # One step in this is to generate an autoloads file for the Koutliner, 
kotl/kotl-autoloads.el.
-release: package $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.gz ftp website 
git-tag-release
+release: git-pull git-verify-no-update package 
$(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.gz ftp website git-tag-release
        @ echo; echo "Hyperbole $(HYPB_VERSION) released to ftp.gnu.org 
successfully."
 
 # Ensure local hyperbole directory is synchronized with master before building 
a release.
@@ -401,8 +401,8 @@ git-tag-release:
 
 # Send compressed tarball for uploading to GNU ftp site; this must be done 
from the directory
 # containing the tarball to upload.
-ftp: package $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.gz
-       cd $(pkg_dir) && $(GNUFTP) hyperbole-$(HYPB_VERSION).tar.gz
+ftp: package $(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.gz
+       cd $(pkg_parent) && $(GNUFTP) hyperbole-$(HYPB_VERSION).tar.gz
 
 # Autoloads
 autoloads: hyperbole-autoloads.el kotl/kotl-autoloads.el
@@ -414,20 +414,21 @@ kotl/kotl-autoloads.el: $(EL_KOTL)
        $(EMACS_BATCH) --debug --eval "(progn (setq generated-autoload-file 
(expand-file-name \"kotl/kotl-autoloads.el\") backup-inhibited t) (let 
(find-file-hooks) (make-directory-autoloads \"kotl/\" 
generated-autoload-file)))"
 
 # Used for ftp.gnu.org tarball distributions.
-$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.gz:
-       cd $(pkg_dir) && $(GZIP) hyperbole-$(HYPB_VERSION).tar > 
hyperbole-$(HYPB_VERSION).tar.gz
-
-$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig: 
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar
-       $(RM) $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig
-       cd $(pkg_dir) && $(GPG) -ba -o hyperbole-$(HYPB_VERSION).tar.sig 
hyperbole-$(HYPB_VERSION).tar
-       @ echo; echo "Hyperbole package built successfully:"
-       @ ls -l $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar*
-
-$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar: version $(HYPERBOLE_FILES)
-       $(RM) -fr $(pkg_hyperbole) $(pkg_hyperbole)-$(HYPB_VERSION).tar
-       git archive --format=tar --prefix=hyperbole-$(HYPB_VERSION)/ HEAD | (cd 
$(pkg_dir) && tar xf -)
-       cd $(pkg_hyperbole)-$(HYPB_VERSION) && make autoloads && chmod 755 
topwin.py
-       COPYFILE_DISABLE=1 $(TAR) -C $(pkg_dir) -clf 
$(pkg_hyperbole)-$(HYPB_VERSION).tar hyperbole-$(HYPB_VERSION)
+$(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.gz:
+       cd $(pkg_parent) && $(GZIP) hyperbole-$(HYPB_VERSION).tar > 
hyperbole-$(HYPB_VERSION).tar.gz
+
+$(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.sig: 
$(pkg_parent)/hyperbole-$(HYPB_VERSION).tar
+       $(RM) $(pkg_parent)/hyperbole-$(HYPB_VERSION).tar.sig && \
+       cd $(pkg_parent) && $(GPG) -ba -o hyperbole-$(HYPB_VERSION).tar.sig 
hyperbole-$(HYPB_VERSION).tar && \
+       echo &&  echo "Hyperbole package built successfully:" && \
+       ls -l $(pkg_parent)/hyperbole-$(HYPB_VERSION).tar*
+
+$(pkg_parent)/hyperbole-$(HYPB_VERSION).tar: version $(HYPERBOLE_FILES)
+       $(RM) -fr $(pkg_hyperbole) $(pkg_hyperbole).tar
+       # git archive --format=tar --prefix=hyperbole-$(HYPB_VERSION)/ HEAD | 
(cd $(pkg_parent) && tar xf -)
+       (mkdir -p $(pkg_hyperbole) && git ls-files | tar Tzcf - - | (cd 
$(pkg_hyperbole) && tar zxf -)) && \
+       $(CP) hyperbole-pkg.el $(pkg_hyperbole) && cd $(pkg_hyperbole) && make 
autoloads && chmod 755 topwin.py && \
+       COPYFILE_DISABLE=1 $(TAR) -C $(pkg_parent) -clf $(pkg_hyperbole).tar 
hyperbole-$(HYPB_VERSION)
 
 pkgclean: packageclean
 packageclean:
diff --git a/README.md b/README.md
index 82b462fec5..f9bc1f185d 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# GNU Hyperbole 8.0.0 - The Everyday Hypertextual Information Manager
+# GNU Hyperbole 8.0.1pre - The Everyday Hypertextual Information Manager
 
 [We work on Hyperbole as a gift to the Emacs community and request you
  send us a thank you or a testimonial describing your usage if you like
diff --git a/hactypes.el b/hactypes.el
index 63bcde4c21..f7d6f17510 100644
--- a/hactypes.el
+++ b/hactypes.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    23-Sep-91 at 20:34:36
-;; Last-Mod:     17-Apr-22 at 12:37:06 by Bob Weiner
+;; Last-Mod:      2-May-22 at 00:25:26 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2022  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -16,9 +16,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(hbut hpath hargs hmail)))
-(eval-when-compile (mapc #'require '(comint hsettings)))
-(require 'bookmark)
+(eval-and-compile (mapc #'require '(bookmark hvar hsettings comint hbut hpath 
hargs hmail)))
 
 ;;; ************************************************************************
 ;;; Public declarations
diff --git a/hbdata.el b/hbdata.el
index 6d8d76ffff..4f8d694db0 100644
--- a/hbdata.el
+++ b/hbdata.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:     2-Apr-91
-;; Last-Mod:     17-Apr-22 at 12:38:53 by Bob Weiner
+;; Last-Mod:     10-May-22 at 00:24:16 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -50,6 +50,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hversion) ;; For hyperb:microsoft-os-p
 (require 'hbmap)
 (require 'hgnus)
 
diff --git a/hgnus.el b/hgnus.el
index 938f14f2dc..b878a5a665 100644
--- a/hgnus.el
+++ b/hgnus.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    24-Dec-91 at 22:29:28
-;; Last-Mod:     24-Jan-22 at 00:31:29 by Bob Weiner
+;; Last-Mod:      9-May-22 at 00:01:49 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2016  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -33,7 +33,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(hmail hsmail hypb gnus-msg)))
+(eval-and-compile (mapc #'require '(hload-path hmail hsmail hypb gnus-msg)))
 
 ;;; ************************************************************************
 ;;; Public variables
diff --git a/hibtypes.el b/hibtypes.el
index 5d6efd94df..10a42e921c 100644
--- a/hibtypes.el
+++ b/hibtypes.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    19-Sep-91 at 20:45:31
-;; Last-Mod:     17-Apr-22 at 13:47:31 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:32:46 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -1066,7 +1066,7 @@ This works with JavaScript and Python tracebacks, gdb, 
dbx, and xdb.  Such lines
   "Jump to source code for definition associated with an Emacs Lisp 
byte-compiler error message or ERT test output line.
 Works when activated anywhere within such a line."
   (when (or (member (buffer-name) '("*Compile-Log-Show*" "*Compile-Log*"
-                                    "*compilation*"))
+                                    "*compilation*" 
"*Async-native-compile-log*"))
             (save-excursion
               (and (re-search-backward "^[^ \t\n\r]" nil t)
                    (looking-at "While compiling"))))
diff --git a/hinit.el b/hinit.el
index f3a465609a..8ee179b0a5 100644
--- a/hinit.el
+++ b/hinit.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:     1-Oct-91 at 02:32:51
-;; Last-Mod:     17-Apr-22 at 12:11:55 by Bob Weiner
+;; Last-Mod:      8-May-22 at 19:32:32 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -35,7 +35,7 @@
   ;; browser.  Define this as a dummy function that always returns nil
   ;; until the OO-Browser is ever loaded.
   (defun br-in-browser ()
-    "Always returns nil since the OO-Browser is not loaded."
+    "Always return nil since the OO-Browser is not loaded."
     nil))
 
 ;;;###autoload
@@ -67,7 +67,7 @@
 ;;; ************************************************************************
 
 (defun hyperb:check-dir-user ()
-  "Ensures `hbmap:dir-user' exists and is writable or signals an error."
+  "Ensure `hbmap:dir-user' exists and is writable or signal an error."
   (if (or (null hbmap:dir-user) (not (stringp hbmap:dir-user))
          (and (setq hbmap:dir-user (file-name-as-directory
                                     (expand-file-name hbmap:dir-user)))
diff --git a/hload-path.el b/hload-path.el
index 80f671a4c1..29481985bd 100644
--- a/hload-path.el
+++ b/hload-path.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    29-Jun-16 at 14:39:33
-;; Last-Mod:     24-Jan-22 at 00:18:33 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:12:11 by Bob Weiner
 ;;
 ;; Copyright (C) 1992-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -13,6 +13,22 @@
 ;;; Commentary:
 
 ;;; Code:
+
+;;; ************************************************************************
+;;; Public variables
+;;; ************************************************************************
+
+;;;###autoload
+(defvar hyperb:microsoft-os-p
+  (memq system-type '(ms-windows windows-nt ms-dos win32))
+  "Non-nil iff Hyperbole is running under a Microsoft OS but not under Windows 
Subsystem for Linux (WSL).
+Use `hyperb:wsl-os-p' to test if running under WSL.")
+
+;;;###autoload
+(defvar hyperb:wsl-os-p
+  (and (eq system-type 'gnu/linux) (executable-find "wsl.exe") t)
+  "T iff Hyperbole is running under Microsoft Windows Subsystem for Linux 
(WSL).")
+
 ;;; ************************************************************************
 ;;; Hyperbole Directory Setting (dynamically computed)
 ;;; ************************************************************************
@@ -25,7 +41,7 @@
                         (error
                          "(Hyperbole): Failed to set hyperb:dir.  Try setting 
it manually"))
   "Directory where the Hyperbole executable code is kept.
-It must end with a directory separator character.")
+Valid values end with a directory separator character.")
 
 ;; Add hyperb:dir to load-path so other Hyperbole libraries can be
 ;; found unless it is already there since the Emacs Package Manager
@@ -49,13 +65,119 @@ It must end with a directory separator character.")
 
 (add-to-list 'load-path (expand-file-name "test" hyperb:dir))
 
-
 ;; Ensure final name (after resolving all links) of hyperb:dir is
 ;; used after setting up load-path; otherwise, Hyperbole may fail
 ;; to substitute this as a variable into link path buttons.
 (when (stringp hyperb:dir)
   (setq hyperb:dir (file-truename hyperb:dir)))
 
+;;; ************************************************************************
+;;; Autoloads
+;;; ************************************************************************
+
+(defmacro hyperb:with-suppressed-warnings (warnings &rest body)
+  "Like `progn', but prevents compiler WARNINGS in BODY.
+
+Defined here for elpa build compatibility which uses Emacs 26 and
+does not include `with-suppressed-warnings'.
+
+WARNINGS is an associative list where the first element of each
+item is a warning type, and the rest of the elements in each item
+are symbols they apply to.  For instance, if you want to suppress
+byte compilation warnings about the two obsolete functions `foo'
+and `bar', as well as the function `zot' being called with the
+wrong number of parameters, say
+
+\(with-suppressed-warnings ((obsolete foo bar)
+                           (callargs zot))
+  (foo (bar))
+  (zot 1 2))
+
+The warnings that can be suppressed are a subset of the warnings
+in `byte-compile-warning-types'; see the variable
+`byte-compile-warnings' for a fuller explanation of the warning
+types.  The types that can be suppressed with this macro are
+`free-vars', `callargs', `redefine', `obsolete',
+`interactive-only', `lexical', `mapcar', `constants' and
+`suspicious'.
+
+For the `mapcar' case, only the `mapcar' function can be used in
+the symbol list.  For `suspicious', only `set-buffer' can be used."
+
+  (declare (debug (sexp &optional body)) (indent 1))
+  (if (fboundp 'with-suppressed-warnings)
+      `(with-suppressed-warnings ,warnings ,@body)
+    `(with-no-warnings ,@body)))
+;; New autoload generation function defined only in Emacs 28
+
+(unless (fboundp #'make-directory-autoloads)
+  (defun make-directory-autoloads (dir output-file)
+    "Update autoload definitions for Lisp files in the directories DIRS.
+DIR can be either a single directory or a list of
+directories.  (The latter usage is discouraged.)
+
+The autoloads will be written to OUTPUT-FILE.  If any Lisp file
+binds ‘generated-autoload-file’ as a file-local variable, write
+its autoloads into the specified file instead.
+
+The function does NOT recursively descend into subdirectories of the
+directory or directories specified."
+    ;; Don't use a 'let' on this next line or it will fail.
+    (setq generated-autoload-file output-file)
+    (hyperb:with-suppressed-warnings ((obsolete update-directory-autoloads))
+      (update-directory-autoloads dir))))
+
+;; Menu items could call this function before Info is loaded.
+(autoload 'Info-goto-node   "info" "Jump to specific Info node."  t)
+
+;; Auto-autoload doesn't work for next item because it is defined
+;; within a condition-case, so autoload it here.
+(autoload 'Vm-init          "hvm"  "Initializes Hyperbole Vm support." t)
+
+(defun hyperb:autoloads-exist-p ()
+  "Return t if all Hyperbole autoload files exist or nil otherwise."
+  (and (file-readable-p (expand-file-name "hyperbole-autoloads.el" hyperb:dir))
+       (file-readable-p (expand-file-name "kotl-autoloads.el"
+                                         (expand-file-name "kotl" 
hyperb:dir)))))
+
+(defun hyperb:maybe-generate-autoloads ()
+  "Ensure Hyperbole *-autoload.el files are already generated or generate them.
+This is used only when running from git source and not a package release."
+  (unless (hyperb:autoloads-exist-p)
+    (hyperb:generate-autoloads)))
+
+(defun hyperb:generate-autoloads ()
+  "Renerate Hyperbole *-autoloads.el files whether they already exist or not."
+  (let* ((default-directory hyperb:dir)
+        (backup-inhibited t)
+        (find-file-hook) ;; Prevent header insertion
+        (al-file (expand-file-name "hyperbole-autoloads.el")))
+    ;; (make-local-variable 'generated-autoload-file)
+    (with-current-buffer (find-file-noselect al-file)
+      (make-directory-autoloads "." al-file))
+    (setq al-file (expand-file-name "kotl/kotl-autoloads.el"))
+    (with-current-buffer (find-file-noselect al-file)
+      (make-directory-autoloads "." al-file)))
+  (unless (hyperb:autoloads-exist-p)
+    (error (format "Hyperbole failed to generate autoload files; try running 
'make src' in a shell in %s" hyperb:dir))))
+
+(defun hyperb:maybe-load-autoloads ()
+  "Load Hyperbole autoload files that have not already been loaded."
+  (let* ((default-directory hyperb:dir)
+        (hypb-autoloads (expand-file-name "hyperbole-autoloads.el"))
+        (kotl-autoloads (expand-file-name "kotl/kotl-autoloads.el")))
+    (unless (featurep 'hyperbole-autoloads)
+      (when (file-readable-p hypb-autoloads)
+        (load-file hypb-autoloads)))
+    (unless (featurep 'kotl-autoloads)
+      (when (file-readable-p kotl-autoloads)
+        (load-file kotl-autoloads)))))
+
+;; Ensure *-autoloads.el files are already generated or generate them.
+;; Then ensure they are loaded.
+(hyperb:maybe-generate-autoloads)
+(hyperb:maybe-load-autoloads)
+
 (provide 'hload-path)
 
 ;;; hload-path.el ends here
diff --git a/hmh.el b/hmh.el
index 31dfb1c7cf..e0d4322896 100644
--- a/hmh.el
+++ b/hmh.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    21-May-91 at 17:06:36
-;; Last-Mod:     24-Jan-22 at 00:18:46 by Bob Weiner
+;; Last-Mod:      9-May-22 at 22:36:31 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2016  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -31,7 +31,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(hmail mh-e)))
+(eval-and-compile (mapc #'require '(hload-path hmail mh-e)))
 (load "hsmail")
 
 ;;; ************************************************************************
diff --git a/hrmail.el b/hrmail.el
index 958c8003bb..c5281b1480 100644
--- a/hrmail.el
+++ b/hrmail.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:     9-May-91 at 04:22:02
-;; Last-Mod:     24-Jan-22 at 00:18:47 by Bob Weiner
+;; Last-Mod:      9-May-22 at 22:37:10 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2016  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -25,7 +25,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(hvar hmail hact rmail rmailsum rmailedit)))
+(eval-and-compile (mapc #'require '(hload-path hvar hmail hact rmail rmailsum 
rmailedit)))
 (load "hsmail")
 
 ;;; ************************************************************************
diff --git a/hsys-www.el b/hsys-www.el
index 1925e6f50f..4eca5d0513 100644
--- a/hsys-www.el
+++ b/hsys-www.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:     7-Apr-94 at 17:17:39 by Bob Weiner
-;; Last-Mod:     17-Apr-22 at 13:37:44 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:01:48 by Bob Weiner
 ;;
 ;; Copyright (C) 1994-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -28,6 +28,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hload-path)
 ;;; This does not require any particular web browser.
 (require 'browse-url)
 (require 'hbut)
diff --git a/hui-em-but.el b/hui-em-but.el
index 4128cc8c3a..d966967802 100644
--- a/hui-em-but.el
+++ b/hui-em-but.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    21-Aug-92
-;; Last-Mod:     24-Jan-22 at 00:18:47 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:01:27 by Bob Weiner
 ;;
 ;; Copyright (C) 1992-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -26,6 +26,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hload-path)
 (require 'custom) ;; For defface.
 (require 'hbut)
 (eval-when-compile (require 'hyrolo))
diff --git a/hui-mouse.el b/hui-mouse.el
index 2919869adb..3b2554aacb 100644
--- a/hui-mouse.el
+++ b/hui-mouse.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    04-Feb-89
-;; Last-Mod:     17-Apr-22 at 13:46:49 by Bob Weiner
+;; Last-Mod:     10-May-22 at 23:37:13 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2022  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -38,6 +38,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hload-path)
 (eval-when-compile (require 'hsys-org))
 (require 'hbut)
 (unless (fboundp 'smart-info)
@@ -483,10 +484,6 @@ Action and Assist Mouse Keys.")
 ;;; driver code
 ;;; ************************************************************************
 
-;; The following autoload is needed if another subsystem besides
-;; Hyperbole uses this mouse handling code.
-(autoload 'var:append "hvar" "Append to a list variable." nil)
-
 (require 'hargs)
 (defvar hmouse-alist hkey-alist
   "Alist of predicates and form-conses for the Action and Assist Mouse Keys.
@@ -834,25 +831,25 @@ If key is pressed:
      for display in another window, then this entry is displayed in the current
      window (DisplayHere minor mode is shown in the mode-line; use {g}
      to disable it)
- (2) on the first line of the buffer (other than the end of line):
+ (2) on a dired header line (other than the end of line):
      (a) within the leading whitespace, then if any deletes are to be
          performed, they are executed after user verification; otherwise,
          nothing is done;
      (b) otherwise, dired is run in another window on the ancestor directory
          of the current directory path up through the location of point;
-         if point is before the first character, then the / root directory
+         if point is on the first character, then the / root directory
          is used.
- (3) on or after the last line in the buffer or at the end of the first line,
-     this dired invocation is quit."
+ (3) on or after the last line in the buffer, this dired invocation is quit."
 
   (interactive)
-  (cond ((first-line-p)
-        (cond ((eolp) (quit-window))
-              ((and (looking-at "\\s-")
+  (cond ((save-excursion
+          (forward-line 0)
+          (looking-at dired-subdir-regexp))
+        (cond ((and (looking-at "\\s-")
                     (save-excursion
                       (skip-syntax-backward "-"))
                     (bolp))
-               ;; In whitespace at beginning of 1st line, perform deletes.
+               ;; In whitespace at beginning of a directory header line, 
perform deletes.
                (if (save-excursion
                      (goto-char (point-min))
                      (re-search-forward "^D" nil t))
@@ -880,8 +877,8 @@ If assist-key is pressed:
      deletion;
  (3) anywhere else within an entry line, the current entry is marked for
      deletion;
- (4) on or after the last line in the buffer or at the end of the
-     first line, all delete marks on all entries are undone."
+ (4) on or after the last line in the buffer, all delete marks on all entries
+     are undone."
 
   (interactive)
   (cond ((or (last-line-p) (and (first-line-p) (eolp)))
diff --git a/hui-select.el b/hui-select.el
index cdfedb40e1..4b56f4958e 100644
--- a/hui-select.el
+++ b/hui-select.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    19-Oct-96 at 02:25:27
-;; Last-Mod:     17-Apr-22 at 15:33:00 by Bob Weiner
+;; Last-Mod:      8-May-22 at 11:06:42 by Bob Weiner
 ;;
 ;; Copyright (C) 1996-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -205,11 +205,13 @@
 ;;; Private variables
 ;;; ************************************************************************
 
-(defconst hui-select-syntax-table (make-syntax-table 
emacs-lisp-mode-syntax-table)
+(defconst hui-select-syntax-table
+  (let ((st (make-syntax-table emacs-lisp-mode-syntax-table)))
+    ;; Make braces be thing delimiters, not punctuation.
+    (modify-syntax-entry ?\{ "(}" st)
+    (modify-syntax-entry ?\} "){" st)
+    st)
   "Syntax table to use when selecting delimited things.")
-;; Make braces be thing delimiters, not punctuation.
-(modify-syntax-entry ?\{ "\(\}" hui-select-syntax-table)
-(modify-syntax-entry ?\} "\)\{" hui-select-syntax-table)
 
 (defvar hui-select-bigger-alist
   '((char nil)
@@ -368,8 +370,8 @@ Also, add language-specific syntax setups to aid in thing 
selection."
                                            (keymap (symbol-value 
',keymap-sym)))
                                       (modify-syntax-entry ?<  "(>" 
syntax-table)
                                       (modify-syntax-entry ?>  ")<" 
syntax-table)
-                                      (modify-syntax-entry ?\{ "\(\}" 
syntax-table)
-                                      (modify-syntax-entry ?\} "\)\{" 
syntax-table)
+                                      (modify-syntax-entry ?\{ "(}" 
syntax-table)
+                                      (modify-syntax-entry ?\} "){" 
syntax-table)
                                       (modify-syntax-entry ?\" "\"" 
syntax-table)
                                       (modify-syntax-entry ?=  "."  
syntax-table)
                                       (modify-syntax-entry ?.  "_"  
syntax-table)
diff --git a/hversion.el b/hversion.el
index 35e9a5cf2b..89f1547935 100644
--- a/hversion.el
+++ b/hversion.el
@@ -4,7 +4,7 @@
 ;; Maintainer:   Bob Weiner, Mats Lidell
 ;;
 ;; Orig-Date:     1-Jan-94
-;; Last-Mod:      1-May-22 at 10:25:28 by Bob Weiner
+;; Last-Mod:     11-May-22 at 01:11:22 by Bob Weiner
 ;;
 ;; Copyright (C) 1994-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -24,18 +24,7 @@
 ;;; Public variables
 ;;; ************************************************************************
 
-(defconst hyperb:version "8.0.0" "GNU Hyperbole revision number.")
-
-;;;###autoload
-(defvar hyperb:microsoft-os-p
-  (memq system-type '(ms-windows windows-nt ms-dos win32))
-  "Non-nil iff Hyperbole is running under a Microsoft OS but not under Windows 
Subsystem for Linux (WSL).
-Use `hyperb:wsl-os-p' to test if running under WSL.")
-
-;;;###autoload
-(defvar hyperb:wsl-os-p
-  (and (eq system-type 'gnu/linux) (executable-find "wsl.exe") t)
-  "T iff Hyperbole is running under Microsoft Windows Subsystem for Linux 
(WSL).")
+(defconst hyperb:version "8.0.1pre" "GNU Hyperbole revision number.")
 
 ;;;###autoload
 (defvar hyperb:mouse-buttons
diff --git a/hvm.el b/hvm.el
index 408b460f65..4774af562a 100644
--- a/hvm.el
+++ b/hvm.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    10-Oct-91 at 01:51:12
-;; Last-Mod:     24-Jan-22 at 00:18:53 by Bob Weiner
+;; Last-Mod:      8-May-22 at 23:59:33 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -34,6 +34,8 @@
 (condition-case nil
 (progn
 
+(require 'hload-path)
+
 (eval-and-compile
   (require 'hmail)
   (load "hsmail")
diff --git a/hypb-ert.el b/hypb-ert.el
index b3f1e89027..ff4a05a412 100644
--- a/hypb-ert.el
+++ b/hypb-ert.el
@@ -3,7 +3,7 @@
 ;; Author:       Mats Lidell <matsl@gnu.org> and Bob Weiner <rsw@gnu.org>
 ;;
 ;; Orig-Date:    31-Mar-21 at 21:11:00
-;; Last-Mod:     24-Jan-22 at 00:36:17 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:00:42 by Bob Weiner
 ;;
 ;; Copyright (C) 2021  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -27,6 +27,7 @@
 
 ;;; Code:
 
+(require 'hload-path)
 (require 'ert)
 (require 'hbut)
 (require 'hargs)
diff --git a/hypb.el b/hypb.el
index 2965787bc5..73c8ac3ef7 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:      1-May-22 at 10:25:55 by Bob Weiner
+;; Last-Mod:     12-May-22 at 00:03:09 by Bob Weiner
 ;;
 ;; Copyright (C) 1991-2022  Free Software Foundation, Inc.
 ;; See the "HY-COPY" file for license information.
@@ -710,16 +710,16 @@ If in an Emacs Lisp mode buffer and no PREFX-ARG is 
given, limit search to only
         (grep-cmd
          (if (and (not current-prefix-arg) (equal (buffer-name) "*Locate*"))
              (format "%s -e \%c%s\%c %s" hypb:rgrep-command delim pattern 
delim (hypb:locate-pathnames))
-           (format "%s %s -e \%c%s\%c ."
+           (format "%s %s %s -e \%c%s\%c ."
                    hypb:rgrep-command
-                   (if (and (memq major-mode '(emacs-lisp-mode 
lisp-interaction-mode))
-                            (not prefx-arg))
-                       (if (string-match "\\`rg " hypb:rgrep-command)
-                           "-g \"*.el\" -g \"*.el.gz\""
-                         "--include=\"*.el\" --include=\"*.el.gz\"")
+                   (when (and (memq major-mode '(emacs-lisp-mode 
lisp-interaction-mode))
+                              (not prefx-arg))
                      (if (string-match "\\`rg " hypb:rgrep-command)
-                         "-g \"!*~\" -g \"!#*\" -g \"!TAGS\""
-                       "--exclude=\".git\" --exclude=\"CVS\" --exclude=\"*~\" 
--exclude=\"#*\" --exclude=\"TAGS\""))
+                         "-g \"*.el\" -g \"*.el.gz\""
+                       "--include=\"*.el\" --include=\"*.el.gz\""))
+                   (if (string-match "\\`rg " hypb:rgrep-command)
+                       "-g \"!*~\" -g \"!#*\" -g \"!TAGS\""
+                     "--exclude=\".git\" --exclude=\"CVS\" --exclude=\"*~\" 
--exclude=\"#*\" --exclude=\"TAGS\"")
                    delim pattern delim))))
     (setq this-command `(grep ,grep-cmd))
     (push this-command command-history)
@@ -839,40 +839,6 @@ in the list, even if it is not active.  If MINIBUFFER-FLAG 
is neither t
 nor nil it means to not count the minibuffer window even if it is active."
   (window-list nil minibuffer-flag))
 
-(defmacro hypb:with-suppressed-warnings (warnings &rest body)
-  "Like `progn', but prevents compiler WARNINGS in BODY.
-
-Defined here for elpa build compatibility which uses Emacs 26 and
-does not include `with-suppressed-warnings'.
-
-WARNINGS is an associative list where the first element of each
-item is a warning type, and the rest of the elements in each item
-are symbols they apply to.  For instance, if you want to suppress
-byte compilation warnings about the two obsolete functions `foo'
-and `bar', as well as the function `zot' being called with the
-wrong number of parameters, say
-
-\(with-suppressed-warnings ((obsolete foo bar)
-                           (callargs zot))
-  (foo (bar))
-  (zot 1 2))
-
-The warnings that can be suppressed are a subset of the warnings
-in `byte-compile-warning-types'; see the variable
-`byte-compile-warnings' for a fuller explanation of the warning
-types.  The types that can be suppressed with this macro are
-`free-vars', `callargs', `redefine', `obsolete',
-`interactive-only', `lexical', `mapcar', `constants' and
-`suspicious'.
-
-For the `mapcar' case, only the `mapcar' function can be used in
-the symbol list.  For `suspicious', only `set-buffer' can be used."
-
-  (declare (debug (sexp &optional body)) (indent 1))
-  (if (fboundp 'with-suppressed-warnings)
-      `(with-suppressed-warnings ,warnings ,@body)
-    `(with-no-warnings ,@body)))
-
 ;;; ************************************************************************
 ;;; About Hyperbole Setup
 ;;; ************************************************************************
diff --git a/hyperbole.el b/hyperbole.el
index 84e1614d00..03e575a25e 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -5,9 +5,9 @@
 ;; Author:           Bob Weiner
 ;; Maintainer:       Bob Weiner <rsw@gnu.org>, Mats Lidell <matsl@gnu.org>
 ;; Created:          06-Oct-92 at 11:52:51
-;; Last-Mod:      1-May-22 at 10:31:04 by Bob Weiner
-;; Released:         03-May-21
-;; Version:          8.0.0
+;; Last-Mod:     11-May-22 at 01:16:34 by Bob Weiner
+;; Released:         01-May-22
+;; Version:          8.0.1pre
 ;; Keywords:         comm, convenience, files, frames, hypermedia, languages, 
mail, matching, mouse, multimedia, outlines, tools, wp
 ;; Package:          hyperbole
 ;; Package-Requires: ((emacs "27.0"))
@@ -163,6 +163,7 @@ Info documentation at \"(hyperbole)Top\".
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hload-path)
 ;; Avoid any potential library name conflict by giving the load directory.
 (require 'set (expand-file-name "set" hyperb:dir))
 (require 'hypb)
@@ -256,8 +257,8 @@ of the commands."
     ;;
     ;; Typically bind the key, {C-h A}, for Action Key help and {C-u C-h A} 
for Assist key
     ;; help.
-    (or (where-is-internal #'hkey-help)
-       (hkey-set-key (vector help-char ?A) #'hkey-help))
+    (unless (where-is-internal #'hkey-help)
+      (hkey-set-key (vector help-char ?A) #'hkey-help))
     ;;
     ;; Define virtual key used to activate hyperbole minor modeline menu
     ;; (hkey-set-key [hyperbole] (infodock-hyperbole-menu t))
@@ -371,34 +372,6 @@ frame, those functions by default still return the prior 
frame."
 (add-hook 'temp-buffer-show-hook #'hkey-help-show)
 (setq temp-buffer-show-function #'hkey-help-show)
 
-;;; ************************************************************************
-;;; Autoloads
-;;; ************************************************************************
-
-;; New autoload generation function defined only in Emacs 28
-(unless (fboundp #'make-directory-autoloads)
-  (defun make-directory-autoloads (dir output-file)
-    "Update autoload definitions for Lisp files in the directories DIRS.
-DIR can be either a single directory or a list of
-directories.  (The latter usage is discouraged.)
-
-The autoloads will be written to OUTPUT-FILE.  If any Lisp file
-binds ‘generated-autoload-file’ as a file-local variable, write
-its autoloads into the specified file instead.
-
-The function does NOT recursively descend into subdirectories of the
-directory or directories specified."
-    ;; Don't use a 'let' on this next line or it will fail.
-    (setq generated-autoload-file output-file)
-    (hypb:with-suppressed-warnings ((obsolete update-directory-autoloads))
-      (update-directory-autoloads dir))))
-
-;; Menu items could call this function before Info is loaded.
-(autoload 'Info-goto-node   "info"       "Jump to specific Info node."  t)
-
-;; Auto-autoload doesn't work for next item because it is defined
-;; within a condition-case, so autoload it here.
-(autoload 'Vm-init          "hvm"    "Initializes Hyperbole Vm support." t)
 
 ;;; ************************************************************************
 ;;; Outline Mode Aliases
@@ -500,13 +473,6 @@ If FLAG is nil then text is shown, while if FLAG is t the 
text is hidden."
                   user-mail-address)
              (concat (user-login-name) (hypb:domain-name)))))
   ;;
-  ;; When running from git source and not a release package, ensure
-  ;; *-autoloads.el files are already generated or generate them.
-  ;; Then ensure they are loaded.
-  (unless noninteractive
-    (hyperb:maybe-generate-autoloads))
-  (hyperb:maybe-load-autoloads)
-  ;;
   ;; Modify syntactic character pairs for use with implicit button activations.
   (hbut:modify-syntax)
   ;;
@@ -529,45 +495,6 @@ If FLAG is nil then text is shown, while if FLAG is t the 
text is hidden."
   ;; Hyperbole initialization is complete.
   (message "Initializing Hyperbole...done"))
 
-(defun hyperb:autoloads-exist-p ()
-  "Return t if all Hyperbole autoload files exist or nil otherwise."
-  (and (file-readable-p (expand-file-name "hyperbole-autoloads.el" hyperb:dir))
-       (file-readable-p (expand-file-name "kotl-autoloads.el"
-                                         (expand-file-name "kotl" 
hyperb:dir)))))
-
-(defun hyperb:maybe-generate-autoloads ()
-  "Ensure Hyperbole *-autoload.el files are already generated or generate them.
-This is used only when running from git source and not a package release."
-  (unless (hyperb:autoloads-exist-p)
-    (hyperb:generate-autoloads)))
-
-(defun hyperb:generate-autoloads ()
-  "Renerate Hyperbole *-autoloads.el files whether they already exist or not."
-  (let* ((default-directory hyperb:dir)
-        (backup-inhibited t)
-        (find-file-hook) ;; Prevent header insertion
-        (al-file (expand-file-name "hyperbole-autoloads.el")))
-    ;; (make-local-variable 'generated-autoload-file)
-    (with-current-buffer (find-file-noselect al-file)
-      (make-directory-autoloads "." al-file))
-    (setq al-file (expand-file-name "kotl/kotl-autoloads.el"))
-    (with-current-buffer (find-file-noselect al-file)
-      (make-directory-autoloads "." al-file)))
-  (unless (hyperb:autoloads-exist-p)
-    (error (format "Hyperbole failed to generate autoload files; try running 
'make src' in a shell in %s" hyperb:dir))))
-
-(defun hyperb:maybe-load-autoloads ()
-  "Load Hyperbole autoload files that have not already been loaded."
-  (let* ((default-directory hyperb:dir)
-        (hypb-autoloads (expand-file-name "hyperbole-autoloads.el"))
-        (kotl-autoloads (expand-file-name "kotl/kotl-autoloads.el")))
-    (unless (featurep 'hyperbole-autoloads)
-      (when (file-readable-p hypb-autoloads)
-        (load-file hypb-autoloads)))
-    (unless (featurep 'kotl-autoloads)
-      (when (file-readable-p kotl-autoloads)
-        (load-file kotl-autoloads)))))
-
 ;; This call loads the rest of the Hyperbole system.
 (require 'hinit)
 
diff --git a/kotl/kotl-mode.el b/kotl/kotl-mode.el
index ab4cfbee6f..35a3de3cc2 100644
--- a/kotl/kotl-mode.el
+++ b/kotl/kotl-mode.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    6/30/93
-;; Last-Mod:     18-Apr-22 at 00:45:33 by Bob Weiner
+;; Last-Mod:     12-May-22 at 00:11:23 by Bob Weiner
 ;;
 ;; Copyright (C) 1993-2021  Free Software Foundation, Inc.
 ;; See the "../HY-COPY" file for license information.
@@ -168,7 +168,7 @@ It provides the following keys:
   ;; We have been converting a buffer from a foreign format to a koutline.
   ;; Now that it is converted, ensure that `kotl-previous-mode' is set to
   ;; koutline.
-  (hypb:with-suppressed-warnings ((free-vars kotl-previous-mode))
+  (hyperb:with-suppressed-warnings ((free-vars kotl-previous-mode))
     (setq kotl-previous-mode 'kotl-mode))
   ;; Enable Org Table editing minor mode (user can disable via kotl-mode-hook
   ;; if desired).
diff --git a/kotl/kview.el b/kotl/kview.el
index 534fde635d..9157361590 100644
--- a/kotl/kview.el
+++ b/kotl/kview.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    6/30/93
-;; Last-Mod:      1-May-22 at 10:27:06 by Bob Weiner
+;; Last-Mod:     11-May-22 at 00:54:33 by Bob Weiner
 ;;
 ;; Copyright (C) 1993-2021  Free Software Foundation, Inc.
 ;; See the "../HY-COPY" file for license information.
@@ -17,7 +17,7 @@
 ;;; Other required Lisp Libraries
 ;;; ************************************************************************
 
-(eval-and-compile (mapc #'require '(klabel kfill klink hypb)))
+(eval-and-compile (mapc #'require '(hact klabel kfill klink hypb)))
 ;; Quiet byte compiler warnings for this free variable.
 (eval-when-compile
   (defvar label-sep-len nil))
diff --git a/kotl/kvspec.el b/kotl/kvspec.el
index e81cba2fb5..ad95e07ff6 100644
--- a/kotl/kvspec.el
+++ b/kotl/kvspec.el
@@ -3,7 +3,7 @@
 ;; Author:       Bob Weiner
 ;;
 ;; Orig-Date:    21-Oct-95 at 15:17:07
-;; Last-Mod:     12-Feb-22 at 10:42:20 by Mats Lidell
+;; Last-Mod:     11-May-22 at 00:51:57 by Bob Weiner
 ;;
 ;; Copyright (C) 1995-2021  Free Software Foundation, Inc.
 ;; See the "../HY-COPY" file for license information.
@@ -53,6 +53,7 @@
 ;;; Other required Elisp libraries
 ;;; ************************************************************************
 
+(require 'hact) ;; Ensure symtable:add is defined.
 (require 'kview)
 
 ;; Quiet byte compiler warnings for these free variables.
diff --git a/man/hyperbole.html b/man/hyperbole.html
index cf00b19bb4..1bce8edc71 100644
--- a/man/hyperbole.html
+++ b/man/hyperbole.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
 <html>
 <!-- This manual is for GNU Hyperbole
-(Edition 8.0.0, Published May, 2022).
+(Edition 8.0.1pre, Published May, 2022).
 
 Copyright (C) 1989-2022  Free Software Foundation, Inc.
 
@@ -369,8 +369,8 @@ WITHOUT ANY WARRANTY, without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</P>
 
 <PRE>
-Edition 8.0.0
-Printed May 1, 2022.
+Edition 8.0.1pre
+Printed May 11, 2022.
 
   Published by the Free Software Foundation, Inc.
   Author:    Bob Weiner
@@ -888,7 +888,7 @@ Next: <a href="#Usage" accesskey="n" rel="next">Usage</a>, 
Previous: <a href="#T
 <span id="Introduction-1"></span><h2 class="chapter">1 Introduction</h2>
 
 <p>This edition of the GNU Hyperbole Manual is for use with any version
-8.0.0 or greater of GNU Hyperbole.  Hyperbole runs atop GNU Emacs 27.1
+8.0.1pre or greater of GNU Hyperbole.  Hyperbole runs atop GNU Emacs 27.1
 or higher.  It will trigger an error if your Emacs is older.
 </p>
 <p>This chapter summarizes the structure of the rest of the manual,
@@ -1138,7 +1138,7 @@ operations across emacs usage, including activating and 
showing help
 for Hyperbole buttons.  In many popular Emacs modes, they allow you to
 perform common, sometimes complex operations without having to use a
 different key for each operation.  Just press a Smart Key and the
-right thing happens.  See <a href="#Smart-Keys">Smart Keys</a>;
+right thing happens.  See <a href="#Smart-Keys">Smart Keys</a>.
 </p>
 </dd>
 <dt><em>Contact and Text Finder</em></dt>
@@ -1520,7 +1520,7 @@ argument, such as <kbd>{C-u}</kbd>, then invokes 
<code>assist-key</code> actions
 </p>
 <p>You may also bind <code>action-mouse-key</code> and 
<code>assist-mouse-key</code> to
 other mouse keys, though you won&rsquo;t be able to execute mouse drag actions 
with
-such key bindings. See <a href="#Smart-Mouse-Key-Drags">Smart Mouse Key 
Drags</a> and see <a href="#Keyboard-Drags">Keyboard Drags</a>.
+such key bindings.  See <a href="#Smart-Mouse-Key-Drags">Smart Mouse Key 
Drags</a>, and see <a href="#Keyboard-Drags">Keyboard Drags</a>.
 </p>
 <p>To permanently change any of these key bindings, use:
 <code>(add-hook 'hyperbole-init-hook (lambda () (hkey-set-key &lt;KEY&gt; 
'&lt;CMD&gt;)</code>,
@@ -2117,7 +2117,7 @@ their buffers.
 diagonal mouse drags within a single window.  A diagonal drag in any
 direction of the Action Key saves the current window configuration to a
 ring of window configurations, just like the Emacs text kill ring.
-(See <a 
href="https://www.gnu.org/software/emacs/manual/html_mono/emacs.html#Kill-Ring";>Kill
 Ring</a> in <cite>the Emacs Manual</cite>).  Each diagonal drag in any
+See <a 
href="https://www.gnu.org/software/emacs/manual/html_mono/emacs.html#Kill-Ring";>Kill
 Ring</a> in <cite>the Emacs Manual</cite>.  Each diagonal drag in any
 direction of the Assist Key restores a prior saved window configuration
 from the ring.  Window configurations are restored in reverse order of the
 way they were saved.  Since a ring is circular, after the oldest element is
@@ -8412,7 +8412,7 @@ keys were typed in by the user.
 </p>
 <p>Optionally, any of these id forms (or the relative form) may be followed by
 zero or more whitespace characters, a | and some view specification
-characters.  See <a href="#View-Specs">View Specs</a>
+characters.  See <a href="#View-Specs">View Specs</a>.
 </p>
 </dd>
 <dt><b>Klink</b></dt>
@@ -8621,7 +8621,7 @@ display location and so forth.
 <dt><b>View Spec</b></dt>
 <dd><p>A terse string that specifies a particular view of a koutline or a link
 referent.  If a view spec is active for a buffer, the view spec appears
-within the modeline like so, &lt;|view spec&gt;. See <a 
href="#View-Specs">View Specs</a>
+within the modeline like so, &lt;|view spec&gt;.  See <a 
href="#View-Specs">View Specs</a>.
 </p>
 </dd>
 <dt><b>Window</b></dt>
@@ -11089,16 +11089,14 @@ Next: <a href="#Smart-Key-_002d-Hyperbole-Buttons" 
accesskey="n" rel="next">Smar
          for display in another window, then this entry is displayed in the 
current
          window (DisplayHere minor mode is shown in the mode-line; use 
<kbd>{g}</kbd> to
          disable it)
-     (2) on the first line of the buffer:
+     (2) on a dired header line (other than the end of line):
          (a) within the leading whitespace, then if any deletes are to be
              performed, they are executed after user verification; otherwise,
              nothing is done;
          (b) otherwise, dired is run in another window on the ancestor 
directory
-             of the current directory path up through the location of point;
-             if point is before the first character, then the / root directory
-             is used.
-     (3) on or after the last line in the buffer or at the end of the first 
line,
-         this dired invocation is quit.
+             of the current directory path up through the location of point; if
+             point is on the first character, then the / root directory is 
used.
+     (3) on or after the last line in the buffer, this dired invocation is 
quit.
 </pre></div>
 <div class="format">
 <pre class="format">  ASSIST KEY
@@ -11106,8 +11104,8 @@ Next: <a href="#Smart-Key-_002d-Hyperbole-Buttons" 
accesskey="n" rel="next">Smar
      (2) on a # character, all auto-save files in the directory are marked for
          deletion;
      (3) anywhere else within an entry line, the current entry is marked for 
deletion;
-     (4) on or after the last line in the buffer or at the end of the first 
line,
-         all delete marks on all entries are undone.
+     (4) on or after the last line in the buffer, all delete marks on all 
entries are
+         undone.
 </pre></div>
 
 <hr>
diff --git a/man/hyperbole.info b/man/hyperbole.info
index 0760ea6152..8971ac36be 100644
Binary files a/man/hyperbole.info and b/man/hyperbole.info differ
diff --git a/man/hyperbole.pdf b/man/hyperbole.pdf
index 302ece2294..8f106c99ba 100644
Binary files a/man/hyperbole.pdf and b/man/hyperbole.pdf differ
diff --git a/man/hyperbole.texi b/man/hyperbole.texi
index 22925142b7..59d83436e6 100644
--- a/man/hyperbole.texi
+++ b/man/hyperbole.texi
@@ -7,7 +7,7 @@
 @c Author:       Bob Weiner
 @c
 @c Orig-Date:     6-Nov-91 at 11:18:03
-@c Last-Mod:      1-May-22 at 10:32:20 by Bob Weiner
+@c Last-Mod:     11-May-22 at 01:17:39 by Bob Weiner
 
 @c %**start of header (This is for running Texinfo on a region.)
 @setfilename hyperbole.info
@@ -155,8 +155,8 @@ WITHOUT ANY WARRANTY, without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</P>
 
 <PRE>
-Edition 8.0.0
-Printed May 1, 2022.
+Edition 8.0.1pre
+Printed May 11, 2022.
 
   Published by the Free Software Foundation, Inc.
   Author:    Bob Weiner
@@ -197,8 +197,8 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 @sp 2
 
 @example
-Edition 8.0.0
-May 1, 2022
+Edition 8.0.1pre
+May 11, 2022
 
   Published by the Free Software Foundation, Inc.
   Author:    Bob Weiner
@@ -511,7 +511,7 @@ Smart Keyboard Keys
 @chapter Introduction
 
 This edition of the GNU Hyperbole Manual is for use with any version
-8.0.0 or greater of GNU Hyperbole.  Hyperbole runs atop GNU Emacs 27.1
+8.0.1pre or greater of GNU Hyperbole.  Hyperbole runs atop GNU Emacs 27.1
 or higher.  It will trigger an error if your Emacs is older.
 
 This chapter summarizes the structure of the rest of the manual,
@@ -755,7 +755,7 @@ operations across emacs usage, including activating and 
showing help
 for Hyperbole buttons.  In many popular Emacs modes, they allow you to
 perform common, sometimes complex operations without having to use a
 different key for each operation.  Just press a Smart Key and the
-right thing happens.  @xref{Smart Keys};
+right thing happens.  @xref{Smart Keys}.
 
 @item Contact and Text Finder
 an interactive, textual information management interface, including
@@ -1100,7 +1100,7 @@ argument, such as @bkbd{C-u}, then invokes 
@code{assist-key} actions.
 
 You may also bind @code{action-mouse-key} and @code{assist-mouse-key} to
 other mouse keys, though you won't be able to execute mouse drag actions with
-such key bindings. @xref{Smart Mouse Key Drags} and @pxref{Keyboard Drags}.
+such key bindings.  @xref{Smart Mouse Key Drags}, and @pxref{Keyboard Drags}.
 
 To permanently change any of these key bindings, use:
 @code{(add-hook 'hyperbole-init-hook (lambda () (hkey-set-key <KEY> '<CMD>)},
@@ -1552,7 +1552,7 @@ Hyperbole allows you to save and restore window 
configurations with simple
 diagonal mouse drags within a single window.  A diagonal drag in any
 direction of the Action Key saves the current window configuration to a
 ring of window configurations, just like the Emacs text kill ring.
-(@xref{Kill Ring,,,emacs, the Emacs Manual}).  Each diagonal drag in any
+@xref{Kill Ring,,,emacs, the Emacs Manual}.  Each diagonal drag in any
 direction of the Assist Key restores a prior saved window configuration
 from the ring.  Window configurations are restored in reverse order of the
 way they were saved.  Since a ring is circular, after the oldest element is
@@ -7190,7 +7190,7 @@ or any of the following string forms:
 
 Optionally, any of these id forms (or the relative form) may be followed by
 zero or more whitespace characters, a | and some view specification
-characters.  @xref{View Specs}
+characters.  @xref{View Specs}.
 
 @item Klink
 An angle bracket, <>, delimited implicit button type that displays a
@@ -7367,7 +7367,7 @@ display location and so forth.
 @item View Spec
 A terse string that specifies a particular view of a koutline or a link
 referent.  If a view spec is active for a buffer, the view spec appears
-within the modeline like so, <|view spec>. @xref{View Specs}
+within the modeline like so, <|view spec>.  @xref{View Specs}.
 
 @item Window
 An Emacs window displays a single Emacs buffer within a single frame.
@@ -9543,16 +9543,14 @@ If pressed within a dired-mode (directory editor) 
buffer:
          for display in another window, then this entry is displayed in the 
current
          window (DisplayHere minor mode is shown in the mode-line; use 
@bkbd{g} to
          disable it)
-     (2) on the first line of the buffer:
+     (2) on a dired header line (other than the end of line):
          (a) within the leading whitespace, then if any deletes are to be
              performed, they are executed after user verification; otherwise,
              nothing is done;
          (b) otherwise, dired is run in another window on the ancestor 
directory
-             of the current directory path up through the location of point;
-             if point is before the first character, then the / root directory
-             is used.
-     (3) on or after the last line in the buffer or at the end of the first 
line,
-         this dired invocation is quit.
+             of the current directory path up through the location of point; if
+             point is on the first character, then the / root directory is 
used.
+     (3) on or after the last line in the buffer, this dired invocation is 
quit.
 @end group
 @end format
 @format
@@ -9562,8 +9560,8 @@ If pressed within a dired-mode (directory editor) buffer:
      (2) on a # character, all auto-save files in the directory are marked for
          deletion;
      (3) anywhere else within an entry line, the current entry is marked for 
deletion;
-     (4) on or after the last line in the buffer or at the end of the first 
line,
-         all delete marks on all entries are undone.
+     (4) on or after the last line in the buffer, all delete marks on all 
entries are
+         undone.
 @end group
 @end format
 
diff --git a/man/version.texi b/man/version.texi
index c4d35ac8fb..e3c0a6f00d 100644
--- a/man/version.texi
+++ b/man/version.texi
@@ -1,4 +1,4 @@
 @set UPDATED May, 2022
 @set UPDATED-MONTH May 2022
-@set EDITION 8.0.0
-@set VERSION 8.0.0
+@set EDITION 8.0.1pre
+@set VERSION 8.0.1pre



reply via email to

[Prev in Thread] Current Thread [Next in Thread]