Skip to content

Commit 01569bd

Browse files
committed
GNU Hyperbole 8.0.0 Pre-release
1 parent 305858f commit 01569bd

17 files changed

+602
-799
lines changed

ChangeLog

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
2021-05-02 Bob Weiner <[email protected]>
2+
3+
* Update release number to 8.0.0pre (pre-release) as not all the
4+
documentation is finished yet.
5+
6+
* INSTALL:
7+
man/hyperbole.texi: Made Installation subsections for Stable Release
8+
Installation and Git Pre-release Installation with the Straight
9+
package manager.
10+
11+
* hmouse-tag.el (smart-tags-display): Fix to never prompt for a tag
12+
table if none are found from automatic searches. This prevents
13+
prompting when the Action Key is pressed on a potential identifier
14+
that could be anything.
15+
116
2021-05-02 Mats Lidell <[email protected]>
217

318
* hui-em-but.el (hbut-face): Add face for hbuts.
@@ -1033,7 +1048,7 @@ absolute paths.
10331048
Makefile (EL_COMPILE, ELC_COMPILE): Added hib-org.el{c}.
10341049

10351050
==============================================================================
1036-
V7.1.4 changes ^^^^:
1051+
V8.0.0 changes ^^^^:
10371052
==============================================================================
10381053

10391054
2020-09-21 Bob Weiner <[email protected]>

HY-ABOUT

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Designed and Written by Bob Weiner
44
Maintained by Mats Lidell and Bob Weiner
55
https://www.gnu.org/software/hyperbole/
6-
Version 7.1.4
6+
Version 8.0.0
77

88
Say thanks or send a testimonial if you like Hyperbole:
99

HY-NEWS

Lines changed: 29 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,20 @@
22
by Bob Weiner
33

44
===========================================================================
5-
* V7.1.4
5+
* V8.0.0
66
===========================================================================
77

