summaryrefslogtreecommitdiffstats
path: root/2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperb...
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2025-12-18 20:22:40 -0500
committerSacha Chua <sacha@sachachua.com>2025-12-18 20:22:40 -0500
commite9ff894e5be4c25d20a6c9df8b9b399280418293 (patch)
tree2f2f56b6a8a753945bdbbed2064f570c7da99bd3 /2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperbole--bob-weiner--main.vtt
parenteec65463925fc48780f115e32e14f5cceebfeeee (diff)
downloademacsconf-wiki-e9ff894e5be4c25d20a6c9df8b9b399280418293.tar.xz
emacsconf-wiki-e9ff894e5be4c25d20a6c9df8b9b399280418293.zip
updatesHEADmaster
Diffstat (limited to '')
-rw-r--r--2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperbole--bob-weiner--main.vtt2203
1 files changed, 2203 insertions, 0 deletions
diff --git a/2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperbole--bob-weiner--main.vtt b/2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperbole--bob-weiner--main.vtt
new file mode 100644
index 00000000..d20eabe4
--- /dev/null
+++ b/2025/captions/emacsconf-2025-hyperboleqa--questions-and-answers-to-help-you-fly-with-hyperbole--bob-weiner--main.vtt
@@ -0,0 +1,2203 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:12.239
+All right, you're good to go. Are people here?
+
+00:00:12.240 --> 00:00:15.639
+Let me read the first question to you since I'm here.
+
+00:00:15.640 --> 00:00:17.639
+The first question here is,
+
+00:00:17.640 --> 00:00:20.599
+I'm excited to know opinion and current state
+
+00:00:20.600 --> 00:00:23.799
+of using NCP and AI for PKMs and PIEs.
+
+00:00:23.800 --> 00:00:28.639
+Since they do carry a lot of burden out of us, it means a lot of process.
+
+00:00:28.640 --> 00:00:33.439
+How does our pipeline stand with the coming days?
+
+00:00:33.440 --> 00:00:35.119
+Thanks for the question.
+
+00:00:35.120 --> 00:00:40.239
+AI is obviously on everybody's mind.
+
+00:00:40.240 --> 00:00:43.719
+We haven't done a lot of integration
+
+00:00:43.720 --> 00:00:47.199
+with any of the popular AI engines,
+
+00:00:47.200 --> 00:00:50.519
+but I think as you'll see through this Q&A session,
+
+00:00:50.520 --> 00:00:54.559
+Hyperbole's function is really to interlink
+
+00:00:54.560 --> 00:00:57.959
+your information everywhere throughout Emacs.
+
+00:00:57.960 --> 00:01:02.279
+And so, whether you're using a chatbot
+
+00:01:02.280 --> 00:01:04.919
+in a specific buffer,
+
+00:01:04.920 --> 00:01:11.359
+you can use hyperbole implicit links, implicit buttons
+
+00:01:11.360 --> 00:01:17.039
+to activate different actions there as well.
+
+00:01:17.040 --> 00:01:20.399
+So sometimes it takes a bit of customization,
+
+00:01:20.400 --> 00:01:25.999
+a small amount of two to seven lines of code to do that.
+
+00:01:26.000 --> 00:01:30.839
+As we get to working with more of these engines,
+
+00:01:30.840 --> 00:01:34.119
+we'll build that into the core part of Hyperbole.
+
+00:01:34.120 --> 00:01:40.039
+But right now, that's left as an extension
+
+00:01:40.040 --> 00:01:43.359
+for users who are heavily using MCP
+
+00:01:43.360 --> 00:01:45.879
+or other protocols right now.
+
+00:01:45.880 --> 00:01:50.239
+We have, for example, integrated
+
+00:01:50.240 --> 00:01:57.559
+with LSPs, you know, for coding and have that interface through xref
+
+00:01:57.560 --> 00:02:01.199
+and basically using the single key, the action key,
+
+00:02:01.200 --> 00:02:02.719
+which is made a return.
+
+00:02:02.720 --> 00:02:08.919
+You can jump around to any of your source definitions
+
+00:02:08.920 --> 00:02:10.999
+from any reference in almost any language
+
+00:02:11.000 --> 00:02:14.599
+that anybody uses today. So you can extrapolate from that
+
+00:02:14.600 --> 00:02:17.119
+how that might work with AI as well.
+
+00:02:17.120 --> 00:02:22.999
+And I think you'll see later when we talk about HiWiki
+
+00:02:23.000 --> 00:02:26.719
+that we're now enabling just just wiki words
+
+00:02:26.720 --> 00:02:30.079
+to be buttons in hyperbole.
+
+00:02:30.080 --> 00:02:33.999
+So those could be part of your chat with an AI
+
+00:02:34.000 --> 00:02:37.519
+and you just click on it and you jump right to all your references
+
+00:02:37.520 --> 00:02:49.119
+associated with that terminology. Thanks for the question.
+
+00:02:49.120 --> 00:02:51.839
+Should I just go through the second question?
+
+00:02:51.840 --> 00:02:54.199
+I thought people would be glad.
+
+00:02:54.200 --> 00:02:56.559
+As a normal user who codes and takes notes,
+
+00:02:56.560 --> 00:02:58.759
+I really want to deep dive and learn Hyperbole,
+
+00:02:58.760 --> 00:03:02.079
+but always end up winding back up to Embark
+
+00:03:02.080 --> 00:03:04.399
+and Org Mode being the better system.
+
+00:03:04.400 --> 00:03:06.479
+For me, Hyperbole looks over engineering
+
+00:03:06.480 --> 00:03:08.079
+or over the peer system,
+
+00:03:08.080 --> 00:03:10.119
+which other individual packages do well.
+
+00:03:10.120 --> 00:03:15.399
+And outside DMAC, there's no system supporting Hyperbole or any usability.
+
+00:03:15.400 --> 00:03:17.519
+And I think you've cited answering
+
+00:03:17.520 --> 00:03:21.159
+that already, so go ahead.
+
+00:03:21.160 --> 00:03:26.919
+Right, hyperbole is large, but there's reasons behind that.
+
+00:03:26.920 --> 00:03:30.599
+We're just trying to link all your information in Emacs.
+
+00:03:30.600 --> 00:03:38.079
+So I think you can see my screen here in Emacs.
+
+00:03:38.080 --> 00:03:45.439
+So for example, you can take any Lisp expression,
+
+00:03:45.440 --> 00:03:49.239
+even a variable like here we have in hyperbole
+
+00:03:49.240 --> 00:03:50.959
+Hyperbdur variable
+
+00:03:50.960 --> 00:03:53.519
+and I just hit the action key made a return
+
+00:03:53.520 --> 00:03:57.759
+and in my mini buffer I see the value of that variable,
+
+00:03:57.760 --> 00:04:01.599
+but I could just as well take any other expression
+
+00:04:01.600 --> 00:04:03.919
+and take the outer parens off
+
+00:04:03.920 --> 00:04:05.679
+and change them to angle brackets
+
+00:04:05.680 --> 00:04:08.239
+and now that's a live Hyper button
+
+00:04:08.240 --> 00:04:12.079
+could be in a comment in a programming buffer in this case.
+
+00:04:12.080 --> 00:04:15.679
+It's in K outliner buffer,
+
+00:04:15.680 --> 00:04:19.159
+which is a an auto-numbered outliner part of hyperbole.
+
+00:04:19.160 --> 00:04:23.599
+So let's just try this and say made a return.
+
+00:04:23.600 --> 00:04:28.719
+I pressed and it ran occur and found all the occurrences of buttons.
+
+00:04:28.720 --> 00:04:31.919
+And similarly in here, I could just jump and go
+
+00:04:31.920 --> 00:04:35.519
+to any of these lines directly
+
+00:04:35.520 --> 00:04:37.919
+by hitting made a return in that buffer as well.
+
+00:04:37.920 --> 00:04:39.799
+So all your text, all your sort
+
+00:04:39.800 --> 00:04:44.879
+of what we call implicit links become live and hyperbole.
+
+00:04:44.880 --> 00:04:46.519
+And you didn't have to learn much.
+
+00:04:46.520 --> 00:04:48.559
+You just learn, you know, if you know a little Lisp
+
+00:04:48.560 --> 00:04:50.279
+or how to type any expression,
+
+00:04:50.280 --> 00:04:52.879
+then you just change the outer brackets.
+
+00:04:52.880 --> 00:04:55.079
+And all of a sudden, you have hyperbuttons.
+
+00:04:55.080 --> 00:05:01.079
+So hyperbole, you can learn a little bit at a time.
+
+00:05:01.080 --> 00:05:04.479
+And although it seems daunting at first
+
+00:05:04.480 --> 00:05:06.879
+because it has so much functionality,
+
+00:05:06.880 --> 00:05:09.679
+very large and rich architecture.
+
+00:05:09.680 --> 00:05:13.639
+But what we do is teach people one piece at a time.
+
+00:05:13.640 --> 00:05:17.919
+So just to continue on that a little bit,
+
+00:05:17.920 --> 00:05:19.639
+implicit buttons are buttons
+
+00:05:19.640 --> 00:05:23.359
+that exist just from the text pattern in the buffer.
+
+00:05:23.360 --> 00:05:28.279
+So you saw an example of changing Lisp into implicit buttons right there.
+
+00:05:28.280 --> 00:05:30.959
+I could do keystrokes.
+
+00:05:30.960 --> 00:05:33.119
+I can just type them out in my buffer
+
+00:05:33.120 --> 00:05:34.879
+and surround them with braces.
+
+00:05:34.880 --> 00:05:37.439
+So here's something, let's see,
+
+00:05:37.440 --> 00:05:41.079
+this is actually a command in the K Outliner
+
+00:05:41.080 --> 00:05:45.799
+to jump to the cell numbered four. So let's just do that.
+
+00:05:45.800 --> 00:05:47.599
+And it took me right there, right?
+
+00:05:47.600 --> 00:05:51.759
+So I'm just pressing made a return to activate these buttons.
+
+00:05:51.760 --> 00:05:56.279
+Similarly, any sort of, this is a complex example,
+
+00:05:56.280 --> 00:05:59.479
+but any path name I can surround with double quotes,
+
+00:05:59.480 --> 00:06:01.079
+and it's a live hyper button.
+
+00:06:01.080 --> 00:06:05.479
+In this case, I want to jump to a path name called readme.md,
+
+00:06:05.480 --> 00:06:08.359
+but it's in a directory that's specified
+
+00:06:08.360 --> 00:06:13.519
+by an actual list variable. And then I want to go directly
+
+00:06:13.520 --> 00:06:17.479
+to a headline within that file called hyperbole manual.
+
+00:06:17.480 --> 00:06:19.759
+And within that headline, I wanna go
+
+00:06:19.760 --> 00:06:22.719
+to the eighth line relative to that.
+
+00:06:22.720 --> 00:06:24.879
+So all I have to do, made a return again,
+
+00:06:24.880 --> 00:06:28.959
+and boom, I'm in that, I'm directly linked to that.
+
+00:06:28.960 --> 00:06:33.799
+And Hyperbole has ways that you can just split your windows like this
+
+00:06:33.800 --> 00:06:38.079
+and create that reference in the source buffer right there.
+
+00:06:38.080 --> 00:06:41.999
+You just press a few keys and it'll embed that link.
+
+00:06:42.000 --> 00:06:43.839
+We'll see that a little later.
+
+00:06:43.840 --> 00:06:47.319
+Another example, so all of these buttons,
+
+00:06:47.320 --> 00:06:49.599
+if I just show you here,
+
+00:06:49.600 --> 00:06:52.279
+you can press Control-H, Capital-A anytime.
+
+00:06:52.280 --> 00:06:54.319
+and it will show you exactly
+
+00:06:54.320 --> 00:06:56.559
+what made a return will do in that context.
+
+00:06:56.560 --> 00:06:59.479
+In this case, it's an implicit button,
+
+00:06:59.480 --> 00:07:03.119
+and it shows you even where the button starts and ends,
+
+00:07:03.120 --> 00:07:06.679
+what type of action it will run,
+
+00:07:06.680 --> 00:07:08.039
+it's a link to a file line,
+
+00:07:08.040 --> 00:07:09.999
+and then what arguments it takes.
+
+00:07:10.000 --> 00:07:13.999
+So Hyperbole extracts all this meta information
+
+00:07:14.000 --> 00:07:16.679
+just from the text in your buffer
+
+00:07:16.680 --> 00:07:19.119
+and displays it to you conveniently
+
+00:07:19.120 --> 00:07:22.319
+so you can know before you ever touch a hyper button
+
+00:07:22.320 --> 00:07:24.479
+if it will do something that you want it to do.
+
+00:07:24.480 --> 00:07:28.559
+Here we have a fairly advanced button
+
+00:07:28.560 --> 00:07:31.519
+that's very simple to do. You just specify a bug in Emacs
+
+00:07:31.520 --> 00:07:34.279
+that you want to reference to.
+
+00:07:34.280 --> 00:07:40.039
+Notice no delimiters, just bug pound, whatever, made a return.
+
+00:07:40.040 --> 00:07:45.479
+And I'm in GNU's reading the conversation for that bug.
+
+00:07:45.480 --> 00:07:48.719
+And I can just, you know, move
+
+00:07:48.720 --> 00:07:50.919
+through all the conversation.
+
+00:07:50.920 --> 00:07:56.039
+I can quit out of there and go back to where I was.
+
+00:07:56.040 --> 00:07:59.599
+So very, very easy to use these implicit buttons
+
+00:07:59.600 --> 00:08:00.879
+because they're already there
+
+00:08:00.880 --> 00:08:03.679
+throughout your Emacs buffers.
+
+00:08:03.680 --> 00:08:06.119
+I described the control HA, what that does.
+
+00:08:06.120 --> 00:08:09.359
+And there's other types of buttons
+
+00:08:09.360 --> 00:08:11.559
+that we can get into as questions go on,
+
+00:08:11.560 --> 00:08:14.719
+but you can create your own explicit buttons
+
+00:08:14.720 --> 00:08:18.719
+that have a little slightly different delimiter than you see
+
+00:08:18.720 --> 00:08:19.799
+in the implicit buttons.
+
+00:08:19.800 --> 00:08:24.759
+And this one I just put in here to show you that
+
+00:08:24.760 --> 00:08:30.439
+If you use it and you go, this is the hyperbole to do list,
+
+00:08:30.440 --> 00:08:31.879
+which is an org buffer.
+
+00:08:31.880 --> 00:08:35.079
+But I wanted to show in here that similarly,
+
+00:08:35.080 --> 00:08:37.799
+we have implicit buttons for to do's in the work.
+
+00:08:37.800 --> 00:08:39.679
+And when we hit made a return,
+
+00:08:39.680 --> 00:08:42.679
+it just changes the state of that to do.
+
+00:08:42.680 --> 00:08:44.919
+And I can cycle through those
+
+00:08:44.920 --> 00:08:47.399
+but even better with the prefix argument
+
+00:08:47.400 --> 00:08:50.399
+if I have multiple sequences of to do's
+
+00:08:50.400 --> 00:08:53.519
+because there's Bob and Matt's that maintain hyperbole
+
+00:08:53.520 --> 00:08:55.999
+so I can shift to Bob's to do's
+
+00:08:56.000 --> 00:08:57.759
+with control you made a return
+
+00:08:57.760 --> 00:09:00.079
+and then cycle through the states for me
+
+00:09:00.080 --> 00:09:05.039
+So very very easy to use,
+
+00:09:05.040 --> 00:09:08.319
+you know something that's a little bit more difficult to do
+
+00:09:08.320 --> 00:09:16.239
+I think in org without it and So that's an explicit button
+
+00:09:16.240 --> 00:09:19.479
+where I had to actually say I want to create this button,
+
+00:09:19.480 --> 00:09:21.599
+and I had to specify what type it is.
+
+00:09:21.600 --> 00:09:23.759
+If I show you the information there again,
+
+00:09:23.760 --> 00:09:25.879
+you see it has a little different type
+
+00:09:25.880 --> 00:09:29.679
+called a keyboard key, which runs just the key sequence.
+
+00:09:29.680 --> 00:09:34.759
+So you're starting to see already
+
+00:09:34.760 --> 00:09:36.839
+that explicit buttons have a type
+
+00:09:36.840 --> 00:09:38.159
+that's connected to an action
+
+00:09:38.160 --> 00:09:41.199
+that an implicit button can do as well.
+
+00:09:41.200 --> 00:09:42.959
+So all of this ties back together.
+
+00:09:42.960 --> 00:09:47.079
+And finally, there's a homepage that Hyperbole has,
+
+00:09:47.080 --> 00:09:49.159
+a personal homepage that you have.
+
+00:09:49.160 --> 00:09:52.999
+You hit Control-H-H, which is our mini-buffer menu,
+
+00:09:53.000 --> 00:09:58.319
+and then you hit what is it, B for button file
+
+00:09:58.320 --> 00:10:01.439
+and then P for personal file.
+
+00:10:01.440 --> 00:10:05.239
+And that just brings you to basically a set of links
+
+00:10:05.240 --> 00:10:10.199
+that you can create buttons in any format you want.
+
+00:10:10.200 --> 00:10:12.479
+There's no structure that you see here.
+
+00:10:12.480 --> 00:10:18.759
+But the nice thing is that all of these buttons that have these names, as we call them,
+
+00:10:18.760 --> 00:10:20.279
+with the delimiters here,
+
+00:10:20.280 --> 00:10:23.799
+can be referenced now as what we call global buttons
+
+00:10:23.800 --> 00:10:28.239
+wherever you are in Emacs. So I'm in a separate buffer here
+
+00:10:28.240 --> 00:10:30.719
+and say I want to jump to that to-do button
+
+00:10:30.720 --> 00:10:33.279
+that's labeled TD on line 10 down there.
+
+00:10:33.280 --> 00:10:35.519
+No matter what I have on screen,
+
+00:10:35.520 --> 00:10:39.199
+I can hit control H, H, G for global button,
+
+00:10:39.200 --> 00:10:43.719
+A for activate, and then it gives me a list of those.
+
+00:10:43.720 --> 00:10:47.119
+So I know it's TD, I just put TD in.
+
+00:10:47.120 --> 00:10:52.159
+Okay, that's a path link problem I have,
+
+00:10:52.160 --> 00:10:56.359
+but when I fix the link, it would go to it.
+
+00:10:56.360 --> 00:10:58.239
+So you can create buttons
+
+00:10:58.240 --> 00:11:01.639
+that you can access in any mode, anywhere,
+
+00:11:01.640 --> 00:11:05.799
+and just give them quick names, and it's very easy.
+
+00:11:05.800 --> 00:11:08.559
+So that kind of gives you an idea
+
+00:11:08.560 --> 00:11:11.719
+of how you can get very productive
+
+00:11:11.720 --> 00:11:14.999
+with hyperbole with just a few simple techniques.
+
+00:11:15.000 --> 00:11:30.439
+You still there Sacha? Yep, I'm still here.
+
+00:11:30.440 --> 00:11:37.079
+I have too many tabs.
+
+00:11:37.080 --> 00:11:46.199
+So the question is, I've been using activities.el
+
+00:11:46.200 --> 00:11:48.879
+and bufferload to save dedicated workplaces,
+
+00:11:48.880 --> 00:11:52.159
+open buffers, and decisions in tabs and frames
+
+00:11:52.160 --> 00:11:54.599
+for tasks and projects across the next sessions.
+
+00:11:54.600 --> 00:12:00.119
+Can I do something similar with Hyper-V? Yes, you can.
+
+00:12:00.120 --> 00:12:03.719
+And activities is a nice package from alphapapa.
+
+00:12:03.720 --> 00:12:07.399
+We've actually been working with it lately.
+
+00:12:07.400 --> 00:12:11.159
+So we're probably in the next month or so
+
+00:12:11.160 --> 00:12:13.479
+we'll have a specific integration
+
+00:12:13.480 --> 00:12:15.999
+to activities built into Hyperbole.
+
+00:12:16.000 --> 00:12:21.519
+But right now, we don't. But of course, you can call
+
+00:12:21.520 --> 00:12:23.279
+any of its functions or key bindings
+
+00:12:23.280 --> 00:12:26.079
+using the techniques that I just showed you earlier.
+
+00:12:26.080 --> 00:12:33.599
+But what we do have built in if you go to the menu again.
+
+00:12:33.600 --> 00:12:35.959
+and you see control HH,
+
+00:12:35.960 --> 00:12:43.039
+and then there's a W, Windows, WinConfig menu,
+
+00:12:43.040 --> 00:12:48.399
+and there's two types of window configurations that you can save here.
+
+00:12:48.400 --> 00:12:52.599
+They are, right now, they're per Emacs session.
+
+00:12:52.600 --> 00:12:55.759
+They're not stored beyond that,
+
+00:12:55.760 --> 00:12:58.519
+but we'll probably add that in as well,
+
+00:12:58.520 --> 00:12:59.879
+or we'll use activities for that.
+
+00:12:59.880 --> 00:13:07.199
+so the two types are you can either just save a window configuration in a frame
+
+00:13:07.200 --> 00:13:10.319
+to actually it stores the frame configuration
+
+00:13:10.320 --> 00:13:13.359
+to a ring just like the kill ring
+
+00:13:13.360 --> 00:13:16.119
+so you have the three commands at the right
+
+00:13:16.120 --> 00:13:21.239
+you can save with an s you can pop one off the ring with p
+
+00:13:21.240 --> 00:13:25.959
+or you can just yank and keep cycling through with a y
+
+00:13:25.960 --> 00:13:31.119
+and it will restore the frame configuration that you saved.
+
+00:13:31.120 --> 00:13:35.079
+Similarly you can just do it by name
+
+00:13:35.080 --> 00:13:36.839
+and you can say I want to add a name
+
+00:13:36.840 --> 00:13:45.799
+and then you know just give it a name again win win C and store it and it stores it there
+
+00:13:45.800 --> 00:13:48.559
+and then you can get back to it by name as well.
+
+00:13:48.560 --> 00:13:51.319
+So fairly fairly easy to use as well
+
+00:13:51.320 --> 00:13:54.999
+and again integrated in the same simple menu system.
+
+00:13:55.000 --> 00:13:57.079
+So thanks for that question.
+
+00:13:57.080 --> 00:14:07.119
+Should I just go to the next question?
+
+00:14:07.120 --> 00:14:10.079
+How well do hyperbole and org mode work together?
+
+00:14:10.080 --> 00:14:12.759
+Is there any kind of integration?
+
+00:14:12.760 --> 00:14:18.079
+Yes, in fact, that's really good.
+
+00:14:18.080 --> 00:14:22.359
+I'll just mention something. Let me go back to my homepage.
+
+00:14:22.360 --> 00:14:26.679
+I just stored that here. So we gave a talk at an earlier
+
+00:14:26.680 --> 00:14:31.559
+Emacs conference right here on org
+
+00:14:31.560 --> 00:14:33.199
+and hyperbole integration.
+
+00:14:33.200 --> 00:14:35.919
+So that's a good one to go back to.
+
+00:14:35.920 --> 00:14:39.479
+And I believe it's in this files
+
+00:14:39.480 --> 00:14:41.599
+included with hyperbole as well.
+
+00:14:41.600 --> 00:14:45.079
+So you can learn various techniques
+
+00:14:45.080 --> 00:14:48.199
+of how the action key helps you in org.
+
+00:14:48.200 --> 00:14:51.679
+It does special things in tables.
+
+00:14:51.680 --> 00:15:00.239
+And there's some nice support for, for example, working with code blocks.
+
+00:15:00.240 --> 00:15:02.639
+Let me see where that is. Okay, so right back here.
+
+00:15:02.640 --> 00:15:09.759
+So you can run them with the action key.
+
+00:15:09.760 --> 00:15:15.039
+You can refresh the output and do things like that.
+
+00:15:15.040 --> 00:15:17.559
+So again, if I just hit Control-H-A,
+
+00:15:17.560 --> 00:15:20.439
+it'll tell me that it's in SmartOrg,
+
+00:15:20.440 --> 00:15:24.359
+and it'll give me all the different contexts that that operates within.
+
+00:15:24.360 --> 00:15:26.559
+So there's a lot that it does in here.
+
+00:15:26.560 --> 00:15:30.479
+And you can see it would point on the dir value of a code block definition
+
+00:15:30.480 --> 00:15:33.559
+that will actually display a summary
+
+00:15:33.560 --> 00:15:35.199
+and all sorts of functionality.
+
+00:15:35.200 --> 00:15:37.439
+So the integration is quite tight.
+
+00:15:37.440 --> 00:15:39.679
+And one of the things we do
+
+00:15:39.680 --> 00:15:41.799
+since made return is used in org,
+
+00:15:41.800 --> 00:15:44.719
+we have a customization setting, C even O.
+
+00:15:44.720 --> 00:15:48.239
+And you have these three settings where you can say,
+
+00:15:48.240 --> 00:15:53.359
+I want me to return to, I want hyperbole to control that
+
+00:15:53.360 --> 00:15:57.279
+and everything that the action key does I want to happen.
+
+00:15:57.280 --> 00:16:00.479
+Or I only want hyperbole to control
+
+00:16:00.480 --> 00:16:03.239
+when I'm over a hyperbole implicit explicit button.
+
+00:16:03.240 --> 00:16:09.159
+Or I want org to control that key and never use hyperbole.
+
+00:16:09.160 --> 00:16:10.799
+So you just set that once,
+
+00:16:10.800 --> 00:16:13.919
+it's persistent across sessions and you're good to go.
+
+00:16:13.920 --> 00:16:16.399
+And again, it's built right into the menus.
+
+00:16:16.400 --> 00:16:23.919
+So but even following that we've the latest addition to hyperbole is Something
+
+00:16:23.920 --> 00:16:25.799
+and this is the first time
+
+00:16:25.800 --> 00:16:29.799
+we're really showing it publicly is the high wiki
+
+00:16:29.800 --> 00:16:33.559
+Which is a new subsystem as we call it
+
+00:16:33.560 --> 00:16:44.719
+and this is I think the best wiki capability in Emacs now what it does is it automatically highlights
+
+00:16:44.720 --> 00:16:48.119
+let me turn it on I have to turn on high wiki mode
+
+00:16:48.120 --> 00:16:54.679
+and you see those wiki words now got highlighted so any any wiki word
+
+00:16:54.680 --> 00:16:58.839
+which is the capitalized alpha word you know
+
+00:16:58.840 --> 00:17:01.439
+so you can have multiple capitals in there
+
+00:17:01.440 --> 00:17:06.039
+and I'll get recognized can be used as a wiki word
+
+00:17:06.040 --> 00:17:09.519
+so for example when I just type hi wiki here
+
+00:17:09.520 --> 00:17:11.559
+it automatically recognizes it,
+
+00:17:11.560 --> 00:17:14.239
+and you see it turned it into a hyperlink button,
+
+00:17:14.240 --> 00:17:18.159
+which again, Control-H-A will tell me exactly what it does there.
+
+00:17:18.160 --> 00:17:23.119
+But I can just hit the action key, made a return,
+
+00:17:23.120 --> 00:17:26.879
+and it'll display my hiwiki.org file.
+
+00:17:26.880 --> 00:17:30.559
+All wiki pages are org files.
+
+00:17:30.560 --> 00:17:35.679
+So we're using that for the wikis, and you have
+
+00:17:35.680 --> 00:17:40.359
+You can export an entire wiki
+
+00:17:40.360 --> 00:17:43.159
+using essentially the org export capability
+
+00:17:43.160 --> 00:17:48.599
+With a little extra set of features that we've added in
+
+00:17:48.600 --> 00:17:51.199
+but let's say even better you see
+
+00:17:51.200 --> 00:17:54.119
+I have this heading here so let me just change this
+
+00:17:54.120 --> 00:17:59.239
+you go back here and I'll say go to heading
+
+00:17:59.240 --> 00:18:01.039
+so you just put a pound on it
+
+00:18:01.040 --> 00:18:05.679
+and now that whole thing is a reference to a specific org section.
+
+00:18:05.680 --> 00:18:08.439
+Notice there's no org IDs here.
+
+00:18:08.440 --> 00:18:11.639
+There's nothing other than the text that you're seeing.
+
+00:18:11.640 --> 00:18:13.439
+There's not even a delimiter.
+
+00:18:13.440 --> 00:18:17.839
+So we have automatic implicit hyper buttons
+
+00:18:17.840 --> 00:18:20.679
+being added in any buffer.
+
+00:18:20.680 --> 00:18:23.959
+Could be a comment in a programming buffer with all you
+
+00:18:23.960 --> 00:18:26.599
+You don't have to add anything.
+
+00:18:26.600 --> 00:18:31.999
+I'll show you how to create a new page in a minute.
+
+00:18:32.000 --> 00:18:35.959
+But you see I can link to any org section without any IDs.
+
+00:18:35.960 --> 00:18:38.799
+And then I can also do like org-roam does,
+
+00:18:38.800 --> 00:18:42.039
+but without the indexing or database that it requires.
+
+00:18:42.040 --> 00:18:46.839
+I can scan over all of my wiki files and headings.
+
+00:18:46.840 --> 00:18:48.759
+find a match really quickly.
+
+00:18:48.760 --> 00:18:53.279
+So we can get into some of that a little later as well.
+
+00:18:53.280 --> 00:18:55.759
+But, you know, very convenient.
+
+00:18:55.760 --> 00:18:58.439
+There's nothing that you change on org to do this.
+
+00:18:58.440 --> 00:19:00.879
+So how do I create a wiki word?
+
+00:19:00.880 --> 00:19:07.359
+Well, let's say I wanted, you know, wiki word for me.
+
+00:19:07.360 --> 00:19:09.999
+So that's already, that was a wiki word,
+
+00:19:10.000 --> 00:19:12.959
+but now this is a new one. So you see it doesn't highlight
+
+00:19:12.960 --> 00:19:16.559
+because I haven't created a wiki page yet.
+
+00:19:16.560 --> 00:19:20.319
+So all I hit is the action key, and boom.
+
+00:19:20.320 --> 00:19:23.519
+Now it created it as a new wiki word.
+
+00:19:23.520 --> 00:19:24.879
+It created the .org file.
+
+00:19:24.880 --> 00:19:28.279
+If I don't edit this file, it won't save it,
+
+00:19:28.280 --> 00:19:32.359
+and it'll not become a word in case you made an accident.
+
+00:19:32.360 --> 00:19:34.319
+But let's just say I want to say it.
+
+00:19:34.320 --> 00:19:39.159
+So, you know, heading. That's it. I'm just in org mode.
+
+00:19:39.160 --> 00:19:42.879
+Now anytime that high wiki mode is active,
+
+00:19:42.880 --> 00:19:46.239
+in any buffer essentially,
+
+00:19:46.240 --> 00:19:50.279
+I can type that out and it'll recognize it.
+
+00:19:50.280 --> 00:19:53.039
+Notice so that's not a wiki word.
+
+00:19:53.040 --> 00:19:55.279
+So it's highlighting and it's unhighlighting
+
+00:19:55.280 --> 00:19:56.599
+right as I type.
+
+00:19:56.600 --> 00:20:03.199
+So, again, you can embed these as org links in org.
+
+00:20:03.200 --> 00:20:09.439
+There's a special format like this, HiWiki word
+
+00:20:09.440 --> 00:20:11.239
+that you can make an org link
+
+00:20:11.240 --> 00:20:13.479
+if I was in org mode, just like that.
+
+00:20:13.480 --> 00:20:16.599
+So there's all sorts of compatibility,
+
+00:20:16.600 --> 00:20:18.319
+but basically it's just words,
+
+00:20:18.320 --> 00:20:21.119
+and HiWiki takes care of the rest for you.
+
+00:20:21.120 --> 00:20:26.679
+So there's a directory where all these, it's HiWiki,
+
+00:20:26.680 --> 00:20:28.879
+hi wiki tilde slash
+
+00:20:28.880 --> 00:20:32.719
+hi wiki is the default place where all these would be found
+
+00:20:32.720 --> 00:20:36.359
+and there's a menu now in hyperbole for hi wiki h
+
+00:20:36.360 --> 00:20:40.639
+and you can see it has a lot of capabilities
+
+00:20:40.640 --> 00:20:44.359
+but i can say b go into the directory of all the files
+
+00:20:44.360 --> 00:20:47.799
+just pull them up and any of these you'll see
+
+00:20:47.800 --> 00:20:59.959
+let me give you one like this me okay so you can see the other wiki words being highlighted in here
+
+00:20:59.960 --> 00:21:04.039
+so it's very fast to this there's almost no delay for anything
+
+00:21:04.040 --> 00:21:14.679
+and yet very flexible and you have this ability you know where you could type emacs section dash 1 dash 2
+
+00:21:14.680 --> 00:21:16.759
+and If you didn't have delimiters around it,
+
+00:21:16.760 --> 00:21:18.479
+but you can put any delimiters
+
+00:21:18.480 --> 00:21:20.839
+like double quotes or parentheses,
+
+00:21:20.840 --> 00:21:25.159
+and then it'll match without you having to change the header at all
+
+00:21:25.160 --> 00:21:28.439
+with the spaces included and all of those.
+
+00:21:28.440 --> 00:21:31.919
+know will get recognized.
+
+00:21:31.920 --> 00:21:35.599
+I don't know if this if the section exists right there.
+
+00:21:35.600 --> 00:21:41.959
+So anyway a lot of capability you can see that here where I did the high
+
+00:21:41.960 --> 00:21:45.519
+it actually highlights as an org link
+
+00:21:45.520 --> 00:21:46.839
+because it is an org link
+
+00:21:46.840 --> 00:21:50.319
+and it'll operate just like any other org link
+
+00:21:50.320 --> 00:21:54.279
+even though it's a high wiki word link as well.
+
+00:21:54.280 --> 00:21:55.759
+So very powerful stuff
+
+00:21:55.760 --> 00:22:00.959
+and totally integrated with Org Mode throughout.
+
+00:22:00.960 --> 00:22:06.439
+Great. There's another question.
+
+00:22:06.440 --> 00:22:09.039
+Are there any talks from this year's Emacs Conf
+
+00:22:09.040 --> 00:22:12.599
+that discuss things that would work well with Hyperbole?
+
+00:22:12.600 --> 00:22:19.279
+No. Unfortunately, I had to work yesterday, so I haven't...
+
+00:22:19.280 --> 00:22:22.639
+been following the conference as much as I do.
+
+00:22:22.640 --> 00:22:25.559
+Maybe somebody else could comment on that.
+
+00:22:25.560 --> 00:22:29.519
+But I think, you know, again,
+
+00:22:29.520 --> 00:22:31.879
+it's like pick your favorite mode,
+
+00:22:31.880 --> 00:22:34.719
+pick your favorite type of information.
+
+00:22:34.720 --> 00:22:36.839
+Can I hyperbole work with that?
+
+00:22:36.840 --> 00:22:39.999
+You know, the answer is almost always yes.
+
+00:22:40.000 --> 00:22:44.959
+So, you know, if I show you just a little bit,
+
+00:22:44.960 --> 00:22:48.679
+if I show you some of these implicit button types,
+
+00:22:48.680 --> 00:22:53.359
+just so you know the amount of code
+
+00:22:53.360 --> 00:22:56.279
+involved to create a type.
+
+00:22:56.280 --> 00:22:59.679
+So here's like a male, recognizing
+
+00:22:59.680 --> 00:23:01.639
+an email address as a button.
+
+00:23:01.640 --> 00:23:05.519
+It's a little long so that it creates a lot of things
+
+00:23:05.520 --> 00:23:09.199
+but you know it's less than 15 lines of code for that.
+
+00:23:09.200 --> 00:23:12.199
+Path names are complicated so that's a longer one
+
+00:23:12.200 --> 00:23:18.799
+but let's look at so here's one recognizing a bibliography entry.
+
+00:23:18.800 --> 00:23:24.879
+So it can be between two and 20 lines of code
+
+00:23:24.880 --> 00:23:27.519
+to create an entirely new button type.
+
+00:23:27.520 --> 00:23:32.159
+And you create it once, and you just add it to the set of types,
+
+00:23:32.160 --> 00:23:35.479
+just like at the fun, except it's done with this macro
+
+00:23:35.480 --> 00:23:39.479
+called def, implicit button type, and defib.
+
+00:23:39.480 --> 00:23:45.559
+And it's part of your hyperlinking system forever then.
+
+00:23:45.560 --> 00:23:49.799
+So say you got dumped with 5,000 documents
+
+00:23:49.800 --> 00:23:51.519
+that were in this weird text format,
+
+00:23:51.520 --> 00:23:54.119
+and they all had cross-references among them,
+
+00:23:54.120 --> 00:23:56.792
+but it was, again, using a weird format.
+
+00:23:56.760 --> 00:23:59.919
+You could just write your own little type for that,
+
+00:23:59.920 --> 00:24:04.319
+and then those 5,000 documents are hyperlinked for you
+
+00:24:04.320 --> 00:24:08.759
+every time you're browsing them in Emacs automatically.
+
+00:24:08.760 --> 00:24:11.959
+So we do that all the time, create small things,
+
+00:24:11.960 --> 00:24:15.159
+but all of these are built into Hyperbole.
+
+00:24:15.160 --> 00:24:20.199
+Markdown links, tech info links, all of that's automatic.
+
+00:24:20.200 --> 00:24:26.199
+I could even be in a shell mode, and I just say ls,
+
+00:24:26.200 --> 00:24:30.519
+and these are hyperlinks that Hyperbole understands, right?
+
+00:24:30.520 --> 00:24:31.759
+It just jumps right to the file.
+
+00:24:31.760 --> 00:24:36.999
+So grep-n, You know, looking at any line numbers,
+
+00:24:37.000 --> 00:24:39.839
+you don't have to remember
+
+00:24:39.840 --> 00:24:41.959
+all these different commands anymore.
+
+00:24:41.960 --> 00:24:44.319
+You just hit made a return,
+
+00:24:44.320 --> 00:24:46.599
+and Hyperbole does the right thing
+
+00:24:46.600 --> 00:24:48.359
+in all these different contexts,
+
+00:24:48.360 --> 00:24:52.639
+including following cross-references in code.
+
+00:24:52.640 --> 00:24:56.079
+So I would say that's your answer.
+
+00:24:56.080 --> 00:24:58.399
+Most things that people are talking about,
+
+00:24:58.400 --> 00:25:02.199
+we've already probably integrated with Hyperbole
+
+00:25:02.200 --> 00:25:04.639
+or with a little bit of custom coding.
+
+00:25:04.640 --> 00:25:11.199
+You can do it. I think that's the end of the etherpad questions for now,
+
+00:25:11.200 --> 00:25:12.919
+but I see a number of people in the room,
+
+00:25:12.920 --> 00:25:15.439
+so you can continue the conversation.
+
+00:25:15.440 --> 00:25:18.719
+We'll be on the stream for another five minutes or so,
+
+00:25:18.720 --> 00:25:22.319
+but yes, please go ahead. Great. Yeah.
+
+00:25:22.320 --> 00:25:27.639
+I mean, people, does everybody have, can talk on the conference?
+
+00:25:27.640 --> 00:25:31.439
+I was expecting to just talk with people here.
+
+00:25:31.440 --> 00:25:40.799
+Let's see. Yeah. Can anybody say anything here?
+
+00:25:40.800 --> 00:25:52.039
+Hi, Bob. I can say something. Hey, Matt. Hi. Yeah.
+
+00:25:52.040 --> 00:25:55.199
+Maybe you want to bring up a topic.
+
+00:25:55.200 --> 00:25:56.839
+I think I... Yes. Sorry, Bob.
+
+00:25:56.840 --> 00:26:05.839
+I think I saw a question here on IOC. It was like this.
+
+00:26:05.840 --> 00:26:08.599
+Interesting, but the many different link formats
+
+00:26:08.600 --> 00:26:11.279
+makes reading and analyzing my notes
+
+00:26:11.280 --> 00:26:14.959
+much harder and less usable outside Emacs.
+
+00:26:14.960 --> 00:26:18.759
+I don't know if you have some comment on that.
+
+00:26:18.760 --> 00:26:22.319
+Well, I mean, the different formats that you're saying,
+
+00:26:22.320 --> 00:26:24.839
+like angle brackets or curly braces,
+
+00:26:24.840 --> 00:26:31.319
+are just so that you can utilize many different types.
+
+00:26:31.320 --> 00:26:35.599
+of buttons, but if you just want to use key sequences,
+
+00:26:35.600 --> 00:26:37.759
+there's only one markup format.
+
+00:26:37.760 --> 00:26:41.599
+With org, you've got the square brackets,
+
+00:26:41.600 --> 00:26:44.919
+which are consistent, but in order to have different types,
+
+00:26:44.920 --> 00:26:47.279
+you have to type a prefix name,
+
+00:26:47.280 --> 00:26:53.279
+like you see the HY for the High Wiki buttons in org mode.
+
+00:26:53.280 --> 00:26:56.999
+So I think the trade-off is pretty much the same,
+
+00:26:57.000 --> 00:27:02.239
+but Hyperbole always, always works
+
+00:27:02.240 --> 00:27:04.559
+to minimize the amount of markup.
+
+00:27:04.560 --> 00:27:07.439
+Markdown is pretty simple. A lot of people like that.
+
+00:27:07.440 --> 00:27:10.759
+But I think you'll find in hyperbole texts,
+
+00:27:10.760 --> 00:27:15.479
+they read just like regular language.
+
+00:27:15.480 --> 00:27:19.599
+I mean, the delimiters are fairly invisible.
+
+00:27:19.600 --> 00:27:23.039
+So I'm not sure what the issue is there.
+
+00:27:23.040 --> 00:27:24.919
+And again, you can choose your own.
+
+00:27:24.920 --> 00:27:27.639
+You can make your own types with your own delimiters.
+
+00:27:27.640 --> 00:27:31.359
+There's even a custom macro
+
+00:27:31.360 --> 00:27:33.399
+that instead of using that defib
+
+00:27:33.400 --> 00:27:35.559
+where you have to type out list code,
+
+00:27:35.560 --> 00:27:37.519
+you can use regular expressions.
+
+00:27:37.520 --> 00:27:41.239
+And in one line, you can define your own type of button
+
+00:27:41.240 --> 00:27:42.919
+with its own delimiters.
+
+00:27:42.920 --> 00:27:47.879
+So, you know, depending on what works well for your eyes,
+
+00:27:47.880 --> 00:27:51.359
+you can make Hyperbole adapt quite well to that.
+
+00:27:51.360 --> 00:27:54.319
+And again, if you start using the HiWiki,
+
+00:27:54.320 --> 00:27:57.479
+there's literally zero markup on that.
+
+00:27:57.480 --> 00:27:59.599
+So you're just reading text,
+
+00:27:59.600 --> 00:28:01.759
+and when you want something hyperlinked,
+
+00:28:01.760 --> 00:28:04.599
+it's like a glossary or a dictionary entry.
+
+00:28:04.600 --> 00:28:09.599
+It's just there, and it's just highlighted in the text.
+
+00:28:09.600 --> 00:28:17.479
+So I don't see much barrier to using it with many different types of documents.
+
+00:28:17.480 --> 00:28:23.319
+Let me go back to the Emacs here.
+
+00:28:23.320 --> 00:28:27.039
+If there are any other questions.
+
+00:28:27.040 --> 00:28:36.639
+Let me see. Let me go back to that. This K outline here.
+
+00:28:36.640 --> 00:28:38.719
+So we covered HiWiki.
+
+00:28:38.720 --> 00:28:42.999
+We're in the, I'll just show you some things
+
+00:28:43.000 --> 00:28:44.039
+that we wanted to highlight
+
+00:28:44.040 --> 00:28:46.279
+if people didn't have specific questions.
+
+00:28:46.280 --> 00:28:48.879
+But feel free to jump in anytime
+
+00:28:48.880 --> 00:28:51.399
+if you want to ask something.
+
+00:28:51.400 --> 00:28:57.039
+So what we're looking at here is a K Outliner document.
+
+00:28:57.040 --> 00:29:00.399
+There's, you know, hyperbole is pretty well documented.
+
+00:29:00.400 --> 00:29:04.719
+There's a large manual. There's interactive.
+
+00:29:04.720 --> 00:29:09.319
+demos of it and there are videos as well
+
+00:29:09.320 --> 00:29:12.079
+but the K Outliner is unique in Emacs
+
+00:29:12.080 --> 00:29:17.439
+because it it can do like full legal auto numbering you
+
+00:29:17.440 --> 00:29:21.399
+just say I want to create a new headline
+
+00:29:21.400 --> 00:29:23.919
+and you can see or I could create four
+
+00:29:23.920 --> 00:29:26.679
+I could say I want to create three more of these
+
+00:29:26.680 --> 00:29:29.239
+and I can do it all at once with one key
+
+00:29:29.240 --> 00:29:33.679
+I can then just tab to make sublevels here
+
+00:29:33.680 --> 00:29:40.319
+and you see this is using a specific outline format that we have
+
+00:29:40.320 --> 00:29:43.919
+but if we do dot in the view specs here
+
+00:29:43.920 --> 00:29:48.239
+it changes to legal outlining so it's really that simple
+
+00:29:48.240 --> 00:29:51.399
+and all of these numbers are automatically maintained
+
+00:29:51.400 --> 00:29:56.639
+as I move stuff around I can use like org mode alt arrow keys
+
+00:29:56.640 --> 00:30:00.119
+to like move things up and down, right?
+
+00:30:00.120 --> 00:30:00.839
+And just move them around.
+
+00:30:00.840 --> 00:30:04.719
+And when I run out, you know, when it can't go any higher,
+
+00:30:04.720 --> 00:30:06.039
+it gives me an error.
+
+00:30:06.040 --> 00:30:11.079
+And then it's just free form typing here with auto-wrapping.
+
+00:30:11.080 --> 00:30:13.759
+The nice thing is that there's,
+
+00:30:13.760 --> 00:30:17.359
+there's actually these hidden,
+
+00:30:17.360 --> 00:30:22.519
+let's get, hidden what are called ID stamps.
+
+00:30:22.520 --> 00:30:24.919
+So these are permanent hyperlink anchors
+
+00:30:24.920 --> 00:30:26.719
+that are assigned to each cell.
+
+00:30:26.720 --> 00:30:29.679
+So as this cell moves in the outline,
+
+00:30:29.680 --> 00:30:32.679
+you notice that this 29 didn't change.
+
+00:30:32.680 --> 00:30:37.439
+So you can move and all those other auto numbers shift
+
+00:30:37.440 --> 00:30:40.359
+to represent the actual outline structure.
+
+00:30:40.360 --> 00:30:44.079
+But this ID stamp of 29 stays the same.
+
+00:30:44.080 --> 00:30:47.679
+So you can embed that in links and say,
+
+00:30:47.680 --> 00:30:51.719
+I want to link to cell 29.
+
+00:30:51.720 --> 00:30:55.999
+If I go, let me just go to the K Outliner example.
+
+00:30:56.000 --> 00:30:59.039
+And I'll show you one of those, which is really cool.
+
+00:30:59.040 --> 00:31:02.599
+Because what you can do is say, I want to link
+
+00:31:02.600 --> 00:31:06.999
+Let me find that. It's down here somewhere.
+
+00:31:07.000 --> 00:31:12.199
+I think there's 3A. Where was it? Yeah, okay.
+
+00:31:12.200 --> 00:31:16.479
+So see right here, this is an internal link
+
+00:31:16.480 --> 00:31:21.200
+with just the pound and then the relative ID, as we call it, 3B.
+
+00:31:21.200 --> 00:31:25.719
+But of course, somebody may have moved 3B in the outline.
+
+00:31:25.720 --> 00:31:27.919
+So when Hyperbole inserts a link,
+
+00:31:27.920 --> 00:31:32.039
+it puts this equal with the ID stamp in it automatically.
+
+00:31:32.040 --> 00:31:35.839
+So if what'll happen is when I reference this,
+
+00:31:35.840 --> 00:31:37.639
+okay, it's still the same.
+
+00:31:37.640 --> 00:31:40.959
+But if it had changed, it would update this link
+
+00:31:40.960 --> 00:31:44.759
+and would change the 3B to say it was 3D now
+
+00:31:44.760 --> 00:31:50.519
+based on this permalink, the 08 that's hidden away in here.
+
+00:31:50.520 --> 00:31:52.439
+So you don't have to do anything.
+
+00:31:52.440 --> 00:31:56.599
+It's just that you have these automatic hyperlink anchors
+
+00:31:56.600 --> 00:31:58.959
+that are embedded in your outlines again.
+
+00:31:58.960 --> 00:32:04.519
+sort of like org IDs, but you have to manually place those in org.
+
+00:32:04.520 --> 00:32:09.039
+And it just makes linking much simpler.
+
+00:32:09.040 --> 00:32:10.359
+And you can reference this.
+
+00:32:10.360 --> 00:32:13.799
+You can reference the file and the cell number.
+
+00:32:13.800 --> 00:32:15.999
+And again, you don't put this hyperbole.
+
+00:32:16.000 --> 00:32:17.679
+You don't put this in.
+
+00:32:17.680 --> 00:32:20.719
+And then you can even have these view specs, which say,
+
+00:32:20.720 --> 00:32:25.919
+I want to clip the display to one line,
+
+00:32:25.920 --> 00:32:27.399
+and I want to delete. ellipses.
+
+00:32:27.400 --> 00:32:31.079
+So here we see a view over the same outline
+
+00:32:31.080 --> 00:32:37.319
+that's all in one mode. So it's just incredibly capable.
+
+00:32:37.320 --> 00:32:40.079
+So here we've said, you know,
+
+00:32:40.080 --> 00:32:42.879
+there's no blank lines between cells.
+
+00:32:42.880 --> 00:32:46.719
+now I change the view spec and put a blank line in there
+
+00:32:46.720 --> 00:32:51.879
+and it's all changed so lots of consistency that you get
+
+00:32:51.880 --> 00:32:55.599
+when you when you change a node in the outline
+
+00:32:55.600 --> 00:32:58.799
+the whole tree shifts and all of this is maintained
+
+00:32:58.800 --> 00:33:02.839
+all of the structure is maintained automatically by hyperbole
+
+00:33:02.840 --> 00:33:09.479
+and you can embed or Tables in here as well.
+
+00:33:09.480 --> 00:33:17.079
+So if I just press made a return action key again on this or Disabled.
+
+00:33:17.080 --> 00:33:21.799
+Okay. So now I enabled org mode here
+
+00:33:21.800 --> 00:33:31.719
+and where you see like tab here shifts a cell when I'm inside a The table tab just operates like normal org tables.
+
+00:33:31.720 --> 00:33:33.519
+So I can do all of the things
+
+00:33:33.520 --> 00:33:40.839
+that I can do in org table mode as well within this k-outline.
+
+00:33:40.840 --> 00:33:43.399
+So it seems pretty useful to me,
+
+00:33:43.400 --> 00:33:48.519
+but of course, I helped write it.
+
+00:33:48.520 --> 00:33:51.279
+But I think you see some of the benefits
+
+00:33:51.280 --> 00:33:53.959
+that can accrue by using that format.
+
+00:33:53.960 --> 00:33:57.839
+But this is just this is just one piece of hyperbole,
+
+00:33:57.840 --> 00:34:01.559
+a major mode that you can choose to use or ignore entirely,
+
+00:34:01.560 --> 00:34:04.039
+you know, dependent on your needs.
+
+00:34:04.040 --> 00:34:06.399
+If you're writing requirements, documents,
+
+00:34:06.400 --> 00:34:08.879
+or anything that needs structure,
+
+00:34:08.880 --> 00:34:12.079
+I think that's where this is really ideal.
+
+00:34:12.080 --> 00:34:14.279
+You can write a legal document,
+
+00:34:14.280 --> 00:34:16.159
+and you've got auto-numbering,
+
+00:34:16.160 --> 00:34:18.679
+which is always, if you've ever used Word
+
+00:34:18.680 --> 00:34:21.039
+or any of those word processors,
+
+00:34:21.040 --> 00:34:26.479
+it's really a pain to maintain those hierarchies in those compared to here.
+
+00:34:26.480 --> 00:34:32.239
+Okay, so that was just showing you the KL liner.
+
+00:34:32.240 --> 00:34:35.279
+Does anybody have any questions
+
+00:34:35.280 --> 00:34:43.279
+or I'll just continue down a bit?
+
+00:34:43.280 --> 00:34:47.999
+Okay, so some other capabilities
+
+00:34:48.000 --> 00:34:49.959
+that we've fairly recently put in.
+
+00:34:49.960 --> 00:34:52.799
+Well, this has been here for a long time.
+
+00:34:52.800 --> 00:34:58.719
+You can, I think the binding I use is Control-C-M.
+
+00:34:58.720 --> 00:35:00.159
+I forget what it is.
+
+00:35:00.160 --> 00:35:07.159
+No, sorry, that's Control-C, Control-M.
+
+00:35:07.160 --> 00:35:14.319
+Now let's CTRL C, forward slash.
+
+00:35:14.320 --> 00:35:21.719
+Okay, so what I wanted to show you here is that the action key
+
+00:35:21.720 --> 00:35:26.679
+on any double quote, single quote, usually,
+
+00:35:26.680 --> 00:35:30.079
+or paired delimiters will select that whole thing.
+
+00:35:30.080 --> 00:35:33.239
+There is this capability, and I probably just select bigger
+
+00:35:33.240 --> 00:35:35.119
+and bigger chunks of text,
+
+00:35:35.120 --> 00:35:39.319
+but this is really nice that you can just go anywhere
+
+00:35:39.320 --> 00:35:42.479
+in pretty much any mode and hit made a return.
+
+00:35:42.480 --> 00:35:46.559
+And so in Lisp, you can be on the trailing paren
+
+00:35:46.560 --> 00:35:50.599
+and it will select the whole expression or the opening
+
+00:35:50.600 --> 00:35:52.879
+and it'll select just that piece
+
+00:35:52.880 --> 00:35:56.159
+but even better when you're copying pasting
+
+00:35:56.160 --> 00:36:02.039
+I can now if there's no region selected control W made a W
+
+00:36:02.040 --> 00:36:05.679
+will act on the structured entity
+
+00:36:05.680 --> 00:36:09.359
+that you're at the beginning or ending delimiter for
+
+00:36:09.360 --> 00:36:12.199
+without you having to highlight the region
+
+00:36:12.200 --> 00:36:14.719
+So if I hit made a return, it would highlight it,
+
+00:36:14.720 --> 00:36:19.839
+but let's just do made a W to cut that and then I'll yank it here.
+
+00:36:19.840 --> 00:36:23.599
+And you see it grabbed the whole expression
+
+00:36:23.600 --> 00:36:25.599
+and just let you yank it.
+
+00:36:25.600 --> 00:36:29.679
+So it's a nice add on to the basic Emacs commands
+
+00:36:29.680 --> 00:36:33.159
+that just let you operate a lot more efficiently.
+
+00:36:33.160 --> 00:36:35.359
+You can do something similar in C mode.
+
+00:36:35.360 --> 00:36:39.439
+You know, on the braces, you can select the whole function
+
+00:36:39.440 --> 00:36:40.439
+with one key press,
+
+00:36:40.440 --> 00:36:43.079
+made a return, and then copy it somewhere.
+
+00:36:43.080 --> 00:36:50.559
+And Hyperbole integrates with Ace Window if you use that.
+
+00:36:50.560 --> 00:36:56.799
+So let me split this a few ways. And let's do it over here.
+
+00:36:56.800 --> 00:37:06.799
+We'll just go to scratch. Okay. And then I can go,
+
+00:37:06.800 --> 00:37:08.119
+it's sort of interesting,
+
+00:37:08.120 --> 00:37:11.120
+it works with the, with Dired as well.
+
+00:37:11.120 --> 00:37:16.519
+So I can go here and say, I want to So if I do Meta O,
+
+00:37:16.520 --> 00:37:22.159
+ACE window will show me the labels to use, A, D, or S, to do something.
+
+00:37:22.160 --> 00:37:24.559
+Like I can move to any of those windows.
+
+00:37:24.560 --> 00:37:27.959
+But what Hyperbole lets you do
+
+00:37:27.960 --> 00:37:30.759
+is say I want to throw with T,
+
+00:37:30.760 --> 00:37:36.399
+like this glass.org file over to the bottom window.
+
+00:37:36.400 --> 00:37:42.479
+So I go MetaO to invoke it. I say I want a T to throw it.
+
+00:37:42.480 --> 00:37:46.399
+then where do I want to throw it to s the window and
+
+00:37:46.400 --> 00:37:49.879
+Then you see it's now displaying glass org
+
+00:37:49.880 --> 00:37:56.679
+so I can do that with files I can do it with regions of text you can
+
+00:37:56.680 --> 00:37:58.719
+Replace things in a buffer
+
+00:37:58.720 --> 00:38:01.199
+or throw the whole thing to the window
+
+00:38:01.200 --> 00:38:02.759
+so a couple extra commands
+
+00:38:02.760 --> 00:38:06.519
+that it extends ace window with you
+
+00:38:06.520 --> 00:38:12.159
+can even I think, well, we also have this command,
+
+00:38:12.160 --> 00:38:16.799
+I think it's Control-C, yeah.
+
+00:38:16.800 --> 00:38:21.719
+So what it did there was it just selected the files
+
+00:38:21.720 --> 00:38:22.799
+that I had marked in Dura,
+
+00:38:22.800 --> 00:38:26.839
+it selected and created a window grid out of all of them.
+
+00:38:26.840 --> 00:38:29.559
+you know, so I hit like three keystrokes.
+
+00:38:29.560 --> 00:38:35.159
+That's kind of convenient if you want to see
+
+00:38:35.160 --> 00:38:38.159
+a lot of information all at once.
+
+00:38:38.160 --> 00:38:42.239
+And so we covered all that. I won't go into it too much,
+
+00:38:42.240 --> 00:38:46.639
+but there's a whole nother window and frame control system
+
+00:38:46.640 --> 00:38:50.799
+under the screen menu here if you type control HHS.
+
+00:38:50.800 --> 00:38:54.479
+then you can select either controlling windows or frames.
+
+00:38:54.480 --> 00:38:56.119
+Let's do windows.
+
+00:38:56.120 --> 00:39:00.479
+And it has this menu where it's just sort of showing you.
+
+00:39:00.480 --> 00:39:07.839
+I can like split my windows vertically or horizontally.
+
+00:39:07.840 --> 00:39:13.759
+I can widen by a pixel or I can say, or character.
+
+00:39:13.760 --> 00:39:18.319
+I can say, use my prefix argument to change that to 10.
+
+00:39:18.320 --> 00:39:22.479
+And then when I shrink it, shrinks it up by 10
+
+00:39:22.480 --> 00:39:27.319
+or it narrows it width by 10 or it widens it by 10.
+
+00:39:27.320 --> 00:39:33.679
+So it has this concept of prefix arguments that persist
+
+00:39:33.680 --> 00:39:35.719
+and you just type in the number
+
+00:39:35.720 --> 00:39:38.359
+and then you can issue any number of the commands.
+
+00:39:38.360 --> 00:39:41.679
+So you could move windows or frames
+
+00:39:41.680 --> 00:39:44.919
+or create them, delete them, cycle through them,
+
+00:39:44.920 --> 00:39:48.279
+all sorts of things, including relative to movement,
+
+00:39:48.280 --> 00:39:50.719
+relative to the edges of your screens.
+
+00:39:50.720 --> 00:39:52.559
+So if you have multiple screens
+
+00:39:52.560 --> 00:39:54.479
+and many frames that you use,
+
+00:39:54.480 --> 00:39:59.639
+it just makes management very convenient.
+
+00:39:59.640 --> 00:40:02.439
+And then you just cue to quit out of there
+
+00:40:02.440 --> 00:40:04.959
+and you're back wherever you were.
+
+00:40:04.960 --> 00:40:10.439
+So, Finally, we have a lot of documentation.
+
+00:40:10.440 --> 00:40:12.599
+This is just a link to the videos,
+
+00:40:12.600 --> 00:40:16.239
+which is in the readme and in the manuals.
+
+00:40:16.240 --> 00:40:21.399
+There's two demos or tutorials. One to get you started.
+
+00:40:21.400 --> 00:40:24.719
+Notice I'm using these implicit buttons, so keystrokes,
+
+00:40:24.720 --> 00:40:26.879
+and I can just made a return on that.
+
+00:40:26.880 --> 00:40:30.519
+And that takes me to, here's all the videos.
+
+00:40:30.520 --> 00:40:34.239
+And you can get started with that
+
+00:40:34.240 --> 00:40:38.279
+or just interact with this demo that we have.
+
+00:40:38.280 --> 00:40:41.519
+And there's one for the K Outliner as well.
+
+00:40:41.520 --> 00:40:45.399
+One of the things that If you're into videos
+
+00:40:45.400 --> 00:40:46.919
+and you need to link to them,
+
+00:40:46.920 --> 00:40:50.519
+notice what you're seeing here. This is a hyperbole feature
+
+00:40:50.520 --> 00:40:54.919
+which is very difficult to achieve any other way that I've seen
+
+00:40:54.920 --> 00:40:59.279
+where you want a specific start and stop time
+
+00:40:59.280 --> 00:41:01.039
+in a video that you want to play.
+
+00:41:01.040 --> 00:41:05.639
+Hyperbole has a built-in link type for that.
+
+00:41:05.640 --> 00:41:08.760
+as you see here. So this is the name of the link
+
+00:41:08.760 --> 00:41:10.919
+that you can reference it by,
+
+00:41:10.920 --> 00:41:14.279
+and then this is the actual link expression.
+
+00:41:14.280 --> 00:41:17.479
+So I could just go and play a video right here,
+
+00:41:17.480 --> 00:41:22.079
+and this is from one long intro to hyperbole that we did.
+
+00:41:22.080 --> 00:41:25.759
+So it's just linking to the specific sections.
+
+00:41:25.760 --> 00:41:27.439
+But that's something, again,
+
+00:41:27.440 --> 00:41:29.519
+this could be embedded anywhere.
+
+00:41:29.520 --> 00:41:33.759
+in any file and it would start to play.
+
+00:41:33.760 --> 00:41:36.559
+Uh, I guess I could try YouTube.
+
+00:41:36.560 --> 00:41:43.239
+Well, I don't want to. Yeah. Okay. It's on my other screen.
+
+00:41:43.240 --> 00:41:48.199
+So, but it did, it did, uh, link to it.
+
+00:41:48.200 --> 00:41:53.319
+So, um, yeah, just, you know, tremendous capability
+
+00:41:53.320 --> 00:41:56.919
+to interlink your information that way.
+
+00:41:56.920 --> 00:42:00.359
+And, uh, You know, again, you learn it bit by bit.
+
+00:42:00.360 --> 00:42:04.279
+You can study one particular section right here.
+
+00:42:04.280 --> 00:42:09.039
+Just jump directly to that if you want to know about it.
+
+00:42:09.040 --> 00:42:13.319
+The manual is interlinked, has an extensive glossary,
+
+00:42:13.320 --> 00:42:16.119
+cross-references of sections.
+
+00:42:16.120 --> 00:42:23.119
+And if you go in there, this is the hyperlinked manual.
+
+00:42:23.120 --> 00:42:25.119
+So this is the structure of it
+
+00:42:25.120 --> 00:42:27.799
+with all the subsystems documented.
+
+00:42:27.800 --> 00:42:31.519
+But one of the sections we've added
+
+00:42:31.520 --> 00:42:33.559
+is developing with hyperbole.
+
+00:42:33.560 --> 00:42:37.319
+So if you are or you want to create your own button types,
+
+00:42:37.320 --> 00:42:38.919
+this explains how to do it.
+
+00:42:38.920 --> 00:42:42.959
+Creating types, you can create your own action
+
+00:42:42.960 --> 00:42:44.999
+and implicit button types.
+
+00:42:45.000 --> 00:42:48.359
+And if you look in here, there are three ways
+
+00:42:48.360 --> 00:42:55.039
+to create implicit button types from simpler to harder.
+
+00:42:55.040 --> 00:42:59.079
+So like, here's an example
+
+00:42:59.080 --> 00:43:03.679
+where the do pressing control X after this expression
+
+00:43:03.680 --> 00:43:07.199
+defines a new action button link type called pilot.
+
+00:43:07.200 --> 00:43:13.359
+So let's say, I don't know if I have this set up, but we can try it.
+
+00:43:13.360 --> 00:43:21.999
+Yeah, I don't have the variable setup,
+
+00:43:22.000 --> 00:43:25.759
+but basically, you know, it can get you.
+
+00:43:25.760 --> 00:43:31.359
+This is a one line definition of a new action type.
+
+00:43:31.360 --> 00:43:36.399
+that can get you to a Python file
+
+00:43:36.400 --> 00:43:39.639
+based on whatever your Python path is set to
+
+00:43:39.640 --> 00:43:42.919
+with this simple syntax right here.
+
+00:43:42.920 --> 00:43:45.199
+And here we're going to the file.
+
+00:43:45.200 --> 00:43:48.399
+So we have no idea where this is on the file system.
+
+00:43:48.400 --> 00:43:54.959
+And the same way like if you use man path, Python path,
+
+00:43:54.960 --> 00:44:08.599
+you can embed buttons. Let's just go to scratch buffer.
+
+00:44:08.600 --> 00:44:17.919
+My first read-only. It doesn't want me to go.
+
+00:44:17.920 --> 00:44:24.999
+It must be kind of strange.
+
+00:44:25.000 --> 00:44:34.799
+Something with this key window that I have over here.
+
+00:44:34.800 --> 00:44:41.039
+Let me just move off there. Look at that.
+
+00:44:41.040 --> 00:44:46.519
+Maybe it's just activating that.
+
+00:44:46.520 --> 00:44:53.319
+Yeah, it keeps jumping back there.
+
+00:44:53.320 --> 00:44:55.919
+I don't know. I have to get this straight.
+
+00:44:55.920 --> 00:45:02.199
+Yeah, it's not letting me type the buttons.
+
+00:45:02.200 --> 00:45:15.839
+Let me see if I can turn off the key casting.
+
+00:45:15.840 --> 00:45:23.519
+Yeah, maybe that'll help. just gonna exit out of here.
+
+00:45:23.520 --> 00:45:32.960
+Does anybody have any questions they want to cover?
+
+00:45:33.000 --> 00:45:39.079
+I was just gonna show you yeah a little more on type definitions
+
+00:45:39.080 --> 00:45:53.119
+if there was any interest OK, there's nobody piping up.
+
+00:45:53.120 --> 00:45:56.999
+Let me see if there's any other questions.
+
+00:45:57.000 --> 00:46:04.439
+Hi, Bob. I haven't seen any more questions.
+
+00:46:04.440 --> 00:46:10.839
+Yeah, so maybe it's you, me, and someone called Max is here in the channel.
+
+00:46:10.840 --> 00:46:19.479
+OK. Okay, so if Max doesn't have any questions
+
+00:46:19.480 --> 00:46:24.839
+and there aren't other people, we can just end it there.
+
+00:46:24.840 --> 00:46:34.479
+I don't want to have an audience of zero or talk to that.
+
+00:46:34.480 --> 00:46:37.919
+So, but I think that was a good overview, Max, right?
+
+00:46:37.920 --> 00:46:45.479
+Yes, definitely covered a lot in a short time.
+
+00:46:45.480 --> 00:46:48.639
+And hopefully, you know, just try it out.
+
+00:46:48.640 --> 00:46:52.399
+At the top here, it shows you how to install it.
+
+00:46:52.400 --> 00:46:56.559
+It's pretty simple, basic package and installation.
+
+00:46:56.560 --> 00:47:02.719
+And we're happy to help anybody get started if they need to.
+
+00:47:02.720 --> 00:47:05.199
+So thanks, everyone.
+
+00:47:05.200 --> 00:47:09.279
+And we'll answer any further questions on the Etherpad after this.