diff options
author | EmacsConf <emacsconf-org@gnu.org> | 2024-12-08 11:30:14 -0500 |
---|---|---|
committer | EmacsConf <emacsconf-org@gnu.org> | 2024-12-08 11:30:14 -0500 |
commit | bab4a4ef37ae4c80b4dc5613bc4a8e6bae2c4657 (patch) | |
tree | 20953af511d45f70c11d54ed85b3ad569057cb0f /2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt | |
parent | 2958cf5d465d4013a4ec322753c7cdd8008247da (diff) | |
download | emacsconf-wiki-bab4a4ef37ae4c80b4dc5613bc4a8e6bae2c4657.tar.xz emacsconf-wiki-bab4a4ef37ae4c80b4dc5613bc4a8e6bae2c4657.zip |
Automated commit
Diffstat (limited to '2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt')
-rw-r--r-- | 2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt | 459 |
1 files changed, 459 insertions, 0 deletions
diff --git a/2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt b/2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt new file mode 100644 index 00000000..39603c7e --- /dev/null +++ b/2024/captions/emacsconf-2024-hyperbole--fun-things-with-gnu-hyperbole--mats-lidell--main.vtt @@ -0,0 +1,459 @@ +WEBVTT captioned by sachac + +NOTE Introduction + +00:00:00.000 --> 00:00:08.239 +Hi, Emacs Conference. I'm Mats Lidell. I'm the maintainer + +00:00:08.240 --> 00:00:13.399 +of the GNU Hyperbole, together with the author, Bob + +00:00:13.400 --> 00:00:19.759 +Weiner. The title of the talk is Fun Things with GNU + +00:00:19.760 --> 00:00:27.959 +Hyperbole. With that, I intend to cover a different set of + +00:00:27.960 --> 00:00:33.319 +small things that is in the package. So this will not be a + +00:00:33.320 --> 00:00:36.854 +tutorial of Hyperbole. + +00:00:36.855 --> 00:00:41.298 +For that, you have to look for other sources. + +NOTE The action key and the assist key + +00:00:41.299 --> 00:00:45.039 +This is a short talk, so let's get started with + +00:00:45.040 --> 00:00:50.879 +the first thing. We're going to talk about scrolling and + +00:00:50.880 --> 00:00:56.239 +with the subtitle using the end of line. If you're new to + +00:00:56.240 --> 00:00:59.559 +Hyperbole, you need to know about the action key and assist + +00:00:59.560 --> 00:01:06.079 +key. The action key is bound to M-RET and the assist key + +00:01:06.080 --> 00:01:10.279 +is bound by default to M-RET with the prefix argument. + +00:01:10.280 --> 00:01:15.559 +Both of these keys are used for performing actions on + +00:01:15.560 --> 00:01:20.319 +different contexts. In this case, we'll look what + +00:01:20.320 --> 00:01:27.719 +happens when you use it on the end of a line. + +00:01:27.720 --> 00:01:35.439 +I have here the tutorial, the Emacs tutorial, and we see + +00:01:35.440 --> 00:01:40.599 +here a line inserting and deleting. I move there and put the + +00:01:40.600 --> 00:01:45.439 +cursor on the end of the line. I then hit M-RET, the + +00:01:45.440 --> 00:01:53.479 +action key, and it's moved to the top of the window. If I want + +00:01:53.480 --> 00:01:58.919 +to move it to the last row on the window I can press C-u and + +00:01:58.920 --> 00:02:05.879 +then M-RET, so I use the assist key. If I repeatedly hit + +00:02:05.880 --> 00:02:10.399 +M-RET, it will scroll so the first time it moves to the + +00:02:10.400 --> 00:02:16.159 +top of the window, but if I at the top of the window hit + +00:02:16.160 --> 00:02:22.839 +M-RET again it scrolls. + +NOTE Composing an e-mail + +00:02:22.840 --> 00:02:27.799 +Now over to the next thing. + +00:02:27.800 --> 00:02:34.559 +So next thing is to compose an email from an address + +00:02:34.560 --> 00:02:42.599 +of the style of username@domain. Let's look into + +00:02:42.600 --> 00:02:48.359 +that. Here I have entered the file in the Emacs + +00:02:48.360 --> 00:02:54.239 +distribution vc.el. At its top it has a lot of + +00:02:54.240 --> 00:03:01.359 +different email addresses from the contributors. This is, in + +00:03:01.360 --> 00:03:09.199 +principle, a normal text file. By placing the cursor over + +00:03:09.200 --> 00:03:13.519 +one of these addresses and hitting the action key, Hyperbole + +00:03:13.520 --> 00:03:17.839 +identifies that it's an email address and tries to open or + +00:03:17.840 --> 00:03:28.519 +opens the email composer with that, using that email address. + +00:03:28.520 --> 00:03:33.719 +If we'll go to the scratch buffer... Prepared another name + +00:03:33.720 --> 00:03:38.119 +there so just to demonstrate it works in a buffer the same + +00:03:38.120 --> 00:03:44.599 +way. + +NOTE Inserting implicit links + +00:03:44.600 --> 00:03:51.079 +The next fun thing is insert implicit link. I'm going to give + +00:03:51.080 --> 00:03:56.279 +you an example with email how to share an implicit link with + +00:03:56.280 --> 00:04:02.359 +someone. An implicit link is a text pattern, just as we saw + +00:04:02.360 --> 00:04:05.159 +with the email address, something that Hyperbole + +00:04:05.160 --> 00:04:13.319 +recognizes just by how the text looks. Here we have the + +00:04:13.320 --> 00:04:15.981 +example. We have started writing an email to + +00:04:15.982 --> 00:04:20.662 +the user@domain, and in the other window below, + +00:04:20.663 --> 00:04:27.423 +the vc.el file is open. It's now opened within the search path, + +00:04:27.424 --> 00:04:34.279 +the load path. That's why it's compressed. I want to tell + +00:04:34.280 --> 00:04:40.719 +my friend about the credit section. First, the cursor is + +00:04:40.720 --> 00:04:44.559 +placed here at your credit section. I move over to the other + +00:04:44.560 --> 00:04:48.879 +window and I use the Hyperbole menu system. By hitting + +00:04:48.880 --> 00:04:55.261 +C-h h, I go into the menu system. I press i for getting an + +00:04:55.262 --> 00:05:05.119 +i-button, implicit button, and I press l for creating a link. + +00:05:05.120 --> 00:05:12.159 +And there you have the link. What does the link mean? Well, it + +00:05:12.160 --> 00:05:15.519 +means that in the load for Hyperbole, Emacs lib files are + +00:05:15.520 --> 00:05:20.719 +special. If they are in the load path, they will use this short + +00:05:20.720 --> 00:05:26.279 +format. At the end, you have the L for the line number 24 and + +00:05:26.280 --> 00:05:31.439 +the C for the column. If I hit the action key on this line, you + +00:05:31.440 --> 00:05:35.559 +can see that the cursor moves over to the credit section. we + +00:05:35.560 --> 00:05:44.919 +can remove that file just to make sure that it works and move + +00:05:44.920 --> 00:05:50.639 +the cursor a little bit and hit M-RET again. + +00:05:50.640 --> 00:05:55.599 +M-RET and we moved over there. I mean, given that + +00:05:55.600 --> 00:06:00.039 +the receiver has a similar setup with Emacs, et cetera, that + +00:06:00.040 --> 00:06:03.410 +link will work there as well. + +NOTE Window grid + +00:06:03.411 --> 00:06:05.879 +Hi, Emacs Conference. It's a + +00:06:05.880 --> 00:06:09.639 +new recording day, the sun is shining, I'm wearing a new + +00:06:09.640 --> 00:06:14.359 +t-shirt but we're still cracking on with fun things in + +00:06:14.360 --> 00:06:21.239 +Hyperbole. Our next subject is window grid. With + +00:06:21.240 --> 00:06:25.039 +Hyperbole, it's easy to create a grid of windows. I'm going to + +00:06:25.040 --> 00:06:29.319 +show how you can do that and also moving on I'm going to show + +00:06:29.320 --> 00:06:34.239 +how you can use Dired or IBuffer to select what buffers to + +00:06:34.240 --> 00:06:39.959 +show in the grid. I will also show how you can save + +00:06:39.960 --> 00:06:46.079 +configuration for use later. + +00:06:46.080 --> 00:06:50.039 +You reach the window grid functionality through the + +00:06:50.040 --> 00:06:56.839 +hyperbole menu system. C-h h screen. There you have + +00:06:56.840 --> 00:07:01.279 +two submenus, frame control and window control. The grid + +00:07:01.280 --> 00:07:05.039 +functionality is part of both of these submenus. You can + +00:07:05.040 --> 00:07:09.359 +select either, but I'll go with window control here. + +00:07:09.360 --> 00:07:15.239 +Down to the left, we see the @ character and the grid of + +00:07:15.240 --> 00:07:21.799 +windows, so hit @. I'm prompted with the number of + +00:07:21.800 --> 00:07:25.803 +columns and rows for the window grid. + +00:07:25.804 --> 00:07:34.359 +I select the 3x3 grid. + +00:07:34.360 --> 00:07:41.919 +We get the 3x3 grid, and it's populated with buffers I have + +00:07:41.920 --> 00:07:46.639 +loaded in Emacs. + +00:07:46.640 --> 00:07:52.319 +Let's go back here to the scratch buffer. + +00:07:52.320 --> 00:07:56.399 +Now, using all those keystrokes for the menu system is a + +00:07:56.400 --> 00:08:01.599 +little bit cumbersome, so there is a shortcut: C-c @. + +00:08:01.600 --> 00:08:08.519 +If I use that, C-c @, I get immediately prompted the + +00:08:08.520 --> 00:08:16.538 +number of rows and columns. If i use a prefix arg 0, + +00:08:16.539 --> 00:08:23.359 +C-u 0 C-c @, I get also prompted with what type of + +00:08:23.360 --> 00:08:28.719 +buffers I want to have populated in my grid. Let's select + +00:08:28.720 --> 00:08:36.599 +the emacs-lisp-mode. Again we do a 3x3 grid. Here + +00:08:36.600 --> 00:08:44.959 +you see all the grids. The whole grid is populated with Emacs + +00:08:44.960 --> 00:08:45.919 +Lisp buffers. + +00:08:45.920 --> 00:08:57.679 +To get even finer control, you can go into IBuffer. I have + +00:08:57.680 --> 00:09:04.279 +pre-selected here all the Emacs Lisp files I have. Let's + +00:09:04.280 --> 00:09:10.279 +pick a few. I mark them like this. Let's pick three or maybe + +00:09:10.280 --> 00:09:16.879 +pick four. Then I hit the @ sign, and then it + +00:09:16.880 --> 00:09:22.368 +automatically shows a 2x2 grid + +00:09:22.369 --> 00:09:26.279 +with the selected buffers. + +00:09:26.280 --> 00:09:35.239 +We can go in again and maybe select a few more and do the same + +00:09:35.240 --> 00:09:44.399 +thing: hit add and it now becomes a 3x2 grid with these buffers + +00:09:44.400 --> 00:09:50.178 +The same thing is possible through Dired. + +00:09:50.179 --> 00:10:00.639 +Let's just mark quite a few here and then hit @, and then it + +00:10:00.640 --> 00:10:04.199 +populates it with all the buffers. You see that if it's not + +00:10:04.200 --> 00:10:10.679 +enough buffer to fill the whole grid, there are blank grids or + +00:10:10.680 --> 00:10:15.039 +rectangles in the grid. + +00:10:15.040 --> 00:10:20.519 +Now going back and forth like this, maybe if you want to work + +00:10:20.520 --> 00:10:26.759 +on some file and and then go over to Dired again to select this, + +00:10:26.760 --> 00:10:31.759 +can be a little bit cumbersome. You maybe have prepared a + +00:10:31.760 --> 00:10:34.965 +grid with the buffers you want to have there. + +00:10:34.966 --> 00:10:42.559 +Hyperbole comes with a simple window configuration support. + +00:10:42.560 --> 00:10:46.119 +You reach that the same way through the Hyperbole menu, so + +00:10:46.120 --> 00:10:54.119 +C-h h and window, w for window, and there you can hit save to + +00:10:54.120 --> 00:10:58.599 +save the configuration to a ring of configurations. + +00:10:58.600 --> 00:11:04.759 +Let's go back to the scratch buffer again here. Now we + +00:11:04.760 --> 00:11:09.919 +want to bring up our window configuration again, so we + +00:11:09.920 --> 00:11:15.079 +hit C-h h and window, and yank in the configuration. Boom, + +00:11:15.080 --> 00:11:19.719 +there is the grid again. + +NOTE Select a thing + +00:11:19.720 --> 00:11:23.319 +We're reaching the end of the talk. The last fun thing I want to + +00:11:23.320 --> 00:11:27.639 +talk about is the Hyperbole support for select a thing. + +00:11:27.640 --> 00:11:33.439 +We'll show some use of selections together with web search. + +00:11:33.440 --> 00:11:43.599 +Here I have brought up the GNU General Public License for + +00:11:43.600 --> 00:11:48.119 +just getting some text that I can show the select a thing + +00:11:48.120 --> 00:11:52.919 +functionality. Let's move the cursor over the word + +00:11:52.920 --> 00:11:59.399 +versions. Then I hit C-c RET, which is bound for the + +00:11:59.400 --> 00:12:03.119 +select a thing functionality. + +00:12:03.120 --> 00:12:11.039 +Then it selects the word that the cursor was at. If I hit it + +00:12:11.040 --> 00:12:15.199 +again, C-c RET, it selects the line. Again, it + +00:12:15.200 --> 00:12:22.359 +selects the sentence, and again, the whole paragraph. So + +00:12:22.360 --> 00:12:26.159 +that's a convenient way to extend your searches--your + +00:12:26.160 --> 00:12:33.817 +selections, rather--in a buffer. + +NOTE Web search + +00:12:33.818 --> 00:12:38.198 +Looking at selections, how you can use that from web search... + +00:12:38.199 --> 00:12:44.321 +Let's mark some text and then hit C-c /, which is bound + +00:12:44.322 --> 00:12:48.542 +for the web search. Here you see the Hyperbole menu system again. + +00:12:48.543 --> 00:12:54.959 +It's slightly customized with things that I use, but the basic + +00:12:54.960 --> 00:13:00.519 +menus are the ones supported by Hyperbole. Let's look at + +00:13:00.520 --> 00:13:07.999 +searching DuckDuckGo. It then populates the prompt with + +00:13:08.000 --> 00:13:08.839 +the selection. + +00:13:08.840 --> 00:13:17.919 +I have configured it so it uses my Firefox for these + +00:13:17.920 --> 00:13:23.319 +searches. Here we have the GNU General Public License + +00:13:23.320 --> 00:13:30.599 +shown. I can also show that for like me, being not a native + +00:13:30.600 --> 00:13:36.319 +English speaker, let's look what "take away your freedoms" + +00:13:36.320 --> 00:13:41.679 +means in Swedish. So C-c /, and then I hit translate. + +00:13:41.680 --> 00:13:45.879 +Take away your freedom, yeah, what's the translation for + +00:13:45.880 --> 00:13:48.582 +that? Using Google Translate, + +00:13:48.583 --> 00:13:50.799 +I get it translated to Swedish. + +00:13:50.800 --> 00:14:03.430 +That was the whole talk. We reached the end, + +00:14:03.431 --> 00:14:09.400 +and thanks for listening. Bye. |