From 2f2cb666789326811b2d6b5f871864a9028671ce Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Sun, 4 Dec 2022 10:49:46 -0500 Subject: Automated commit --- ...ans-zettelkasten--karl-voit--main--chapters.vtt | 34 ++ ...inks-poormans-zettelkasten--karl-voit--main.vtt | 508 +++++++++++++++++++++ 2022/info/orgsuperlinks-after.md | 176 +++++++ 2022/info/orgsuperlinks-before.md | 25 +- 2022/qa.md | 1 + 2022/schedule-2022-12-04.md | 2 +- 2022/schedule-image.md | 2 +- 7 files changed, 744 insertions(+), 4 deletions(-) create mode 100644 2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main--chapters.vtt create mode 100644 2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.vtt (limited to '2022') diff --git a/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main--chapters.vtt b/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main--chapters.vtt new file mode 100644 index 00000000..a5b85095 --- /dev/null +++ b/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main--chapters.vtt @@ -0,0 +1,34 @@ +WEBVTT + +00:00:00.000 --> 00:00:18.680 +Introduction + +00:00:18.680 --> 00:01:42.680 +Setting up the demo + +00:01:42.680 --> 00:03:03.920 +Linking between headings + +00:03:03.920 --> 00:03:51.640 +Link drawers + +00:03:51.640 --> 00:04:09.960 +Bi-directional links + +00:04:09.960 --> 00:05:07.680 +Projects + +00:05:07.680 --> 00:05:51.600 +Dependencies + +00:05:51.600 --> 00:06:39.320 +Jumping between dependencies + +00:06:39.320 --> 00:07:49.120 +Closing the project + +00:07:49.120 --> 00:08:15.640 +Task dependencies between files + +00:08:15.640 --> 00:08:56.000 +Conclusion diff --git a/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.vtt b/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.vtt new file mode 100644 index 00000000..d67d0a64 --- /dev/null +++ b/2022/captions/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.vtt @@ -0,0 +1,508 @@ +WEBVTT captioned by sachac + +00:00:00.000 --> 00:00:05.600 +Hello, my name is Karl Voit + +00:00:05.600 --> 00:00:08.720 +and I'm going to show you a little demo + +00:00:08.720 --> 00:00:10.920 +on how I'm working with links + +00:00:10.920 --> 00:00:12.760 +between arbitrary headings + +00:00:12.760 --> 00:00:16.240 +and how I define dependencies between tasks + +00:00:16.240 --> 00:00:18.680 +when I'm working with projects and so forth. + +00:00:18.680 --> 00:00:22.680 +For that purpose, I've created a repository + +00:00:22.680 --> 00:00:27.680 +that contains the files we are going to work with, + +00:00:27.680 --> 00:00:30.000 +with the overall setup and so forth. + +00:00:30.000 --> 00:00:32.840 +So you just have to download this repository + +00:00:32.840 --> 00:00:36.400 +and you're able to replay everything + +00:00:36.400 --> 00:00:38.120 +which you are going to see here. + +00:00:38.120 --> 00:00:44.360 +If you've downloaded the configuration of the demo, + +00:00:44.360 --> 00:00:49.160 +you see those files, and you start the Emacs + +00:00:49.160 --> 00:00:52.800 +with an empty configuration + +00:00:52.800 --> 00:00:59.480 +and link demo file, like that. + +00:00:59.480 --> 00:01:03.800 +So let me just briefly increase the font size. + +00:01:03.800 --> 00:01:05.760 +Setting up the demo is easy. + +00:01:05.760 --> 00:01:08.600 +I've done the key visualization, + +00:01:08.600 --> 00:01:11.840 +the webcam part, and I've started the Emacs + +00:01:11.840 --> 00:01:13.920 +and increased the font size. + +00:01:13.920 --> 00:01:17.720 +And the last thing and the most important thing + +00:01:17.720 --> 00:01:18.680 +you need to do here + +00:01:18.680 --> 00:01:20.360 +is executing the babel block, + +00:01:20.360 --> 00:01:23.800 +which consists of more or less dirty Elisp code + +00:01:23.800 --> 00:01:27.040 +that installs the necessary packages, functions, + +00:01:27.040 --> 00:01:29.800 +and bindings required in this demo. + +00:01:29.800 --> 00:01:32.400 +You need to acknowledge the execution + +00:01:32.400 --> 00:01:36.160 +with yes and return, and after a couple of seconds, + +00:01:36.160 --> 00:01:37.920 +everything is downloaded + +00:01:37.920 --> 00:01:42.680 +and set up nicely for your demo. + +00:01:42.680 --> 00:01:45.040 +The first demo is the demo + +00:01:45.040 --> 00:01:46.960 +where I'm going to show you + +00:01:46.960 --> 00:01:48.480 +how I'm working with links + +00:01:48.480 --> 00:01:50.120 +between arbitrary headings. + +00:01:50.120 --> 00:01:52.440 +It consists of two commands, + +00:01:52.440 --> 00:01:55.480 +org-super-links-quick-insert-inline-link, + +00:01:55.480 --> 00:01:56.640 +and the second one is + +00:01:56.640 --> 00:01:59.160 +org-super-links-quick-insert-drawer-link. + +00:01:59.160 --> 00:02:01.040 +So the difference is, + +00:02:01.040 --> 00:02:03.720 +the first one is an inline link, + +00:02:03.720 --> 00:02:07.640 +and the second one only depends + +00:02:07.640 --> 00:02:09.960 +on the drawers of the headings. + +00:02:09.960 --> 00:02:12.800 +So let's show you what I mean. + +00:02:12.800 --> 00:02:15.240 +If I'm inserting here the inline link + +00:02:15.240 --> 00:02:18.680 +to the second one, which I have to choose + +00:02:18.680 --> 00:02:21.200 +from the result set here, + +00:02:21.200 --> 00:02:26.440 +you see that there is this second heading link + +00:02:26.440 --> 00:02:29.480 +included here in the first heading. + +00:02:29.480 --> 00:02:34.920 +Let's open up the first and second heading. + +00:02:34.920 --> 00:02:37.120 +You see that I can jump this link + +00:02:37.120 --> 00:02:40.520 +to the second heading. The first heading + +00:02:40.520 --> 00:02:42.000 +as well as the second heading + +00:02:42.000 --> 00:02:43.880 +get human readable IDs, + +00:02:43.880 --> 00:02:46.040 +which I personally prefer. + +00:02:46.040 --> 00:02:49.320 +The second one gets + +00:02:49.320 --> 00:02:51.600 +a backheading in a link drawer, + +00:02:51.600 --> 00:02:53.680 +which was created automatically. + +00:02:53.680 --> 00:02:57.440 +So this is a method where I link arbitrary headings, + +00:02:57.440 --> 00:02:59.167 +and that's the main reason + +00:02:59.168 --> 00:03:01.214 +why I personally don't need any + +00:03:01.215 --> 00:03:03.920 +Zettelkasten-based method like Org Roam. + +00:03:03.920 --> 00:03:08.600 +The next command which I want to show you + +00:03:08.600 --> 00:03:13.480 +is the link between those drawers. + +00:03:13.480 --> 00:03:17.720 +So in order to link the third to the fourth, + +00:03:17.720 --> 00:03:20.320 +I need to look for the fourth. + +00:03:20.320 --> 00:03:24.200 +In this case, you do not see + +00:03:24.200 --> 00:03:27.400 +any inline link like here above, + +00:03:27.400 --> 00:03:31.520 +but you see the :PROPERTIES: drawers + +00:03:31.520 --> 00:03:35.400 +and the :LINKS: drawers in both headings. + +00:03:35.400 --> 00:03:38.480 +So there is a forward- and a back-link + +00:03:38.480 --> 00:03:40.200 +between those two headings, + +00:03:40.200 --> 00:03:42.920 +and if you see a links drawer + +00:03:42.920 --> 00:03:45.440 +you know that there are + +00:03:45.440 --> 00:03:47.560 +linked headings you can follow. + +00:03:47.560 --> 00:03:51.640 +I do find this method very very handy. + +00:03:51.640 --> 00:03:53.600 +Of course, this doesn't only work + +00:03:53.600 --> 00:03:57.120 +within one single Org mode file. + +00:03:57.120 --> 00:04:01.440 +It works between arbitrary Org mode files + +00:04:01.440 --> 00:04:02.633 +as long as they are + +00:04:02.634 --> 00:04:05.760 +part of your Org Mode agenda list. + +00:04:05.760 --> 00:04:08.280 +So that was the first heading + +00:04:08.280 --> 00:04:09.960 +with the bi-directional links. + +00:04:09.960 --> 00:04:11.640 +The second one is a little bit + +00:04:11.640 --> 00:04:13.080 +more complicated than that + +00:04:13.080 --> 00:04:17.280 +because I show you how I'm working with projects. + +00:04:17.280 --> 00:04:19.533 +Usually, I start the project + +00:04:19.534 --> 00:04:22.080 +by adding a "Why?" statement + +00:04:22.080 --> 00:04:25.200 +so that I remember why this project + +00:04:25.200 --> 00:04:27.440 +needs to be done in the first place. + +00:04:27.440 --> 00:04:32.280 +I do a brainstorming on the tasks + +00:04:32.280 --> 00:04:33.933 +that need to be done in the project + +00:04:33.934 --> 00:04:36.280 +as a simple list. + +00:04:36.280 --> 00:04:39.360 +With this handy command (C-c *), + +00:04:39.360 --> 00:04:43.840 +I'm converting it to a list of Org mode headings. + +00:04:43.840 --> 00:04:47.040 +Now let's add the NEXT keyword, + +00:04:47.040 --> 00:04:49.000 +which is my default to-do keyword, + +00:04:49.001 --> 00:04:49.760 +to the first heading. + +00:04:49.760 --> 00:04:53.320 +You notice that there is a CREATED property + +00:04:53.320 --> 00:04:56.480 +which is not relevant to the demo itself, + +00:04:56.480 --> 00:04:57.840 +but it's part of my setup. + +00:04:57.840 --> 00:05:00.840 +I really like those created headings + +00:05:00.840 --> 00:05:03.640 +because when I add arbitrary headings, + +00:05:03.640 --> 00:05:07.680 +this CREATED property is added automatically. + +00:05:07.680 --> 00:05:11.480 +So now I want to define a dependency + +00:05:11.480 --> 00:05:12.967 +between "Empty garage" + +00:05:12.968 --> 00:05:14.800 +and "Paint walls and floor." + +00:05:14.800 --> 00:05:18.480 +I do that by invoking my command here, + +00:05:18.480 --> 00:05:22.520 +and look for the "Paint walls" heading. + +00:05:22.520 --> 00:05:28.600 +In this dialogue, you may add a scheduled date + +00:05:28.600 --> 00:05:30.233 +and/or a deadline date + +00:05:30.234 --> 00:05:34.240 +and/or a to-do statement. For this demo + +00:05:34.240 --> 00:05:37.640 +I only choose the to-do keyword. + +00:05:37.640 --> 00:05:39.400 +You notice that there is + +00:05:39.400 --> 00:05:41.000 +this TRIGGER property added. + +00:05:41.000 --> 00:05:43.280 +That's default behavior of org-edna + +00:05:43.280 --> 00:05:47.200 +which is managing the dependencies, in my case. + +00:05:47.200 --> 00:05:51.600 +In the other one, there is this BLOCKER property. + +00:05:51.600 --> 00:05:55.360 +It's very handy to know that those IDs + +00:05:55.360 --> 00:05:57.880 +might be used for jumping + +00:05:57.880 --> 00:06:00.640 +between those dependencies again. + +00:06:00.640 --> 00:06:03.600 +Those two headings don't have to be necessarily + +00:06:03.600 --> 00:06:05.560 +in the very same Org Mode file. + +00:06:05.560 --> 00:06:07.920 +They may be scattered around + +00:06:07.920 --> 00:06:11.000 +your Org Mode agenda files all over the place. + +00:06:11.000 --> 00:06:16.160 +So continuing this definition of dependency + +00:06:16.160 --> 00:06:19.040 +between the second and the third one... + +00:06:19.040 --> 00:06:23.000 +I'm using the search "Bring back stuff"... + +00:06:23.000 --> 00:06:24.800 +the search functionality... + +00:06:24.800 --> 00:06:28.800 +I choose the NEXT keyword here, its dependency. + +00:06:28.800 --> 00:06:32.480 +The same holds true for the last two. + +00:06:32.480 --> 00:06:37.400 +"Is painted", for example. I'm going to use + +00:06:37.400 --> 00:06:39.320 +the NEXT keyword again. + +00:06:39.320 --> 00:06:44.520 +I tend to use the last task of any project + +00:06:44.520 --> 00:06:47.120 +to close the overall project. + +00:06:47.120 --> 00:06:49.880 +So if I show you this one, + +00:06:49.880 --> 00:06:57.040 +I'm using the dependency to "Garage" project, + +00:06:57.040 --> 00:07:02.200 +and this time I'm using the DONE keyword. + +00:07:02.200 --> 00:07:04.920 +Of course, the properties + +00:07:04.920 --> 00:07:07.920 +look like that all the time, + +00:07:07.920 --> 00:07:11.640 +so there is a trigger from the first task + +00:07:11.640 --> 00:07:13.920 +to the second one, and there is a blocker + +00:07:13.920 --> 00:07:17.120 +from the second one back to the first one, + +00:07:17.120 --> 00:07:21.640 +and when I'm actually doing the project, + +00:07:21.640 --> 00:07:25.520 +I may now mark the first task as DONE, + +00:07:25.520 --> 00:07:28.360 +and you notice that the second one + +00:07:28.360 --> 00:07:31.440 +automatically gets a next keyword. + +00:07:31.440 --> 00:07:34.600 +This happened, of course, for all those tasks. + +00:07:34.600 --> 00:07:38.920 +The neat thing is when I close the last one, + +00:07:38.920 --> 00:07:42.760 +the overall project gets its DONE keyword as well. + +00:07:42.760 --> 00:07:46.360 +So this is how I'm working with + +00:07:46.360 --> 00:07:49.120 +projects and dependencies. + +00:07:49.120 --> 00:07:53.720 +Most of the time, task dependencies + +00:07:53.720 --> 00:07:58.160 +are not even within the same Org Mode subheading, + +00:07:58.160 --> 00:08:01.600 +let's say. Also, I'm using dependencies + +00:08:01.600 --> 00:08:03.720 +between different Org Mode files. + +00:08:03.720 --> 00:08:07.160 +This is a very, very cool way of defining + +00:08:07.160 --> 00:08:10.040 +what to do next in a project, + +00:08:10.040 --> 00:08:12.667 +without looking for tasks + +00:08:12.668 --> 00:08:15.640 +that can't be done at that stage. + +00:08:15.640 --> 00:08:20.240 +You can have a look at the details of the demo + +00:08:20.240 --> 00:08:23.800 +by checking out the files in the repository. + +00:08:23.800 --> 00:08:27.080 +That's it for the demo, + +00:08:27.080 --> 00:08:30.720 +and therefore I thank you for your patience. + +00:08:30.720 --> 00:08:32.160 +I wish you good luck, + +00:08:32.160 --> 00:08:39.520 +and I hope that I could show you one or two tricks + +00:08:39.520 --> 00:08:42.080 +that you can add to your Org Mode setup + +00:08:42.080 --> 00:08:47.040 +in order to help you with your daily work. + +00:08:47.040 --> 00:08:56.000 +So bye from me, till next time. diff --git a/2022/info/orgsuperlinks-after.md b/2022/info/orgsuperlinks-after.md index 8d7b533d..6f4d5cac 100644 --- a/2022/info/orgsuperlinks-after.md +++ b/2022/info/orgsuperlinks-after.md @@ -1,6 +1,182 @@ + +# Transcript + +[[!template new="1" text="""Hello, my name is Karl Voit""" start="00:00:00.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and I'm going to show you a little demo""" start="00:00:05.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""on how I'm working with links""" start="00:00:08.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between arbitrary headings""" start="00:00:10.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and how I define dependencies between tasks""" start="00:00:12.760" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""when I'm working with projects and so forth.""" start="00:00:16.240" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""For that purpose, I've created a repository""" start="00:00:18.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""that contains the files we are going to work with,""" start="00:00:22.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""with the overall setup and so forth.""" start="00:00:27.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So you just have to download this repository""" start="00:00:30.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and you're able to replay everything""" start="00:00:32.840" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which you are going to see here.""" start="00:00:36.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""If you've downloaded the configuration of the demo,""" start="00:00:38.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""you see those files, and you start the Emacs""" start="00:00:44.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""with an empty configuration""" start="00:00:49.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and link demo file, like that.""" start="00:00:52.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So let me just briefly increase the font size.""" start="00:00:59.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Setting up the demo is easy.""" start="00:01:03.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I've done the key visualization,""" start="00:01:05.760" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""the webcam part, and I've started the Emacs""" start="00:01:08.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and increased the font size.""" start="00:01:11.840" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""And the last thing and the most important thing""" start="00:01:13.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""you need to do here""" start="00:01:17.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""is executing the babel block,""" start="00:01:18.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which consists of more or less dirty Elisp code""" start="00:01:20.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""that installs the necessary packages, functions,""" start="00:01:23.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and bindings required in this demo.""" start="00:01:27.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""You need to acknowledge the execution""" start="00:01:29.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""with yes and return, and after a couple of seconds,""" start="00:01:32.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""everything is downloaded""" start="00:01:36.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and set up nicely for your demo.""" start="00:01:37.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""The first demo is the demo""" start="00:01:42.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""where I'm going to show you""" start="00:01:45.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""how I'm working with links""" start="00:01:46.960" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between arbitrary headings.""" start="00:01:48.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""It consists of two commands,""" start="00:01:50.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""org-super-links-quick-insert-inline-link,""" start="00:01:52.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and the second one is""" start="00:01:55.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""org-super-links-quick-insert-drawer-link.""" start="00:01:56.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So the difference is,""" start="00:01:59.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""the first one is an inline link,""" start="00:02:01.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and the second one only depends""" start="00:02:03.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""on the drawers of the headings.""" start="00:02:07.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So let's show you what I mean.""" start="00:02:09.960" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""If I'm inserting here the inline link""" start="00:02:12.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""to the second one, which I have to choose""" start="00:02:15.240" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""from the result set here,""" start="00:02:18.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""you see that there is this second heading link""" start="00:02:21.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""included here in the first heading.""" start="00:02:26.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Let's open up the first and second heading.""" start="00:02:29.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""You see that I can jump this link""" start="00:02:34.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""to the second heading. The first heading""" start="00:02:37.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""as well as the second heading""" start="00:02:40.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""get human readable IDs,""" start="00:02:42.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which I personally prefer.""" start="00:02:43.880" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""The second one gets""" start="00:02:46.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""a backheading in a link drawer,""" start="00:02:49.320" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which was created automatically.""" start="00:02:51.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So this is a method where I link arbitrary headings,""" start="00:02:53.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and that's the main reason""" start="00:02:57.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""why I personally don't need any""" start="00:02:59.168" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Zettelkasten-based method like Org Roam.""" start="00:03:01.215" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""The next command which I want to show you""" start="00:03:03.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""is the link between those drawers.""" start="00:03:08.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So in order to link the third to the fourth,""" start="00:03:13.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I need to look for the fourth.""" start="00:03:17.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""In this case, you do not see""" start="00:03:20.320" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""any inline link like here above,""" start="00:03:24.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""but you see the :PROPERTIES: drawers""" start="00:03:27.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and the :LINKS: drawers in both headings.""" start="00:03:31.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So there is a forward- and a back-link""" start="00:03:35.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between those two headings,""" start="00:03:38.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and if you see a links drawer""" start="00:03:40.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""you know that there are""" start="00:03:42.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""linked headings you can follow.""" start="00:03:45.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I do find this method very very handy.""" start="00:03:47.560" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""Of course, this doesn't only work""" start="00:03:51.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""within one single Org mode file.""" start="00:03:53.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""It works between arbitrary Org mode files""" start="00:03:57.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""as long as they are""" start="00:04:01.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""part of your Org Mode agenda list.""" start="00:04:02.634" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So that was the first heading""" start="00:04:05.760" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""with the bi-directional links.""" start="00:04:08.280" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""The second one is a little bit""" start="00:04:09.960" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""more complicated than that""" start="00:04:11.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""because I show you how I'm working with projects.""" start="00:04:13.080" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Usually, I start the project""" start="00:04:17.280" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""by adding a "Why?" statement""" start="00:04:19.534" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""so that I remember why this project""" start="00:04:22.080" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""needs to be done in the first place.""" start="00:04:25.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I do a brainstorming on the tasks""" start="00:04:27.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""that need to be done in the project""" start="00:04:32.280" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""as a simple list.""" start="00:04:33.934" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""With this handy command (C-c *),""" start="00:04:36.280" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I'm converting it to a list of Org mode headings.""" start="00:04:39.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Now let's add the NEXT keyword,""" start="00:04:43.840" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which is my default to-do keyword,""" start="00:04:47.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""to the first heading.""" start="00:04:49.001" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""You notice that there is a CREATED property""" start="00:04:49.760" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which is not relevant to the demo itself,""" start="00:04:53.320" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""but it's part of my setup.""" start="00:04:56.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I really like those created headings""" start="00:04:57.840" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""because when I add arbitrary headings,""" start="00:05:00.840" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""this CREATED property is added automatically.""" start="00:05:03.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""So now I want to define a dependency""" start="00:05:07.680" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between "Empty garage"""" start="00:05:11.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and "Paint walls and floor."""" start="00:05:12.968" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I do that by invoking my command here,""" start="00:05:14.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and look for the "Paint walls" heading.""" start="00:05:18.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""In this dialogue, you may add a scheduled date""" start="00:05:22.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and/or a deadline date""" start="00:05:28.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and/or a to-do statement. For this demo""" start="00:05:30.234" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I only choose the to-do keyword.""" start="00:05:34.240" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""You notice that there is""" start="00:05:37.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""this TRIGGER property added.""" start="00:05:39.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""That's default behavior of org-edna""" start="00:05:41.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""which is managing the dependencies, in my case.""" start="00:05:43.280" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""In the other one, there is this BLOCKER property.""" start="00:05:47.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""It's very handy to know that those IDs""" start="00:05:51.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""might be used for jumping""" start="00:05:55.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between those dependencies again.""" start="00:05:57.880" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Those two headings don't have to be necessarily""" start="00:06:00.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""in the very same Org Mode file.""" start="00:06:03.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""They may be scattered around""" start="00:06:05.560" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""your Org Mode agenda files all over the place.""" start="00:06:07.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So continuing this definition of dependency""" start="00:06:11.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between the second and the third one...""" start="00:06:16.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I'm using the search "Bring back stuff"...""" start="00:06:19.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""the search functionality...""" start="00:06:23.000" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I choose the NEXT keyword here, its dependency.""" start="00:06:24.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""The same holds true for the last two.""" start="00:06:28.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text=""""Is painted", for example. I'm going to use""" start="00:06:32.480" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""the NEXT keyword again.""" start="00:06:37.400" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""I tend to use the last task of any project""" start="00:06:39.320" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""to close the overall project.""" start="00:06:44.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So if I show you this one,""" start="00:06:47.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I'm using the dependency to "Garage" project,""" start="00:06:49.880" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and this time I'm using the DONE keyword.""" start="00:06:57.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""Of course, the properties""" start="00:07:02.200" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""look like that all the time,""" start="00:07:04.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""so there is a trigger from the first task""" start="00:07:07.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""to the second one, and there is a blocker""" start="00:07:11.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""from the second one back to the first one,""" start="00:07:13.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and when I'm actually doing the project,""" start="00:07:17.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I may now mark the first task as DONE,""" start="00:07:21.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and you notice that the second one""" start="00:07:25.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""automatically gets a next keyword.""" start="00:07:28.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""This happened, of course, for all those tasks.""" start="00:07:31.440" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""The neat thing is when I close the last one,""" start="00:07:34.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""the overall project gets its DONE keyword as well.""" start="00:07:38.920" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So this is how I'm working with""" start="00:07:42.760" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""projects and dependencies.""" start="00:07:46.360" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""Most of the time, task dependencies""" start="00:07:49.120" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""are not even within the same Org Mode subheading,""" start="00:07:53.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""let's say. Also, I'm using dependencies""" start="00:07:58.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""between different Org Mode files.""" start="00:08:01.600" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""This is a very, very cool way of defining""" start="00:08:03.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""what to do next in a project,""" start="00:08:07.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""without looking for tasks""" start="00:08:10.040" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""that can't be done at that stage.""" start="00:08:12.668" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template new="1" text="""You can have a look at the details of the demo""" start="00:08:15.640" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""by checking out the files in the repository.""" start="00:08:20.240" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""That's it for the demo,""" start="00:08:23.800" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and therefore I thank you for your patience.""" start="00:08:27.080" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""I wish you good luck,""" start="00:08:30.720" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""and I hope that I could show you one or two tricks""" start="00:08:32.160" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""that you can add to your Org Mode setup""" start="00:08:39.520" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""in order to help you with your daily work.""" start="00:08:42.080" video="mainVideo-orgsuperlinks" id="subtitle"]] +[[!template text="""So bye from me, till next time.""" start="00:08:47.040" video="mainVideo-orgsuperlinks" id="subtitle"]] + + + +Captioner: sachac Questions or comments? Please e-mail [EmacsConf22@Karl-Voit.at](mailto:EmacsConf22@Karl-Voit.at?subject=Comment%20for%20EmacsConf%202022%20orgsuperlinks%3A%20Linking%20headings%20with%20org-super-links%20%28poor-man%27s%20Zettelkasten%29) diff --git a/2022/info/orgsuperlinks-before.md b/2022/info/orgsuperlinks-before.md index 2a520f49..fe24a321 100644 --- a/2022/info/orgsuperlinks-before.md +++ b/2022/info/orgsuperlinks-before.md @@ -3,16 +3,37 @@ In this talk, Karl Voit shares how he uses org-edna and org-super-links to manag The following image shows where the talk is in the schedule for Sun 2022-12-04. Solid lines show talks with Q&A via BigBlueButton. Dashed lines show talks with Q&A via IRC or Etherpad.
- Schedule for Sunday Sunday 9:00- 9:05 Sunday opening remarks sun-open 9:05- 9:25 Results of the 2022 Emacs Survey survey 9:35- 9:45 This Year in Org orgyear 9:55-10:20 Build a Zettelkasten with the Hyperbole Rolodex rolodex 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten) orgsuperlinks 11:10-11:20 orgvm: a simple HTTP server for org orgvm 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode hyperorg 1:50- 2:15 Org workflows for developers workflows 2:35- 2:55 GRAIL---A Generalized Representation and Aggregation of Information Layers grail 3:25- 3:45 Putting Org Mode on the Indieweb indieweb 4:05- 4:15 Emacs development updates devel 4:25- 4:35 Fanfare for the Common Emacs User fanfare 4:50- 5:00 Sunday closing remarks sun-close 10:00-10:25 rde Emacs introduction rde 10:50-11:05 justl: Driving recipes within Emacs justl 11:15-11:35 What I'd like to see in Emacs rms 1:00- 1:15 Getting detached from Emacs detached 1:40- 1:55 Top 10 reasons why you should be using Eshell eshell 2:20- 2:40 Emacs was async before async was cool async 3:15- 3:35 The Wheels on D-Bus dbus 4:00- 4:10 Pre-localizing Emacs localizing 4:30- 4:35 Short hyperlinks to Python docs python 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM + Schedule for Sunday Sunday 9:00- 9:05 Sunday opening remarks sun-open 9:06- 9:26 Results of the 2022 Emacs Survey survey 9:35- 9:45 This Year in Org orgyear 9:57-10:22 Build a Zettelkasten with the Hyperbole Rolodex rolodex 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten) orgsuperlinks 11:10-11:20 orgvm: a simple HTTP server for org orgvm 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode hyperorg 1:50- 2:15 Org workflows for developers workflows 2:35- 2:55 GRAIL---A Generalized Representation and Aggregation of Information Layers grail 3:25- 3:45 Putting Org Mode on the Indieweb indieweb 4:05- 4:15 Emacs development updates devel 4:25- 4:35 Fanfare for the Common Emacs User fanfare 4:50- 5:00 Sunday closing remarks sun-close 10:00-10:25 rde Emacs introduction rde 10:50-11:05 justl: Driving recipes within Emacs justl 11:15-11:35 What I'd like to see in Emacs rms 1:01- 1:16 Getting detached from Emacs detached 1:40- 1:55 Top 10 reasons why you should be using Eshell eshell 2:20- 2:40 Emacs was async before async was cool async 3:15- 3:35 The Wheels on D-Bus dbus 4:00- 4:10 Pre-localizing Emacs localizing 4:30- 4:35 Short hyperlinks to Python docs python 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM
[[!toc ]] Format: 9-min talk followed by live Q&A () Etherpad: Discuss on IRC: [#emacsconf-gen](https://chat.emacsconf.org/?join=emacsconf,emacsconf-gen) -Status: Talk captioned +Status: Q&A starting (not yet open for joining)
Times in different timezones:
Sunday, Dec 4 2022, ~10:40 AM - 10:50 AM EST (US/Eastern)
which is the same as:
Sunday, Dec 4 2022, ~9:40 AM - 9:50 AM CST (US/Central)
Sunday, Dec 4 2022, ~8:40 AM - 8:50 AM MST (US/Mountain)
Sunday, Dec 4 2022, ~7:40 AM - 7:50 AM PST (US/Pacific)
Sunday, Dec 4 2022, ~3:40 PM - 3:50 PM UTC
Sunday, Dec 4 2022, ~4:40 PM - 4:50 PM CET (Europe/Paris)
Sunday, Dec 4 2022, ~5:40 PM - 5:50 PM EET (Europe/Athens)
Sunday, Dec 4 2022, ~9:10 PM - 9:20 PM IST (Asia/Kolkata)
Sunday, Dec 4 2022, ~11:40 PM - 11:50 PM +08 (Asia/Singapore)
Monday, Dec 5 2022, ~12:40 AM - 12:50 AM JST (Asia/Tokyo)
Find out how to watch and participate
+[[!template id="vid" vidid="orgsuperlinks-mainVideo" src="https://media.emacsconf.org/2022/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.webm" poster="https://media.emacsconf.org/2022/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.png" captions="""""" +size="38M" duration="8:56" other_resources="""[Download --main.webm (38MB)](https://media.emacsconf.org/2022/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.webm) +[Download --main.vtt](https://media.emacsconf.org/2022/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main.vtt) +[Download --main--chapters.vtt](https://media.emacsconf.org/2022/emacsconf-2022-orgsuperlinks--linking-headings-with-orgsuperlinks-poormans-zettelkasten--karl-voit--main--chapters.vtt) +[View transcript](https://emacsconf.org/2022/talks/orgsuperlinks#orgsuperlinks-mainVideo-transcript) +[View on Toobnix](https://toobnix.org/w/ff1YxBEgR9LxJ51trJwyYk) +"""]] +[[!template id="chapters" vidid="orgsuperlinks-mainVideo" data=""" +00:00:00.000 Introduction +00:18.680 Setting up the demo +01:42.680 Linking between headings +03:03.920 Link drawers +03:51.640 Bi-directional links +04:09.960 Projects +05:07.680 Dependencies +05:51.600 Jumping between dependencies +06:39.320 Closing the project +07:49.120 Task dependencies between files +08:15.640 Conclusion + +"""]] # Description diff --git a/2022/qa.md b/2022/qa.md index f79927e1..559045a1 100644 --- a/2022/qa.md +++ b/2022/qa.md @@ -5,6 +5,7 @@ ## Notes for participants +- You can ask questions via the text chat or by voice. Voice and webcam are totally optional. - Please stay muted until it's your turn. - To raise your hand: 1. Open the participant list. If it's hidden, use the person icon in the top left. diff --git a/2022/schedule-2022-12-04.md b/2022/schedule-2022-12-04.md index e762eddd..99fd81a4 100644 --- a/2022/schedule-2022-12-04.md +++ b/2022/schedule-2022-12-04.md @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/2022/schedule-image.md b/2022/schedule-image.md index 948375ac..1f892a62 100644 --- a/2022/schedule-image.md +++ b/2022/schedule-image.md @@ -1 +1 @@ -
Graphical view of the schedule Schedule for Saturday Saturday 9:00- 9:05 Saturday opening remarks sat-open 9:05- 9:25 Emacs journalism (or everything's a nail if you hit it with Emacs) journalism 9:45- 9:55 Back to school with Emacs school 10:05-10:15 How to incorporate handwritten notes into Emacs Orgmode handwritten 10:45-11:05 Writing and organizing literature notes for scientific writing science 11:25-11:35 The Emacs Buddy initiative buddy 1:00- 1:20 Attending and organizing Emacs meetups meetups 1:40- 1:55 Linking personal info with Hyperbole implicit buttons buttons 2:15- 2:40 Real estate and Org table formulas realestate 3:00- 3:25 Health data journaling and visualization with Org Mode and gnuplot health 3:45- 4:05 Edit live Jupyter notebook cells with Emacs jupyter 4:50- 4:55 Saturday closing remarks sat-close 10:00-10:15 Tree-sitter beyond syntax highlighting treesitter 10:25-10:45 lsp-bridge: a smooth-as-butter asynchronous LSP client lspbridge 10:55-11:15 asm-blox: a game based on WebAssembly that no one asked for asmblox 11:25-11:35 Emacs should become a Wayland compositor wayland 1:00- 1:25 Using SQLite as a data source: a framework and an example sqlite 1:50- 2:30 Revisiting the anatomy of Emacs mail user agents mail 2:50- 3:10 Maintaining the Maintainers: Attribution as an Economic Model for Open Source maint 3:35- 3:40 Bidirectional links with eev eev 4:05- 4:35 Haskell code exploration with Emacs haskell 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM Schedule for Sunday Sunday 9:00- 9:05 Sunday opening remarks sun-open 9:06- 9:26 Results of the 2022 Emacs Survey survey 9:35- 9:45 This Year in Org orgyear 9:57-10:22 Build a Zettelkasten with the Hyperbole Rolodex rolodex 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten) orgsuperlinks 11:10-11:20 orgvm: a simple HTTP server for org orgvm 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode hyperorg 1:50- 2:15 Org workflows for developers workflows 2:35- 2:55 GRAIL---A Generalized Representation and Aggregation of Information Layers grail 3:25- 3:45 Putting Org Mode on the Indieweb indieweb 4:05- 4:15 Emacs development updates devel 4:25- 4:35 Fanfare for the Common Emacs User fanfare 4:50- 5:00 Sunday closing remarks sun-close 10:00-10:25 rde Emacs introduction rde 10:50-11:05 justl: Driving recipes within Emacs justl 11:15-11:35 What I'd like to see in Emacs rms 1:01- 1:16 Getting detached from Emacs detached 1:40- 1:55 Top 10 reasons why you should be using Eshell eshell 2:20- 2:40 Emacs was async before async was cool async 3:15- 3:35 The Wheels on D-Bus dbus 4:00- 4:10 Pre-localizing Emacs localizing 4:30- 4:35 Short hyperlinks to Python docs python 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM
\ No newline at end of file +
Graphical view of the schedule Schedule for Saturday Saturday 9:00- 9:05 Saturday opening remarks sat-open 9:05- 9:25 Emacs journalism (or everything's a nail if you hit it with Emacs) journalism 9:45- 9:55 Back to school with Emacs school 10:05-10:15 How to incorporate handwritten notes into Emacs Orgmode handwritten 10:45-11:05 Writing and organizing literature notes for scientific writing science 11:25-11:35 The Emacs Buddy initiative buddy 1:00- 1:20 Attending and organizing Emacs meetups meetups 1:40- 1:55 Linking personal info with Hyperbole implicit buttons buttons 2:15- 2:40 Real estate and Org table formulas realestate 3:00- 3:25 Health data journaling and visualization with Org Mode and gnuplot health 3:45- 4:05 Edit live Jupyter notebook cells with Emacs jupyter 4:50- 4:55 Saturday closing remarks sat-close 10:00-10:15 Tree-sitter beyond syntax highlighting treesitter 10:25-10:45 lsp-bridge: a smooth-as-butter asynchronous LSP client lspbridge 10:55-11:15 asm-blox: a game based on WebAssembly that no one asked for asmblox 11:25-11:35 Emacs should become a Wayland compositor wayland 1:00- 1:25 Using SQLite as a data source: a framework and an example sqlite 1:50- 2:30 Revisiting the anatomy of Emacs mail user agents mail 2:50- 3:10 Maintaining the Maintainers: Attribution as an Economic Model for Open Source maint 3:35- 3:40 Bidirectional links with eev eev 4:05- 4:35 Haskell code exploration with Emacs haskell 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM Schedule for Sunday Sunday 9:00- 9:05 Sunday opening remarks sun-open 9:06- 9:26 Results of the 2022 Emacs Survey survey 9:35- 9:45 This Year in Org orgyear 9:57-10:22 Build a Zettelkasten with the Hyperbole Rolodex rolodex 10:40-10:50 Linking headings with org-super-links (poor-man's Zettelkasten) orgsuperlinks 11:10-11:20 orgvm: a simple HTTP server for org orgvm 1:00- 1:30 Powerful productivity with Hyperbole and Org Mode hyperorg 1:50- 2:15 Org workflows for developers workflows 2:35- 2:55 GRAIL---A Generalized Representation and Aggregation of Information Layers grail 3:25- 3:45 Putting Org Mode on the Indieweb indieweb 4:05- 4:15 Emacs development updates devel 4:25- 4:35 Fanfare for the Common Emacs User fanfare 4:50- 5:00 Sunday closing remarks sun-close 10:00-10:25 rde Emacs introduction rde 10:50-11:05 justl: Driving recipes within Emacs justl 11:15-11:35 What I'd like to see in Emacs rms 1:01- 1:16 Getting detached from Emacs detached 1:40- 1:55 Top 10 reasons why you should be using Eshell eshell 2:20- 2:40 Emacs was async before async was cool async 3:15- 3:35 The Wheels on D-Bus dbus 4:00- 4:10 Pre-localizing Emacs localizing 4:30- 4:35 Short hyperlinks to Python docs python 9 AM 10 AM 11 AM 12 PM 1 PM 2 PM 3 PM 4 PM 5 PM
\ No newline at end of file -- cgit v1.2.3