1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
[[!meta title="Fun things With GNU Hyperbole"]]
[[!meta copyright="Copyright © 2024 Mats Lidell"]]
[[!inline pages="internal(2024/info/hyperbole-nav)" raw="yes"]]
<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->
# Fun things With GNU Hyperbole
@matsl@mastodon.acc.sunet.se, <mailto:matsl@gnu.org>
[[!inline pages="internal(2024/info/hyperbole-before)" raw="yes"]]
This talk will focus on a few small fun things you can do with Hyperbole
with less focus on going into details.
GNU Hyperbole is described as the Everyday Hypertextual
Information Manager which point in the direction of hypertext with
some inter linkage. It has all that but it also contains other
small and useful things. This talk will focus on the other
supported features and demo a sample of them.
About the speaker:
I'm Mats Lidell. Co-maintainer of GNU Hyperbole together with the
author Bob Weiner.
See also:
- [EmacsConf - 2023 - talks - What I learned by writing test cases for GNU Hyperbole](https://emacsconf.org/2023/talks/test)
- [[!taglink CategoryHyperbole]]
# Discussion
## Questions and answers
- Q: \<edrx\> Hey, how is the log buffer generated?
- A: interaction-log package
- Q:\<Donovan\> So , the "select a thing" C-c RET is similar to
expand-region? How does it behave in codes (functions, class,\...)
- A: Behaves exactly the same.
- Q:I know you Hyperbole devs are active and interested in sharing and
interoperating with other emacs tools. What is a recent tool that
you find exciting to think about using in combination with
Hyperbole, or would like to suggest using in combination with it?
- A: Lately, focussing on making Hyperbole work with org-mode so
that they may interoperate.
- The idea with Hyperbole is not to be better than everything
else, but to be a connector between the different modes.
- ace-window is a small, great package that selects windows or
displays a buffer in them. Hyperbole extends this a bit letting
you theow a region or buffer to a window or replace its contents
with another buffer. This is documented in the Hyperbole
manual.
- \<ElfOfPi\> There's also C-@ (mark-org-subtree) which
interferes with Hyperbole
- Can you explain how it interferes? Any conflict would
likely be a bug, not an incompatibility.
- Sometimes, it does clash with other modes, especially M-RET.
- Q: Hi Mats! Can I ask you a technical question about Hyperbole? Many
years ago I tried to learn hyperbole but I gave up after some
time\... I remember that I found the code of the dispatcher very
hard to understand. Anyway, here is the question: if I type M-RET on
this button - {C-h h d d} - Hyperbole detects the extent of the
button and the kind of the button, and at some point it probably
calls a Lisp function with the argument "C-h h d d", and that
function makes emacs behave as if the user had typed C-h h d d. Do
you know what function is that?
- A:See the defib of kbd-key in the hib-kbd.el file. That is an
implicit button type defined via defib which invokes an action
type of the same name defined with defact. Just read the code
and you'll see how it works.
## Notes
- \<alzai\> Hyperbole looks like an incredible tool but I can't quite
seem to get it. These examples make me want to try again though :)
- Same here, I actually leave it in the background and hit M-RET
from time to time :D
- \<ElephantErgo\> "take away your freedom" 🤔 "ta bort din
frihet" 🙁
- \<sleep_walker\> nice talk! Hyperbole is in my TODO list for some
time already, I should bring it to the top\...
- \<maxxcan\> I think that Hyperbole is a little diamon inside Emacas
- \<NullNix\> ditto! it seems a wonderful grab-bag of random nifty
stuff :)
- \<gs-101\> alzai: I always viewed it as this mysterious tool. Some
users recommend it but there's no simple overview of it. But I'd
say this was one.
- \<edrx\> gs-101: for me one of the problems with hyperbole is
the lack of examples in the documentation
- We have written multiple example use files included in
Hyperbole, a full Texinfo manual and a number of videos but
maybe we should add a step-by-step how to use it for new users.
- \* NullNix suspects hyperbole window configs and winner window
configs might be\... confusing if used together :) \[11:47\]
- \<jrootabega\> Maybe it could be jokingly summarized as
do-everything-at-point
- \<sleep_walker\> well, I got lost around several types of buttons -
cheatsheet would be huge help for jumping in
- \[re transient discussion\]: \<gs-101\> Very excited for the Org
move to transient.
- sachac: In the org-update talk, Ihor mentioned wanting to move some
more of the Org functionality into libraries that other packages
could take advantage of, so it might be interesting to see what
might be good to share with each other.
- Could this be akin to refactoring useful features from emacs
packages into emacs itself, especially if that feature is widely
used and useful across many packages.
- \<robin\> one of those legendary packages i've just never quite
gotten around to learning
[[!inline pages="internal(2024/info/hyperbole-after)" raw="yes"]]
[[!inline pages="internal(2024/info/hyperbole-nav)" raw="yes"]]
|