[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/hyperbole 99cc9cbd75 9/9: Merge pull request #569 from
From: |
ELPA Syncer |
Subject: |
[elpa] externals/hyperbole 99cc9cbd75 9/9: Merge pull request #569 from rswgnu/rsw |
Date: |
Sun, 11 Aug 2024 03:58:28 -0400 (EDT) |
branch: externals/hyperbole
commit 99cc9cbd750c9fcb46fbd420ceafff348090b8e0
Merge: 68b68ded5f 185affeb56
Author: Robert Weiner <rsw@gnu.org>
Commit: GitHub <noreply@github.com>
Merge pull request #569 from rswgnu/rsw
HyWiki - Publish a HyWiki to HTML: {M-x hywiki-publish-to-html RET}
---
ChangeLog | 68 ++++++++++++----
hsys-org-roam.el | 10 +--
hynote.el | 34 ++++++--
hywiki.el | 232 ++++++++++++++++++++++++++++++++++++++++---------------
4 files changed, 254 insertions(+), 90 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index d1b8e1c30e..0e77f3d563 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,36 @@
+2024-08-11 Bob Weiner <rsw@gnu.org>
+
+* hywiki.el (hywiki-maybe-highlight-page-names-in-frame): Reduce sit-for
+ to 0 since just want to trigger redisplay.
+ (hywiki-publish-to-html): Retrieve HyWiki project by name.
+ (hywiki-directory): Change to a defcustom so can set this before
+ loading Hyperoble.
+
+2024-08-10 Bob Weiner <rsw@gnu.org>
+
+* hynote.el: Update commentary to current functionality.
+ (hynote-get-file): Add ".otl" and ".outl" suffixes for Emacs
+ outline and HyRolo files.
+
+* hywiki.el (hywiki-org-export-function): Add and use as advice on
+ 'org-element--generate-copy-script'.
+ (hywiki-get-page): Fix so just returns nil if page name is invalid
+ or not found.
+ (hywiki-org-link-resolve ,hywiki-org-link-export): Handle nil as a
+ 'link' arg value. In resolve function, remove any hy: prefix and return
+ nil if wiki page is not found. In export function, return 'link' arg
+ with no markup if wiki page is not found.
+ (hywiki-org-publishing-directory): Add as location to exported
HyWiki
+ pages to.
+ (hywiki-org-publishing-function): Add as Org function used to
export
+ each HyWiki page.
+ (hywiki-org-publish-project-alist): Add with properties for
+ exporting a HyWiki.
+ (hywiki-org-get-publish-project, hywiki-org-get-publish-property):
+ Add to simplify HyWiki Org publish property handling.
+ (hywiki-publish-to-html): Add to export HyWiki pages to html. With
+ a prefix argument, regenerate all html pages.
+
2024-08-08 Mats Lidell <matsl@gnu.org>
* test/hibtypes-tests.el (elisp-compiler-msg-test): Add test.
@@ -16,24 +49,28 @@
2024-07-31 Bob Weiner <rsw@gnu.org>
-* hibtypes.el (org-uuid-regexp): Add variable def for when missing in certain
earlier Org
- versions.
+* hibtypes.el (org-uuid-regexp): Add variable def for when missing in certain
+ earlier Org versions.
-* test/hsys-org-tests.el (hsys-org---agenda-tags-string): Fix to current tag
handling code.
+* test/hsys-org-tests.el (hsys-org---agenda-tags-string): Fix to current tag
+ handling code.
2024-07-28 Bob Weiner <rsw@gnu.org>
-* hproperty.el (hproperty:but-add): Add a button only when a button with the
same property
- value, start, and end does not already exist, to prevent duplicates.
+* hproperty.el (hproperty:but-add): Add a button only when a button with the
+ same property value, start, and end does not already exist, to prevent
+ duplicates.
-* hywiki.el (hywiki-maybe-highlight-page-name): Fix to dehighlight wiki words
only if within
- double square or angle brackets (leaving these to Org to handle).
- (hywiki-buttonize-non-character-commands): Add 'delete-' commands.
- (hywiki--highlighting-done-flag): Add and use in
'hywiki-maybe-highlight-page-name'.
- (hywiki-maybe-highlight-org-element-backward,
- hywiki-maybe-highlight-org-element-forward): Add these two functions.
- (hywiki-maybe-highlight-page-names): Fix to not use whole buffer highlight
flag when
- given a region.
+* hywiki.el (hywiki-maybe-highlight-page-name): Fix to dehighlight wiki words
+ only if within double square or angle brackets (leaving these to Org to
+ handle).
+ (hywiki-buttonize-non-character-commands): Add 'delete-' commands.
+ (hywiki--highlighting-done-flag): Add and use in
+ 'hywiki-maybe-highlight-page-name'.
+ (hywiki-maybe-highlight-org-element-backward,
+ (hywiki-maybe-highlight-org-element-forward): Add these two
functions.
+ (hywiki-maybe-highlight-page-names): Fix to not use whole buffer
+ highlight flag when given a region.
* hsys-org-roam.el (hsys-org-roam-tags-view):
hsys-org.el (hsys-org-tags-view):
@@ -44,8 +81,9 @@
'org-consult-agenda-function' to 'agenda-tags-view-function' since does
not require the consult package and don't want to override any org
package name. Improve doc string.
- (hsys-org--agenda-tags-string): Improve doc string and fix to
return
- non-nil only when point is within a tag string. Simplify return value
creation.
+ (hsys-org--agenda-tags-string): Improve doc string and fix to
+ return non-nil only when point is within a tag string. Simplify return
+ value creation.
2024-07-28 Mats Lidell <matsl@gnu.org>
diff --git a/hsys-org-roam.el b/hsys-org-roam.el
index 9f16e40320..99082e6425 100644
--- a/hsys-org-roam.el
+++ b/hsys-org-roam.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 26-Feb-23 at 11:20:15 by Bob Weiner
-;; Last-Mod: 8-Aug-24 at 23:49:13 by Mats Lidell
+;; Last-Mod: 11-Aug-24 at 00:46:33 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -33,13 +33,13 @@
;;; ************************************************************************
(defvar consult-org-roam-grep-func)
-(defvar org-roam-directory)
(defvar hsys-org-at-tags-p)
-(defvar org-agenda-files)
(defvar org-agenda-buffer-tmp-name)
-(declare-function org-roam-db-autosync-mode "ext:org-roam")
-(declare-function hypb:require-package "hypb")
+(defvar org-agenda-files)
+(defvar org-roam-directory)
(declare-function hsys-org-at-tags-p "hsys-org")
+(declare-function hypb:require-package "hypb")
+(declare-function org-roam-db-autosync-mode "ext:org-roam")
;;; ************************************************************************
;;; Public functions
diff --git a/hynote.el b/hynote.el
index 0bbe4bc258..76b3a590f9 100644
--- a/hynote.el
+++ b/hynote.el
@@ -14,11 +14,29 @@
;;; Commentary:
;;
-;; This is Hyperbole's note taking system, HyNote. It utilizes the
-;; Org mode or the Koutliner file format plus UUIds and HyRolo for note
lookups.
+;; This is a start on Hyperbole's note taking system, HyNote, which
+;; presently simply provides an experience similar to HyWikiWords
+;; for Org and Org Roam file and headline links. In the future, it
+;; will also provide a universal way to easily link to information
+;; across many file formats.
+;;
+;; HyNote supports Org, Markdown, Koutline and Emacs Outline file
+;; formats. It uses UUIDs and HyRolo for quick note lookups across
+;; matching files in `hynote-directory-list'.
;;
;; See all the autoloaded functions herein for interactive commands.
-;; See the Info manual entry "(hyperbole)HyNote" for usage information.
+;;
+;; HyNote adds an implicit button type to Hyperbole:
+;; `hynote-file' displays Org and Org Roam links without the need
+;; for any delimiters or file suffixes, e.g. my-org-file-stem#headline
+;; would jump to the headline in the my-org-file. There is no
+;; highlighting on such links but they flash when activated and {C-h A}
+;; will show what they do.
+;;
+;; This is one of the lowest priority implicit button types, so such link
+;; buttons trigger only when other types are not recognized first. Note
+;; that the `hywiki-word' type is recognized ahead of the `hynote-file'
+;; type.
;;; Code:
;;; ************************************************************************
@@ -106,14 +124,14 @@ After successfully finding a file and reading it into a
buffer, run
(defun hynote-get-file (file-stem-name)
"Return existing file path in `hynote-directory-list' from FILE-STEM-NAME.
-File name must end with `hyrolo-file-suffix-regexp'. No
-validation of FILE-STEM-NAME is done."
+File name must end with standard suffixes from `hyrolo-file-suffix-regexp'.
+No validation of FILE-STEM-NAME is done."
;; Remove any #section from `file-stem-name'
(setq file-stem-name (if (string-match "#" file-stem-name)
(substring file-stem-name 0 (match-beginning 0))
file-stem-name))
- (locate-file file-stem-name hynote-directory-list
- '(".org" ".md" ".kotl" ".kot")))
+ (locate-file file-stem-name hynote-directory-list
+ '(".kotl" ".kot" ".md" ".org" ".otl" ".outl")))
(defun hynote-get-files ()
"Return `hynote-directory-list' files ending with
`hyrolo-file-suffix-regexp'.
@@ -126,7 +144,7 @@ File names returned are relative to
`hynote-directory-list'."
hynote-directory-list))
(defun hynote-get-file-stems ()
- "Return the list of existing HyWiki files sans their `hynote-file-suffixes'.
+ "Return the list of existing HyNote files sans their `hynote-file-suffixes'.
This includes both Hynote page files and others. Stems returned are
relative to `hynote-directory-list'."
(mapcar #'file-name-sans-extension (hynote-get-files)))
diff --git a/hywiki.el b/hywiki.el
index c27030da33..2121646ba4 100644
--- a/hywiki.el
+++ b/hywiki.el
@@ -3,7 +3,7 @@
;; Author: Bob Weiner
;;
;; Orig-Date: 21-Apr-24 at 22:41:13
-;; Last-Mod: 8-Aug-24 at 23:22:05 by Mats Lidell
+;; Last-Mod: 11-Aug-24 at 01:09:50 by Bob Weiner
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;;
@@ -82,18 +82,35 @@
;; `hywiki-highlight-all-in-prog-modes' (default =
;; '(lisp-interaction-mode)).
;;
-;; HyWiki adds two implicit button types to Hyperbole:
+;; HyWiki adds one implicit button type to Hyperbole:
;; `hywiki-word' creates and displays HyWikiWord pages;
-;; `hywiki-file' displays existing `hywiki-directory' non-HyWikiWord
-;; Org files that have been added manually. For example, if you
-;; add the file, my-file.org, there, you would be able to jump to it
-;; by adding 'my-file' anywhere that HyWikiWords are recognized. It
-;; won't be highlighted as it isn't a HyWikiWord but it behaves
-;; similarly when activated.
+;; This is one of the lowest priority implicit button types so that
+;; it triggers only when other types are not recognized first.
;;
-;; These are the lowest priority implicit button types so they trigger
-;; only when other types are not recognized first. The hywiki-word
-;; type is recognized ahead of the hywiki-file type.
+;; A HyWiki can be exported to HTML for publishing to the web via Org
+;; mode's publish a project feature. {M-x hywiki-publish-to-html RET}
+;; will and that's it! Add a prefix argument to force regeneration of all
+;; HyWiki pages, rather than only those that have been updated.
+;;
+;; The full set of HyWiki-specific Org publish properties are set in
+;; the variable `hywiki-org-publish-project-alist'. When the HyWiki
+;; code is loaded into Emacs, it automatically integrates these
+;; properties with Org's publishing framework, so when in a HyWiki
+;; page, you can use the standard {C-c C-e P p} current project publish
+;; command.
+;;
+;; There are a few publishing settings you can customize prior to
+;; loading Hyperbole's HyWiki code.
+;;
+;; HyWiki html files are saved in:
+;; (hywiki-org-get-publish-property :publishing-directory)
+;; Customize this directory with:
+;; {M-x customize-variable RET hywiki-org-publishing-directory RET}.
+;;
+;; HyWiki html files are generated by the function given by:
+;; (hywiki-org-get-publish-property :publishing-function)
+;; Customize the value of this function if necessary with:
+;; {M-x customize-variable RET hywiki-org-publishing-function RET}.
;;; Code:
;;; ************************************************************************
@@ -164,8 +181,11 @@ Use nil for no HyWiki mode indicator."
(defvar hywiki-file-suffix ".org"
"File suffix (including period) to use when creating HyWiki pages.")
-(defvar hywiki-directory '"~/hywiki/"
- "Directory in which to find HyWiki page files.")
+(defcustom hywiki-directory '"~/hywiki/"
+ "Directory that holds all HyWiki pages in Org format.
+See `hywiki-org-publishing-directory' for exported pages in html format."
+ :type 'string
+ :group 'hyperbole-hywiki)
(defvar-local hywiki-buffer-highlighted-state nil
"State of HyWikiWords highlighting in the associated buffer.
@@ -205,6 +225,35 @@ Presently, there are no key bindings; this is for future
use.")
Otherwise, this prefix is not needed and HyWiki word Org links
override standard Org link lookups. See \"(org)Internal Links\".")
+(defcustom hywiki-org-publishing-directory "~/public_hywiki"
+ "Directory where HyWiki pages are converted into html and published."
+ :type 'string
+ :group 'hyperbole-hywiki)
+
+(defcustom hywiki-org-publishing-function 'org-html-publish-to-html
+ "HyWiki Org publish function used to export a HyWiki page to html."
+ :type 'symbol
+ :group 'hyperbole-hywiki)
+
+(defvar hywiki-org-publish-project-alist
+ (list
+ "hywiki"
+ :auto-sitemap t
+ :base-directory (expand-file-name hywiki-directory)
+ :html-head (format
+ "<link rel=\"stylesheet\" type=\"text/css\"
href=\"%sman/hyperbole.css\"/>"
+ hyperb:dir)
+ ;; !! TODO: The :makeindex property is disabled for now, until a process is
+ ;; developed to force the Org publish process to regenerate the
+ ;; index after index entries are inserted into the temporary Org
+ ;; buffer prior to export to HTML.
+ :makeindex nil
+ :publishing-function hywiki-org-publishing-function
+ :publishing-directory hywiki-org-publishing-directory
+ :section-numbers t
+ :with-toc nil)
+ "HyWiki-specific export properties added to `org-publish-project-alist'.")
+
(defvar-local hywiki-page-flag nil
"Set to t after a `find-file' of a HyWiki page file, else nil.
The file must be below `hywiki-directory'.
@@ -508,12 +557,25 @@ per file to the absolute value of MAX-MATCHES, if given
and not 0. If
(defun hywiki-convert-words-to-org-links ()
"Convert all highlighted HyWiki words in current buffer to Org links."
- (hywiki-map-words (lambda (overlay)
- (goto-char (overlay-end overlay))
- (insert "]]")
- (goto-char (overlay-start overlay))
- (insert "[[" hywiki-org-link-type ":")
- (delete-overlay overlay))))
+ (let ((make-index (hywiki-org-get-publish-property :makeindex))
+ wiki-word)
+ (hywiki-map-words (lambda (overlay)
+ (goto-char (overlay-end overlay))
+ (if make-index
+ (progn
+ (setq wiki-word (buffer-substring-no-properties
+ (overlay-start overlay)
+ (overlay-end overlay)))
+ (when (string-match (concat hywiki-org-link-type
":")
+ wiki-word)
+ (setq wiki-word (substring wiki-word (match-end
0))))
+ (insert "]]\n#+INDEX: " wiki-word "\n"))
+ (insert "]]"))
+ (goto-char (overlay-start overlay))
+ (if (looking-at (concat hywiki-org-link-type ":"))
+ (insert "[[")
+ (insert "[[" hywiki-org-link-type ":"))
+ (delete-overlay overlay)))))
(defun hywiki-maybe-at-wikiword-beginning ()
"Return non-nil if previous character is one preceding a HyWiki word.
@@ -899,7 +961,7 @@ the current page unless they have sections attached."
(with-selected-window window
;; Display buffer before `normal-mode' triggers possibly
;; long-running font-locking
- (sit-for 0.1)
+ (sit-for 0)
(hywiki-maybe-highlight-page-names)))
nil frame))
@@ -941,18 +1003,16 @@ relative to `hywiki-directory'."
(defun hywiki-get-page (page-name)
"Return the absolute path of HyWiki PAGE-NAME or nil if it does not exist."
- (if (and (stringp page-name) (not (string-empty-p page-name))
+ (when (and (stringp page-name) (not (string-empty-p page-name))
(string-match hywiki-word-with-optional-section-exact-regexp
page-name))
- (progn
- (when (match-string-no-properties 2 page-name)
- ;; Remove any #section suffix in PAGE-NAME.
- (setq page-name (match-string-no-properties 1 page-name)))
+ (when (match-string-no-properties 2 page-name)
+ ;; Remove any #section suffix in PAGE-NAME.
+ (setq page-name (match-string-no-properties 1 page-name)))
- (or (hash-get page-name (hywiki-get-page-hasht))
- ;; If page exists but not yet in lookup hash table, add it.
- (when (file-readable-p (hywiki-get-file page-name))
- (hywiki-add-page page-name))))
- (user-error "(hywiki-get-page): Invalid page name: '%s'; must be
capitalized, all alpha" page-name)))
+ (or (hash-get page-name (hywiki-get-page-hasht))
+ ;; If page exists but not yet in lookup hash table, add it.
+ (when (file-readable-p (hywiki-get-file page-name))
+ (hywiki-add-page page-name)))))
(defun hywiki-get-file (file-stem-name)
"Return possibly non-existent path in `hywiki-directory' from FILE-STEM-NAME.
@@ -1033,6 +1093,23 @@ Use `hywiki-get-page' to determine whether a HyWiki page
exists."
collect key))))
('sorted t))))))
+(defun hywiki-org-export-function (&rest _)
+ "Add to `write-contents-functions' to convert HyWikiWord links to Org links.
+This is done automatically by loading HyWiki."
+ (require 'org-element)
+ (when (and (derived-mode-p 'org-mode)
+ (hyperb:stack-frame '(org-export-as)))
+ (hywiki-convert-words-to-org-links)))
+
+(defun hywiki-org-get-publish-project ()
+ "Return the HyWiki Org publish project, a named set of properties."
+ (require 'ox-publish)
+ (cons "hywiki" (alist-get "hywiki" org-publish-project-alist nil nil
#'equal)))
+
+(defun hywiki-org-get-publish-property (property)
+ "Return the value of HyWiki Org publish PROPERTY symbol."
+ (org-publish-property property (hywiki-org-get-publish-project)))
+
(defun hywiki-org-link-complete (&optional _arg)
"Complete HyWiki page names for `org-insert-link'."
(concat
@@ -1057,52 +1134,77 @@ Use `hywiki-get-page' to determine whether a HyWiki
page exists."
;;; Next two functions derived from the denote package.
;;;###autoload
(defun hywiki-org-link-export (link description format)
- "Export a HyWikiWord `hy:' link to various formats.
+ "Export a HyWikiWord Org-format `hy:' link to various formats.
The LINK, DESCRIPTION, and FORMAT are provided by the export
backend."
(let* ((path-word-section (hywiki-org-link-resolve link :full-data))
- (path (file-relative-name (nth 0 path-word-section)))
- (path-stem (file-name-sans-extension path))
- (word (nth 1 path-word-section))
- (section (nth 2 path-word-section))
+ (path (when path-word-section
+ (file-relative-name (nth 0 path-word-section))))
+ (path-stem (when path
+ (file-name-sans-extension path)))
+ (word (when path-word-section
+ (nth 1 path-word-section)))
+ (section (when path-word-section
+ (nth 2 path-word-section)))
(desc (cond (description)
- (section (format "%s:%s#%s"
- hywiki-org-link-type word section))
- (t (concat hywiki-org-link-type ":" word)))))
- (pcase format
- (`ascii (format "[%s] <%s:%s>" hywiki-org-link-type desc path))
- (`html (format "<a href=\"%s.html%s\">%s</a>"
- path-stem (if section (concat "#" section) "")
- desc))
- (`latex (format "\\href{%s}{%s}" (replace-regexp-in-string
"[\\{}$%&_#~^]" "\\\\\\&" path) desc))
- (`md (format "[%s](%s)" desc path))
- (`texinfo (format "@uref{%s,%s}" path desc))
- (_ path))))
+ (section (when word
+ (format "%s#%s" word section)))
+ (word)
+ (t ""))))
+ (if path
+ (pcase format
+ (`ascii (format "[%s] <%s:%s>" hywiki-org-link-type desc path))
+ (`html (format "<a href=\"%s.html%s\">%s</a>"
+ path-stem (if section (concat "#" section) "")
+ desc))
+ (`latex (format "\\href{%s}{%s}" (replace-regexp-in-string
"[\\{}$%&_#~^]" "\\\\\\&" path) desc))
+ (`md (format "[%s](%s)" desc path))
+ (`texinfo (format "@uref{%s,%s}" path desc))
+ (_ path))
+ link)))
(defun hywiki-org-link-resolve (link &optional full-data)
"Resolve HyWiki word LINK to page, with or without additional section.
With optional FULL-DATA non-nil, return a list in the form of (path
-word section)."
- (let* ((section (and (string-match "\\(#\\|::\\)\\(.*\\)\\'" link)
- (match-string 2 link)))
- (word (if (and section (not (string-empty-p section)))
- (substring link 0 (match-beginning 0))
- link))
- (path (hywiki-get-page word)))
- (cond
- (full-data
- (list path word section))
- ((and section (not (string-empty-p section)))
- (concat path "::" section))
- (t path))))
-
-(eval-after-load 'org
+word section). If page is not found, return nil."
+ (when (stringp link)
+ (when (string-match (concat "\\`" hywiki-org-link-type ":") link)
+ ;; Remove hy: link prefix
+ (setq link (substring link (match-end 0))))
+ (let* ((section (and (string-match "\\(#\\|::\\)\\(.*\\)\\'" link)
+ (match-string 2 link)))
+ (word (if (and section (not (string-empty-p section)))
+ (substring link 0 (match-beginning 0))
+ link))
+ (path (and word (hywiki-get-page word))))
+ (when path
+ (cond
+ (full-data
+ (list path word section))
+ ((and section (not (string-empty-p section)))
+ (concat path "::" section))
+ (t path))))))
+
+(eval-after-load "org"
'(org-link-set-parameters hywiki-org-link-type
:complete #'hywiki-org-link-complete
:export #'hywiki-org-link-export
:follow #'hywiki-find-page
:store #'hywiki-org-link-store))
+(defun hywiki-publish-to-html (&optional all-pages-flag)
+ "Publish/export updated HyWiki pages to html.
+With an optional prefix arg, ALL-PAGES-FLAG, regenerate all html
+pages rather than only those HyWiki pages which have changed
+since a prior publish.
+
+Files are saved in:
+ (hywiki-org-get-publish-property :publishing-directory)
+Customize this directory with:
+ {M-x customize-variable RET hywiki-org-publishing-directory RET}."
+ (interactive "P")
+ (org-publish-project "hywiki" all-pages-flag))
+
;;;###autoload
(defun hywiki-tags-view (&optional todo-only match view-buffer-name)
"Prompt for colon-separated Org tags and display matching HyWiki page
sections.
@@ -1177,6 +1279,12 @@ Highlight/dehighlight HyWiki page names across all
frames on change."
;;; Public initializations
;;; ************************************************************************
+(eval-after-load "org-element"
+ '(advice-add 'org-element--generate-copy-script :before
#'hywiki-org-export-function))
+
+(eval-after-load "ox-publish"
+ '(add-to-list 'org-publish-project-alist hywiki-org-publish-project-alist t))
+
(add-variable-watcher 'hywiki-word-highlight-flag
'hywiki-word-highlight-flag-changed)
- [elpa] externals/hyperbole updated (ce1b5a3a34 -> 99cc9cbd75), ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 68b68ded5f 5/9: Merge pull request #568 from rswgnu/more-minor-cleanups, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole b10b0ac340 4/9: HyWiki - Publish a HyWiki to HTML: {M-x hywiki-publish-to-html RET}, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 4b80cd2a8a 2/9: Add keywords to remove warning for define-minor-mode, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 18ee38d930 7/9: Merge branch 'master' into rsw, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 99cc9cbd75 9/9: Merge pull request #569 from rswgnu/rsw,
ELPA Syncer <=
- [elpa] externals/hyperbole 0ed3e05a55 6/9: hywiki.el - Reduce sit-for to 0 just to trigger redisplay, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole b880132374 3/9: Shorten first line in docstrings to avoid 80 char warning, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 1908e42fc3 1/9: Add public declarations to remove warnings, ELPA Syncer, 2024/08/11
- [elpa] externals/hyperbole 185affeb56 8/9: hywiki.el - Change `hywiki-directory' to a defcustom, ELPA Syncer, 2024/08/11