Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
2026-03-08 Bob Weiner <rsw@gnu.org>

* hsys-org.el (org-version): Fix to test if version< "9.6" not "6".
hywiki.el (hywiki-maybe-highlight-region): Add for rehighlighting in a region
after edits are made to a buffer.
(hywiki-word-add-completion-at-point): Make 'indent-for-tab-command'
by default bound to {TAB} complete HyWiki references by setting
'tab-always-complete' to 'complete.
(hywiki-word-remove-completion-at-point): Restore user's customized
setting of 'tab-always-complete'.

2026-03-07 Bob Weiner <rsw@gnu.org>

* man/hyperbole.texi (HyWikiWords): Fix key binding for Org None option for
the Action Key.

* hsys-org-roam.el (require 'package):
hyrolo.el (require 'package):
hui-treemacs.el (require 'package):
hsys-org.el (require 'package): Ensure this is always the first require
to avoid the need to add a (package-activate) call.

* hywiki.el (hywiki-mode-disable): Move global hook disables to this new
function from 'hywiki-word-dehighlight-buffers'. Call only when
'hywiki-mode' is set to nil. This fixes an issue where new HyWiki pages
Expand Down
38 changes: 38 additions & 0 deletions README.md.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<ul>
<li><a href="#reference-manual">Reference Manual</a></li>
<li><a href="#videos">Videos</a></li>
<li><a href="#articles">Articles</a></li>
<li><a href="#summary">Summary</a></li>
<li><a href="#installation">Installation</a></li>
<li><a href="#invocation">Invocation</a></li>
Expand Down Expand Up @@ -77,6 +78,42 @@ <h2 id="videos">Videos</h2>
<li><p><a href="https://youtu.be/TQ_fG7b1iHI">Linking personal info with
implicit buttons</a></p></li>
</ul>
<h2 id="articles">Articles</h2>
<ul>
<li><p><a href="https://kirankp.com/blog/gnu-hyperbole/">HyWiki: My
Favorite Part of Hyperbole</a></p></li>
<li><p><a
href="https://github.com/termitereform/JunkPile/blob/master/HyperboleNotes.org">Hyperbole
VisionQuest Part 1</a></p></li>
<li><p><a
href="https://github.com/termitereform/JunkPile/blob/master/HyperboleNotes2.org">Hyperbole
VisionQuest Part 2</a></p></li>
<li><p><a
href="https://www.reddit.com/r/emacs/comments/1kty4mb/a_taste_of_hyperbole_automatically_linking_to_org/">A
Taste of Hyperbole</a></p></li>
<li><p><a
href="https://www.reddit.com/r/emacs/comments/nirwpk/my_understanding_of_gnu_hyperbole/">My
Understanding of GNU Hyperbole</a></p></li>
<li><p><a
href="https://tilde.town/~ramin_hal9001/articles/intro-to-hyperbole.html">What
does GNU Hyperbole do?</a></p></li>
<li><p><a
href="https://mail.gnu.org/archive/html/hyperbole-users/2019-01/msg00037.html">John
Wiegley - The Philosophy Behind Hyperbole</a></p></li>
<li><p><a
href="https://www.reddit.com/r/emacs/comments/jk3cn0/daily_ways_gnu_hyperbole_helps_me_stay_in_flow/">Daily
ways GNU Hyperbole helps me stay in flow and reduces cognitive
load</a></p></li>
<li><p><a
href="https://www.reddit.com/r/emacs/comments/1g2184d/doing_a_research_project_and_using_gnu_hyperboles/">Doing
a Research Project and using GNU Hyperbole's Integrated
Features</a></p></li>
<li><p><a href="https://deepwiki.com/rswgnu/hyperbole">AI-generated
Hyperbole Architectural Documentation</a></p></li>
<li><p><a
href="https://www.mgmarlow.com/words/2023-10-26-hyperbole/">Hypermedia
and Hyperbole</a></p></li>
</ul>
<h2 id="summary">Summary</h2>
<p><code>GNU Hyperbole</code> (pronounced Ga-new Hi-per-bo-lee), or just
<code>Hyperbole</code>, is like Markdown for hypertext. Hyperbole
Expand Down Expand Up @@ -234,6 +271,7 @@ <h2 id="invocation">Invocation</h2>
initialization. A long video demonstrating many of HyControl's features
is available at <a
href="https://youtu.be/M3-aMh1ccJk">https://youtu.be/M3-aMh1ccJk</a>.</p>
<h2 id="hyperbole-manual">Hyperbole Manual</h2>
<p>The above are the best interactive ways to learn about Hyperbole.
Hyperbole also includes the Hyperbole Manual, a full reference manual,
not a simple introduction. It is included in the "man/" subdirectory of
Expand Down
4 changes: 2 additions & 2 deletions hsys-org-roam.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 26-Feb-23 at 11:20:15 by Bob Weiner
;; Last-Mod: 5-Jan-25 at 12:06:23 by Bob Weiner
;; Last-Mod: 7-Mar-26 at 22:38:37 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
Expand All @@ -26,8 +26,8 @@
;;; Other required Elisp libraries
;;; ************************************************************************

(require 'package) ;; Always keep this first
(require 'hypb)
(require 'package)

;;; ************************************************************************
;;; Public declarations
Expand Down
6 changes: 3 additions & 3 deletions hsys-org.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 2-Jul-16 at 14:54:14
;; Last-Mod: 7-Mar-26 at 21:31:49 by Bob Weiner
;; Last-Mod: 7-Mar-26 at 22:39:35 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
Expand All @@ -30,6 +30,7 @@
;;; Other required Elisp libraries
;;; ************************************************************************

(require 'package) ;; Always keep this first
(eval-when-compile (require 'hmouse-drv))
(require 'hargs) ;; for `hargs:delimited-p'
(require 'hproperty) ;; requires 'hbut
Expand All @@ -39,7 +40,6 @@
(require 'org-element)
(require 'org-fold nil t)
(require 'org-macs)
(require 'package)
(require 'warnings)
(require 'find-func)
;; Avoid any potential library name conflict by giving the load directory.
Expand Down Expand Up @@ -314,7 +314,7 @@ Return t if Org is reloaded, else nil."
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
t)))))

(if (version< org-version "6")
(if (version< org-version "9.6")
;;; For Org less than 9.6; derived from `org-get-heading' in "org.el"
;;;###autoload
(defun hsys-org-format-heading (heading &optional no-tags no-todo no-priority no-comment)
Expand Down
5 changes: 2 additions & 3 deletions hui-treemacs.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 19-Nov-17
;; Last-Mod: 13-Nov-24 at 13:09:22 by Mats Lidell
;; Last-Mod: 7-Mar-26 at 22:39:17 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
Expand All @@ -21,7 +21,7 @@
;;; Other required Elisp libraries
;;; ************************************************************************

(require 'package)
(require 'package) ;; Always keep this first
(require 'seq)

(or (require 'treemacs nil t)
Expand Down Expand Up @@ -156,4 +156,3 @@ Suitable for use as a value of `action-key-modeline-buffer-id-function'."

(provide 'hui-treemacs)
;;; hui-treemacs.el ends here

4 changes: 2 additions & 2 deletions hyrolo.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 7-Jun-89 at 22:08:29
;; Last-Mod: 28-Feb-26 at 23:10:24 by Bob Weiner
;; Last-Mod: 7-Mar-26 at 22:38:55 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
Expand Down Expand Up @@ -32,6 +32,7 @@
;;; Other required Elisp libraries
;;; ************************************************************************

(require 'package) ;; Always keep this first
(require 'hversion)
(require 'hmail)
(require 'hsys-consult)
Expand All @@ -40,7 +41,6 @@
(eval-when-compile
`(hyrolo-install-markdown-mode))
(require 'outline)
(require 'package)
(require 'reveal)
;; Avoid any potential library name conflict by giving the load directory.
(require 'set (expand-file-name "set" hyperb:dir))
Expand Down
42 changes: 27 additions & 15 deletions hywiki.el
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 21-Apr-24 at 22:41:13
;; Last-Mod: 7-Mar-26 at 22:10:28 by Bob Weiner
;; Last-Mod: 8-Mar-26 at 20:19:37 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
Expand Down Expand Up @@ -2546,6 +2546,18 @@ the current page unless they have sections attached."
(and (/= (point) (point-max))
(/= (if (char-after) (char-syntax (char-after)) 0) ? ))))

(defun hywiki-maybe-highlight-org-element-backward ()
"Highlight HyWikiWords with point at a single closing square/angle bracket.
Dehighlight HyWikiWords when on a double closing square/angle bracket,
since Org mode highlights those."
(hywiki--maybe-de/highlight-org-element-backward #'hywiki-maybe-highlight-sexp))

(defun hywiki-maybe-highlight-org-element-forward ()
"Highlight HyWikiWords with point at a single opening square/angle bracket.
Dehighlight HyWikiWords when on a double opening square/angle bracket,
since Org mode highlights those."
(hywiki--maybe-de/highlight-org-element-forward #'hywiki-maybe-highlight-sexp))

;;;###autoload
(defun hywiki-maybe-highlight-reference (&optional on-reference)
"Highlight any non-Org link HyWikiWord#section at or one char before point.
Expand Down Expand Up @@ -2647,18 +2659,6 @@ the current page unless they have sections attached."
hywiki--but-end (hproperty:but-end hywiki--buts))
(hproperty:but-delete hywiki--buts)))))))))

(defun hywiki-maybe-highlight-org-element-backward ()
"Highlight HyWikiWords with point at a single closing square/angle bracket.
Dehighlight HyWikiWords when on a double closing square/angle bracket,
since Org mode highlights those."
(hywiki--maybe-de/highlight-org-element-backward #'hywiki-maybe-highlight-sexp))

(defun hywiki-maybe-highlight-org-element-forward ()
"Highlight HyWikiWords with point at a single opening square/angle bracket.
Dehighlight HyWikiWords when on a double opening square/angle bracket,
since Org mode highlights those."
(hywiki--maybe-de/highlight-org-element-forward #'hywiki-maybe-highlight-sexp))

(defun hywiki-maybe-highlight-references (&optional region-start region-end skip-lookups-update-flag)
"Highlight each non-Org link HyWiki page#section in the current buffer/region.
With optional REGION-START and REGION-END positions or markers (active
Expand Down Expand Up @@ -2797,6 +2797,14 @@ whenever `hywiki-mode' is enabled/disabled."
(hywiki-maybe-directory-updated))
nil)

(defun hywiki-maybe-highlight-region (start end)
"Rehighlight HyWikiWord references between positions START to END."
(hywiki-maybe-highlight-references start end t)
(unless (hyperb:stack-frame '(hywiki-maybe-highlight-wikiwords-in-frame))
;; Rebuild lookup tables if any HyWiki page name has changed
(hywiki-get-referent-hasht)
(hywiki-maybe-directory-updated)))

(defun hywiki-maybe-highlight-sexp (direction-number)
"Highlight any HyWikiWord within single square/angle bracket.
DIRECTION-NUMBER is 1 for forward scanning and -1 for backward scanning."
Expand Down Expand Up @@ -4028,6 +4036,9 @@ Completion requires typing at least the two first characters of the
completion or no completion candidates are returned.
If using `company-mode', you must use the `company-capf' backend for HyWiki
completion to work properly."
;; Make `indent-for-tab-command' by default bound to {TAB} complete HyWiki
;; references.
(setq tab-always-indent 'complete)
(add-hook 'completion-at-point-functions #'hywiki-completion-at-point -90 t)
(cond ((bound-and-true-p corfu-mode)) ;; Uses :exit-function in hywiki-c-a-p
((bound-and-true-p company-mode)
Expand All @@ -4048,8 +4059,9 @@ completion to work properly."
(remove-hook 'company-completion-finished-hook #'hywiki-completion-exit-function)
(remove-hook 'company-completion-cancelled-hook #'hywiki-completion-exit-function)
(advice-remove 'completion--insert #'hywiki-completion-exit-function)
;; Restore user's customized setting of this option.
(custom-reevaluate-setting 'completion-cycle-threshold))
;; Restore user's customized setting of these options.
(custom-reevaluate-setting 'completion-cycle-threshold)
(custom-reevaluate-setting 'tab-always-indent))

(defun hywiki-word-highlight-buffers (buffers)
"Setup HyWikiWord auto-highlighting and highlight in BUFFERS."
Expand Down
11 changes: 6 additions & 5 deletions man/hyperbole.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- This manual is for GNU Hyperbole
(Edition 9.0.2pre, Published February 7, 2026).
(Edition 9.0.2pre, Published March 7, 2026).

Copyright © 1989-2026 Free Software Foundation, Inc.

Expand Down Expand Up @@ -386,7 +386,7 @@ <h1 class="top" id="GNU-Hyperbole"><span>GNU Hyperbole<a class="copiable-link" h

<PRE>
Edition 9.0.2pre
Printed February 7, 2026.
Printed March 7, 2026.

Published by the Free Software Foundation, Inc.
Author: Bob Weiner
Expand Down Expand Up @@ -4366,6 +4366,7 @@ <h4 class="subsubsection" id="Creation-Via-Assist-Key-Drags"><span>4.7.1.3 Creat
<div class="example">
<pre class="example-preformatted">Referent Context Link Type
----------------------------------------------------
HyWikiWord Reference link-to-wikiword
Org Roam or Org Id link-to-org-id
Global Button link-to-gbut
Explicit Button link-to-ebut
Expand Down Expand Up @@ -5065,13 +5066,13 @@ <h3 class="section" id="HyWikiWords-1"><span>6.1 HyWikiWords<a class="copiable-l
<a class="index-entry-id" id="index-activate-HyWiki-link"></a>
<a class="index-entry-id" id="index-link_002c-HyWikiWord"></a>
<a class="index-entry-id" id="index-C_002dh-h-h-a"></a>
<a class="index-entry-id" id="index-C_002dh-h-h-o-i"></a>
<a class="index-entry-id" id="index-C_002dh-h-h-o-n"></a>
<a class="index-entry-id" id="index-menu-item_002c-HyWiki_002fOrg_002dM_002dRET_002fNone"></a>
<p>To jump to a HyWiki page, simply move point onto any highlighted
HyWikiWord and press the Action Key <kbd class="kbd">{M-<kbd class="key">RET</kbd>}</kbd>. This also
highlights any other instances of HyWikiWords across all visible Emacs
windows. If you have set the Org <kbd class="kbd">{M-<kbd class="key">RET</kbd>}</kbd> option to
&lsquo;<samp class="samp">None</samp>&rsquo; with <kbd class="kbd">{C-h h h o i}</kbd>, then you will have to
&lsquo;<samp class="samp">None</samp>&rsquo; with <kbd class="kbd">{C-h h h o n}</kbd>, then you will have to
use the HyWiki Act menu command <kbd class="kbd">{C-h h h a}</kbd> instead to jump to HyWiki
pages.
</p>
Expand Down Expand Up @@ -14085,7 +14086,7 @@ <h2 class="unnumbered" id="Key-Index-1"><span>Key Index<a class="copiable-link"
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-m"><code>C-h h h m</code></a></td><td class="printindex-index-section"><a href="#HyWikiWords">HyWikiWords</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-o"><code>C-h h h o</code></a></td><td class="printindex-index-section"><a href="#HyWiki-Menu">HyWiki Menu</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-o-a"><code>C-h h h o a</code></a></td><td class="printindex-index-section"><a href="#HyWikiWords">HyWikiWords</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-o-i"><code>C-h h h o i</code></a></td><td class="printindex-index-section"><a href="#HyWikiWords">HyWikiWords</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-o-n"><code>C-h h h o n</code></a></td><td class="printindex-index-section"><a href="#HyWikiWords">HyWikiWords</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-p"><code>C-h h h p</code></a></td><td class="printindex-index-section"><a href="#HyWiki">HyWiki</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-h-p-1"><code>C-h h h p</code></a></td><td class="printindex-index-section"><a href="#Publish-HyWiki">Publish HyWiki</a></td></tr>
<tr><td></td><td class="printindex-index-entry"><a href="#index-C_002dh-h-i"><code>C-h h i</code></a></td><td class="printindex-index-section"><a href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
Expand Down
Binary file modified man/hyperbole.info
Binary file not shown.
Binary file modified man/hyperbole.pdf
Binary file not shown.
14 changes: 7 additions & 7 deletions man/hyperbole.texi
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
@c Author: Bob Weiner
@c
@c Orig-Date: 6-Nov-91 at 11:18:03
@c Last-Mod: 18-Feb-26 at 23:43:55 by Bob Weiner
@c Last-Mod: 7-Mar-26 at 23:32:46 by Bob Weiner

@c %**start of header (This is for running Texinfo on a region.)
@setfilename hyperbole.info
Expand All @@ -30,8 +30,8 @@
@set txicodequoteundirected
@set txicodequotebacktick

@set UPDATED February 18, 2026
@set UPDATED-MONTH February 2026
@set UPDATED March 7, 2026
@set UPDATED-MONTH Marc 2026
@set EDITION 9.0.2pre
@set VERSION 9.0.2pre

Expand Down Expand Up @@ -171,7 +171,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</P>

<PRE>
Edition 9.0.2pre
Printed February 18, 2026.
Printed March 7, 2026.

Published by the Free Software Foundation, Inc.
Author: Bob Weiner
Expand Down Expand Up @@ -213,7 +213,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

@example
Edition 9.0.2pre
February 18, 2026 @c AUTO-REPLACE-ON-SAVE
March 7, 2026 @c AUTO-REPLACE-ON-SAVE


Published by the Free Software Foundation, Inc.
Expand Down Expand Up @@ -4552,13 +4552,13 @@ that key in all Action and Assist Key contexts with the
@cindex activate HyWiki link
@cindex link, HyWikiWord
@kindex C-h h h a
@kindex C-h h h o i
@kindex C-h h h o n
@cindex menu item, HyWiki/Org-M-RET/None
To jump to a HyWiki page, simply move point onto any highlighted
HyWikiWord and press the Action Key @bkbd{M-@key{RET}}. This also
highlights any other instances of HyWikiWords across all visible Emacs
windows. If you have set the Org @bkbd{M-@key{RET}} option to
@samp{None} with @bkbd{C-h h h o i}, then you will have to
@samp{None} with @bkbd{C-h h h o n}, then you will have to
use the HyWiki Act menu command @bkbd{C-h h h a} instead to jump to HyWiki
pages.

Expand Down
Loading