8+
HYPERBOLE SYSTEM
9+
10+
- Hyperbole is now a global minor mode that can be toggled with
11+
{M-x hyperbole-mode RET}, meaning all of its key bindings can
12+
easily be enabled or disabled whenever desired. Your init file
13+
needs to have (hyperbole-mode 1) in it instead of
14+
(require 'hyperbole) or Hyperbole will not be enabled upon startup.
15+
16+
In the modeline where minor modes are shown, "Hypb" now appears
17+
whenever Hyperbole is active.
18+
819
PROGRAMMING
920

1021
- Simple Action Link Button Type Creation: `defal' is a new,
@@ -97,11 +108,6 @@
97108
handles single line log entries that begin with the word 'commit' ,
98109
displaying their commits even from shell and compilation buffers.
99110

100-
- Org Mode: Lowered to near bottom implicit button priority so that all
101-
implicit button types will work in Org mode. Replaced 'inhibit-hsys-org'
102-
setting with 'hsys-org-enable-smart-keys'. See its documentation for
103-
details.
104-
105111
- Debugger Source: In Python tracebacks, may be on a line just below the
106112
source reference line so if not on a Hyperbole button, move back a line
107113
before checking.
@@ -115,12 +121,23 @@
115121

116122
ORG MODE
117123

124+
- M-RET: Reworked M-RET interface so can control how much or little of
125+
Hyperbole works in Org mode when Hyperbole minor mode is enabled.
126+
118127
- hsys-org-enable-smart-keys: New customization to replace 'inhibit-hsys-org'.
119128
This applies only in Org major/minor modes when hyperbole-mode is active.
120129
t means enable Smart Key support everywhere. The symbol, buttons, is the
121130
default; it means the Smart Keys are active only when point is within a
122131
Hyperbole button. A nil value means no Smart Key support so {M-RET} behaves
123-
just as it does normally in Org mode.
132+
just as it does normally in Org mode. This table summarizes the operation:
133+
134+
|--------------+-------------------+------------------+----------+------------------|
135+
| Set To | Smart Key Context | Hyperbole Button | Org Link | Fallback Command |
136+
|--------------+-------------------+------------------+----------+------------------|
137+
| buttons | Ignore | Activate | Activate | org-meta-return |
138+
| nil | Ignore | Ignore | Ignore | org-meta-return |
139+
| t | Activate | Activate | Activate | None |
140+
|--------------+-------------------+------------------+----------+------------------|
124141

125142
ACE WINDOW PACKAGE INTEGRATION - fast window and buffer switching
126143

@@ -135,12 +152,11 @@
135152

136153
TEST CASES
137154

138-
- Hyperbole Automated Testing: Git-based distributions of Hyperbole now
139-
include a test subdirectory with many tests of hyperbole's button
140-
types. Simply run 'make test' or 'make test-all' from the command-line
141-
when in the Hyperbole source directory and you should see all tests
142-
pass. If any fail, you can press the Action Key to see the source of
143-
the failure.
155+
- Hyperbole Automated Testing: Hyperbole now includes over 130 test cases
156+
in the test/ subdirectory. Simply run 'make test' or 'make test-all'
157+
from the command-line when in the Hyperbole source directory and you
158+
should see all tests pass. If any fail, you can press the Action Key
159+
to see the source of the failure.
144160

145161
- Defal implicit buttons hypb-ert-sym and hypb-ert-sel: For running
146162
hyperbole ert test from hyperbole source files.

INSTALL

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
There are multiple package managers you can use to install Hyperbole once
1919
you have GNU Emacs set up at your site.
2020

21-
** The built-in Emacs package manager
21+
** The Built-in Emacs Package Manager
2222

2323
The Emacs Package Manager installs the latest stable version release
2424
of GNU Hyperbole. If you are not familiar with it, see the Packages
@@ -46,14 +46,42 @@ Below are the lines to add:
4646
(package-install 'hyperbole))
4747
(hyperbole-mode 1)
4848

49-
----
50-
5149
Now save the file and then restart Emacs. Hyperbole will then be
5250
downloaded and compiled for use with your version of Emacs; give it a
5351
minute or two. You may see a bunch of compilation warnings but these
5452
can be safely ignored.
5553

56-
**
54+
55+
** The Straight Package Manager (direct from Git Sources)
56+
57+
If you prefer to track Hyperbole development between releases and like to try out new features
58+
still in testing, then use the Straight package manager instead of the above, which pulls the
59+
latest Hyperbole source code from its git repository. This also gives you a cleaner installation
60+
process without showing you any byte compilation warnings.
61+
62+
;; Use this in your Emacs init file to install Straight
63+
(progn
64+
(defvar bootstrap-version)
65+
(setq package-enable-at-startup nil)
66+
(let ((bootstrap-file
67+
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
68+
(bootstrap-version 5))
69+
(unless (file-exists-p bootstrap-file)
70+
(with-current-buffer
71+
(url-retrieve-synchronously
72+
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
73+
'silent 'inhibit-cookies)
74+
(goto-char (point-max))
75+
(eval-print-last-sexp)))
76+
(load bootstrap-file nil 'nomessage)))
77+
78+
;; Then use this to install Hyperbole
79+
(straight-use-package
80+
'(hyperbole
81+
:host nil
82+
:repo "https://git.savannah.gnu.org/git/hyperbole.git"
83+
:config (hyperbole-mode 1)))
84+
5785

5886
===========================================================================
5987
* Browsing the Source

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363

6464
# This ver setup won't work under any make except GNU make, so set it manually.
6565
#HYPB_VERSION = "`head -3 hversion.el | tail -1 | sed -e 's/.*|\(.*\)|.*/\1/'`"
66-
HYPB_VERSION = 7.1.4
66+
HYPB_VERSION = 8.0.0
6767

6868
# Emacs executable used to byte-compile .el files into .elc's.
6969
# Possibilities include: emacs, infodock, etc.

README

Lines changed: 45 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#
55
# Orig-Date: 19-Oct-91 at 03:27:47
66
#
7-
# Copyright (C) 1989-2016 Free Software Foundation, Inc.
7+
# Copyright (C) 1989-2021 Free Software Foundation, Inc.
88
# See the "HY-COPY" file for license information.
99
#
1010
# This file is part of GNU Hyperbole.
@@ -26,14 +26,50 @@ written by Bob Weiner. It is maintained by him and Mats Lidell.
2626
* Summary
2727
===========================================================================
2828

29-
GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is an
30-
easy-to-use, yet powerful and programmable hypertextual information
31-
management system implemented as a GNU Emacs package. It offers rapid views
32-
and interlinking of all kinds of textual information, utilizing Emacs for
33-
editing. It can dramatically increase your productivity and greatly reduce
34-
the number of keyboard/mouse keys you'll need to work efficiently.
35-
36-
Hyperbole lets you:
29+
GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is like
30+
Markdown for hypertext. Hyperbole automatically recognizes dozens of
31+
common, pre-existing patterns in any buffer regardless of mode and can
32+
instantly activate them as hyperbuttons with a single key: email addresses,
33+
URLs, grep -n outputs, programming backtraces, sequences of Emacs keys,
34+
programming identifiers, Texinfo and Info cross-references, Org links,
35+
Markdown links and on and on. All you do is load Hyperbole and then your
36+
text comes to life with no extra effort or complex formatting.
37+
38+
Hyperbole includes easy-to-use, powerful hypertextual button types without
39+
the need to learn a markup language. Hyperbole's button types are written
40+
in Lisp and can be wholly independent of the web, i.e. web links are one
41+
type of Hyperbole link, not fundamental to its link architecture. However,
42+
Hyperbole is a great assistant when editing HTML or Javascript or when
43+
browsing web pages and links.
44+
45+
Hyperbole comes pre-built with most of the implicit button types you will
46+
need but with a little extra effort and a few lines of code (or even just a
47+
few words), you can define your own implicit button types to recognize your
48+
specific buttons and then activate them anywhere in Emacs. You press a
49+
single key, {M-RET} by default, on any kind of Hyperbole button to activate
50+
it, so you can rely on your muscle memory and let the computer do the hard
51+
work of figuring out what to do. {C-u M-RET} shows you what any button will
52+
do in any context before you activate it, so you can always be sure of what
53+
you are doing when needed or if some emails you a button (you can do that
54+
too).
55+
56+
Hyperbole is something to be experienced and interacted with, not understood
57+
from reading alone. It installs normally as a single Emacs package with no
58+
dependencies outside of standard Emacs libraries. Most of Hyperbole is a
59+
single global minor mode that you can activate and deactivate at will. And
60+
it can be uninstalled quickly as well if need be, so there is no risk to
61+
giving it a spin.
62+
63+
Once you have it installed and activated {C-u M-x hyperbole-mode RET}, try
64+
the interactive demo with {C-h h d d}. In fact, if you have Hyperbole
65+
loaded, you can press {M-RET} inside any of the brace delimited series of
66+
keys you see in this document and it will execute them on-the-fly (easy
67+
keyboard-macro style buttons in any text).
68+
69+
Hyperbole can dramatically increase your productivity and greatly reduce the
70+
number of keyboard/mouse keys you'll need to work efficiently.
71+
72+
In short, Hyperbole lets you:
3773

3874
1. Quickly create hyperlink buttons either from the keyboard or by dragging
3975
between a source and destination window with a mouse button depressed.

0 commit comments

Comments
 (0)