From 342e15ec802e9fe5bbfee0d70265931d4186cb24 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Thu, 15 Dec 2022 01:16:15 -0500 Subject: Automated commit --- ...22-dbus--the-wheels-on-dbus--ian-eure--main.vtt | 34 +++++++++++----------- 2022/info/dbus-after.md | 34 +++++++++++----------- 2022/schedule-2022-12-03.md | 2 +- 2022/schedule-2022-12-04.md | 2 +- 2022/schedule-image.md | 2 +- 5 files changed, 37 insertions(+), 37 deletions(-) diff --git a/2022/captions/emacsconf-2022-dbus--the-wheels-on-dbus--ian-eure--main.vtt b/2022/captions/emacsconf-2022-dbus--the-wheels-on-dbus--ian-eure--main.vtt index 7420e30c..c824d2db 100644 --- a/2022/captions/emacsconf-2022-dbus--the-wheels-on-dbus--ian-eure--main.vtt +++ b/2022/captions/emacsconf-2022-dbus--the-wheels-on-dbus--ian-eure--main.vtt @@ -325,10 +325,10 @@ If you want to interact with D-Bus from Emacs, it's fairly straightforward. 00:04:30.080 --> 00:04:33.199 -There's a collection of functions like `dbus-get-property' +There's a collection of functions like dbus-get-property 00:04:33.200 --> 00:04:35.039 -or `dbus-call-method', et cetera, +or dbus-call-method, et cetera, 00:04:35.040 --> 00:04:37.639 and they almost all take this same set @@ -416,7 +416,7 @@ of mixing up which thing is what. So this sets the endpoint to that object, 00:05:41.480 --> 00:05:43.119 -calls `debase-get-property' on it, +calls debase-get-property on it, 00:05:43.120 --> 00:05:45.039 and you can see it works exactly the same. @@ -472,7 +472,7 @@ you often find yourself needing to look at a different aspect of that object. 00:06:22.480 --> 00:06:26.599 -This is supported with the built-in EIEIO `clone' method, +This is supported with the built-in EIEIO clone method, 00:06:26.600 --> 00:06:28.279 which takes an object @@ -548,7 +548,7 @@ You can also, if you don't want to use the object, you can provide the raw argument list. 00:07:18.240 --> 00:07:20.919 -Under the covers, this is basically an `flet' +Under the covers, this is basically an flet 00:07:20.920 --> 00:07:23.279 where you're currying all of these functions @@ -624,7 +624,7 @@ Let's generate some Elisp code for that hostname1 service we were interacting with before. 00:08:19.640 --> 00:08:23.119 -`debase-gen-class' is the generation class, +debase-gen-class is the generation class, 00:08:23.120 --> 00:08:26.079 and it says to create a class that matches this interface, @@ -636,16 +636,16 @@ named "hostname1", and then the rest of these arguments are the same ones to target the endpoint, 00:08:31.000 --> 00:08:32.919 -just like with `debase-object', +just like with debase-object, 00:08:32.920 --> 00:08:34.759 -because it extends `debase-object'. +because it extends debase-object. 00:08:34.760 --> 00:08:37.679 -`debase-gen-code' is a generic function +debase-gen-code is a generic function 00:08:37.680 --> 00:08:40.119 -that takes any `debase-gen' class. +that takes any debase-gen class. 00:08:40.120 --> 00:08:42.279 There are different classes for functions, @@ -666,7 +666,7 @@ look about like we would expect: creates a defclass named "hostname1", 00:08:52.160 --> 00:08:53.879 -which extends `debase-object', +which extends debase-object, 00:08:53.880 --> 00:08:56.639 has all of the slots and accessors defined, @@ -692,7 +692,7 @@ if you like. NOTE Debase: ObjectManager 00:09:08.680 --> 00:09:12.279 -Debase also comes with `debase-objectmanager', +Debase also comes with "debase-objectmanager", 00:09:12.280 --> 00:09:15.399 which is convenience for the D-Bus ObjectManager interface. @@ -722,7 +722,7 @@ and by subscribing to the signals, you can be notified when they change. 00:09:33.000 --> 00:09:35.999 -`debase-objectmanager' keeps a local cache, +"debase-objectmanager" keeps a local cache, 00:09:36.000 --> 00:09:38.119 and will fire a callback on any change. @@ -829,7 +829,7 @@ of "password". I hit Enter, and it unlocks it, and it mounts it, 00:10:51.200 --> 00:10:53.319 -and it opens `dired' looking at it. +and it opens "dired" looking at it. 00:10:53.320 --> 00:10:54.439 And here's a little README. @@ -882,7 +882,7 @@ you can actually get results back from the remote operation. So here's some code. 00:11:32.000 --> 00:11:35.679 -Here's a `dbus-eval' function, which takes a string, +Here's a dbus-eval function, which takes a string, 00:11:35.680 --> 00:11:37.359 reads it, and evaluates it, @@ -891,7 +891,7 @@ reads it, and evaluates it, and returns whatever that value is. 00:11:39.360 --> 00:11:41.839 -Then we have a `debase-bind' block +Then we have a debase-bind block 00:11:41.840 --> 00:11:44.799 that sets up an object on the session bus. @@ -915,7 +915,7 @@ And we're gonna create this interface, org.gnu.Emacs.Eval, and then register a method called Eval 00:12:02.520 --> 00:12:04.759 -that calls that `dbus-eval' function. +that calls that dbus-eval function. 00:12:04.760 --> 00:12:08.119 Pretty straightforward, only a handful of lines of code. diff --git a/2022/info/dbus-after.md b/2022/info/dbus-after.md index 4eb95a1a..4b1f44f2 100644 --- a/2022/info/dbus-after.md +++ b/2022/info/dbus-after.md @@ -108,8 +108,8 @@ [[!template text="""and almost certainly only usable on Linux.""" start="00:04:22.040" video="mainVideo-dbus" id="subtitle"]] [[!template text="""If you want to interact with D-Bus from Emacs,""" start="00:04:24.440" video="mainVideo-dbus" id="subtitle"]] [[!template text="""it's fairly straightforward.""" start="00:04:28.920" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""There's a collection of functions like `dbus-get-property'""" start="00:04:30.080" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""or `dbus-call-method', et cetera,""" start="00:04:33.200" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""There's a collection of functions like dbus-get-property""" start="00:04:30.080" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""or dbus-call-method, et cetera,""" start="00:04:33.200" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and they almost all take this same set""" start="00:04:35.040" video="mainVideo-dbus" id="subtitle"]] [[!template text="""of four arguments at the beginning:""" start="00:04:37.640" video="mainVideo-dbus" id="subtitle"]] [[!template text="""bus, service, path, and interface.""" start="00:04:39.320" video="mainVideo-dbus" id="subtitle"]] @@ -137,7 +137,7 @@ [[!template text="""so there's never any chance""" start="00:05:35.600" video="mainVideo-dbus" id="subtitle"]] [[!template text="""of mixing up which thing is what.""" start="00:05:36.880" video="mainVideo-dbus" id="subtitle"]] [[!template text="""So this sets the endpoint to that object,""" start="00:05:38.560" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""calls `debase-get-property' on it,""" start="00:05:41.480" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""calls debase-get-property on it,""" start="00:05:41.480" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and you can see it works exactly the same.""" start="00:05:43.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""The thing that's really nice about this, though,""" start="00:05:45.040" video="mainVideo-dbus" id="subtitle"]] [[!template text="""is it knows that so many of these arguments""" start="00:05:47.360" video="mainVideo-dbus" id="subtitle"]] @@ -155,7 +155,7 @@ [[!template new="1" text="""Because so many objects have multiple interfaces,""" start="00:06:13.440" video="mainVideo-dbus" id="subtitle"]] [[!template text="""you often find yourself needing to look""" start="00:06:18.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""at a different aspect of that object.""" start="00:06:20.320" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""This is supported with the built-in EIEIO `clone' method,""" start="00:06:22.480" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""This is supported with the built-in EIEIO clone method,""" start="00:06:22.480" video="mainVideo-dbus" id="subtitle"]] [[!template text="""which takes an object""" start="00:06:26.600" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and a set of keyword arguments to replace.""" start="00:06:28.280" video="mainVideo-dbus" id="subtitle"]] [[!template text="""So in this case, we can see we're calling""" start="00:06:30.440" video="mainVideo-dbus" id="subtitle"]] @@ -179,7 +179,7 @@ [[!template text="""and it's still named meson.""" start="00:07:11.360" video="mainVideo-dbus" id="subtitle"]] [[!template new="1" text="""You can also, if you don't want to use the object,""" start="00:07:12.480" video="mainVideo-dbus" id="subtitle"]] [[!template text="""you can provide the raw argument list.""" start="00:07:16.320" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""Under the covers, this is basically an `flet'""" start="00:07:18.240" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""Under the covers, this is basically an flet""" start="00:07:18.240" video="mainVideo-dbus" id="subtitle"]] [[!template text="""where you're currying all of these functions""" start="00:07:20.920" video="mainVideo-dbus" id="subtitle"]] [[!template text="""so they start with those argument lists.""" start="00:07:23.280" video="mainVideo-dbus" id="subtitle"]] [[!template text="""And you can see I'm running on a Linux machine,""" start="00:07:25.440" video="mainVideo-dbus" id="subtitle"]] @@ -203,21 +203,21 @@ [[!template text="""so any feedback or contributions are very welcome.""" start="00:08:09.680" video="mainVideo-dbus" id="subtitle"]] [[!template new="1" text="""Let's generate some Elisp code""" start="00:08:14.200" video="mainVideo-dbus" id="subtitle"]] [[!template text="""for that hostname1 service we were interacting with before.""" start="00:08:16.920" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""`debase-gen-class' is the generation class,""" start="00:08:19.640" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""debase-gen-class is the generation class,""" start="00:08:19.640" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and it says to create a class that matches this interface,""" start="00:08:23.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""named "hostname1", and then the rest of these arguments""" start="00:08:26.080" video="mainVideo-dbus" id="subtitle"]] [[!template text="""are the same ones to target the endpoint,""" start="00:08:29.000" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""just like with `debase-object',""" start="00:08:31.000" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""because it extends `debase-object'.""" start="00:08:32.920" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""`debase-gen-code' is a generic function""" start="00:08:34.760" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""that takes any `debase-gen' class.""" start="00:08:37.680" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""just like with debase-object,""" start="00:08:31.000" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""because it extends debase-object.""" start="00:08:32.920" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""debase-gen-code is a generic function""" start="00:08:34.760" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""that takes any debase-gen class.""" start="00:08:37.680" video="mainVideo-dbus" id="subtitle"]] [[!template text="""There are different classes for functions,""" start="00:08:40.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""properties, et cetera,""" start="00:08:42.280" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and it creates all of the code for it.""" start="00:08:43.360" video="mainVideo-dbus" id="subtitle"]] [[!template text="""If we evaluate it, we can see the results""" start="00:08:45.480" video="mainVideo-dbus" id="subtitle"]] [[!template text="""look about like we would expect:""" start="00:08:48.280" video="mainVideo-dbus" id="subtitle"]] [[!template text="""creates a defclass named "hostname1",""" start="00:08:49.960" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""which extends `debase-object',""" start="00:08:52.160" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""which extends debase-object,""" start="00:08:52.160" video="mainVideo-dbus" id="subtitle"]] [[!template text="""has all of the slots and accessors defined,""" start="00:08:53.880" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and then methods that define everything""" start="00:08:56.640" video="mainVideo-dbus" id="subtitle"]] [[!template text="""that you might want to do with it, including documentation.""" start="00:08:59.320" video="mainVideo-dbus" id="subtitle"]] @@ -225,7 +225,7 @@ [[!template text="""but as I mentioned,""" start="00:09:04.760" video="mainVideo-dbus" id="subtitle"]] [[!template text="""you can provide an XML interface description instead,""" start="00:09:05.480" video="mainVideo-dbus" id="subtitle"]] [[!template text="""if you like.""" start="00:09:08.040" video="mainVideo-dbus" id="subtitle"]] -[[!template new="1" text="""Debase also comes with `debase-objectmanager',""" start="00:09:08.680" video="mainVideo-dbus" id="subtitle"]] +[[!template new="1" text="""Debase also comes with "debase-objectmanager",""" start="00:09:08.680" video="mainVideo-dbus" id="subtitle"]] [[!template text="""which is convenience for the D-Bus ObjectManager interface.""" start="00:09:12.280" video="mainVideo-dbus" id="subtitle"]] [[!template text="""This is used in a lot of places in D-Bus,""" start="00:09:15.400" video="mainVideo-dbus" id="subtitle"]] [[!template text="""where an object manages other objects.""" start="00:09:18.000" video="mainVideo-dbus" id="subtitle"]] @@ -235,7 +235,7 @@ [[!template text="""you can enumerate all of the network hardware,""" start="00:09:26.880" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and by subscribing to the signals,""" start="00:09:28.880" video="mainVideo-dbus" id="subtitle"]] [[!template text="""you can be notified when they change.""" start="00:09:31.040" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""`debase-objectmanager' keeps a local cache,""" start="00:09:33.000" video="mainVideo-dbus" id="subtitle"]] +[[!template text=""""debase-objectmanager" keeps a local cache,""" start="00:09:33.000" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and will fire a callback on any change.""" start="00:09:36.000" video="mainVideo-dbus" id="subtitle"]] [[!template text="""So it's the building block for that dynamic user interface,""" start="00:09:38.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""like you would see in a desktop system,""" start="00:09:41.240" video="mainVideo-dbus" id="subtitle"]] @@ -270,7 +270,7 @@ [[!template text="""In this case, I've chosen the very secure password""" start="00:10:43.520" video="mainVideo-dbus" id="subtitle"]] [[!template text="""of "password".""" start="00:10:46.600" video="mainVideo-dbus" id="subtitle"]] [[!template text="""I hit Enter, and it unlocks it, and it mounts it,""" start="00:10:47.560" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""and it opens `dired' looking at it.""" start="00:10:51.200" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""and it opens "dired" looking at it.""" start="00:10:51.200" video="mainVideo-dbus" id="subtitle"]] [[!template text="""And here's a little README.""" start="00:10:53.320" video="mainVideo-dbus" id="subtitle"]] [[!template text="""Let's see what it says.""" start="00:10:54.440" video="mainVideo-dbus" id="subtitle"]] [[!template text=""""Hello, EmacsConf."""" start="00:10:55.560" video="mainVideo-dbus" id="subtitle"]] @@ -287,10 +287,10 @@ [[!template text="""a sort of fire-and-forget system,""" start="00:11:25.000" video="mainVideo-dbus" id="subtitle"]] [[!template text="""you can actually get results back from the remote operation.""" start="00:11:26.680" video="mainVideo-dbus" id="subtitle"]] [[!template text="""So here's some code.""" start="00:11:30.120" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""Here's a `dbus-eval' function, which takes a string,""" start="00:11:32.000" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""Here's a dbus-eval function, which takes a string,""" start="00:11:32.000" video="mainVideo-dbus" id="subtitle"]] [[!template text="""reads it, and evaluates it,""" start="00:11:35.680" video="mainVideo-dbus" id="subtitle"]] [[!template text="""and returns whatever that value is.""" start="00:11:37.360" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""Then we have a `debase-bind' block""" start="00:11:39.360" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""Then we have a debase-bind block""" start="00:11:39.360" video="mainVideo-dbus" id="subtitle"]] [[!template text="""that sets up an object on the session bus.""" start="00:11:41.840" video="mainVideo-dbus" id="subtitle"]] [[!template text="""Again, that's my user login bus.""" start="00:11:44.800" video="mainVideo-dbus" id="subtitle"]] [[!template text="""It offers this D-Bus service Emacs.""" start="00:11:46.840" video="mainVideo-dbus" id="subtitle"]] @@ -298,7 +298,7 @@ [[!template text="""And again, the path is a constant in there.""" start="00:11:53.400" video="mainVideo-dbus" id="subtitle"]] [[!template text="""And we're gonna create this interface,""" start="00:11:55.440" video="mainVideo-dbus" id="subtitle"]] [[!template text="""org.gnu.Emacs.Eval, and then register a method called Eval""" start="00:11:57.160" video="mainVideo-dbus" id="subtitle"]] -[[!template text="""that calls that `dbus-eval' function.""" start="00:12:02.520" video="mainVideo-dbus" id="subtitle"]] +[[!template text="""that calls that dbus-eval function.""" start="00:12:02.520" video="mainVideo-dbus" id="subtitle"]] [[!template text="""Pretty straightforward, only a handful of lines of code.""" start="00:12:04.760" video="mainVideo-dbus" id="subtitle"]] [[!template text="""To test this out, we're going to use the dbus-send utility.""" start="00:12:08.120" video="mainVideo-dbus" id="subtitle"]] [[!template text="""This is a command line program that interacts with D-Bus.""" start="00:12:12.400" video="mainVideo-dbus" id="subtitle"]] diff --git a/2022/schedule-2022-12-03.md b/2022/schedule-2022-12-03.md index 373da653..7be2c17f 100644 --- a/2022/schedule-2022-12-03.md +++ b/2022/schedule-2022-12-03.md @@ -1 +1 @@ -
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
\ No newline at end of file +
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
\ No newline at end of file diff --git a/2022/schedule-2022-12-04.md b/2022/schedule-2022-12-04.md index 394445b5..201fad8b 100644 --- a/2022/schedule-2022-12-04.md +++ b/2022/schedule-2022-12-04.md @@ -1 +1 @@ -
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 +
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 diff --git a/2022/schedule-image.md b/2022/schedule-image.md index b27bb3df..81ce8057 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