summaryrefslogtreecommitdiffstats
path: root/2020
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2020/info/01.md21
-rw-r--r--2020/info/02.md19
-rw-r--r--2020/info/03.md44
-rw-r--r--2020/info/04.md12
-rw-r--r--2020/info/05.md16
-rw-r--r--2020/info/06.md3
-rw-r--r--2020/info/07.md35
-rw-r--r--2020/info/08.md20
-rw-r--r--2020/info/09.md26
-rw-r--r--2020/info/10.md14
-rw-r--r--2020/info/11.md6
-rw-r--r--2020/info/12.md23
-rw-r--r--2020/info/13.md27
-rw-r--r--2020/info/14.md25
-rw-r--r--2020/info/15.md11
-rw-r--r--2020/info/16.md24
-rw-r--r--2020/info/17.md22
-rw-r--r--2020/info/18.md33
-rw-r--r--2020/info/19.md14
-rw-r--r--2020/info/20.md14
-rw-r--r--2020/info/21.md50
-rw-r--r--2020/info/22.md65
-rw-r--r--2020/info/23.md10
-rw-r--r--2020/info/24.md22
-rw-r--r--2020/info/25.md21
-rw-r--r--2020/info/26.md16
-rw-r--r--2020/info/27.md8
-rw-r--r--2020/info/28.md23
-rw-r--r--2020/info/29.md65
-rw-r--r--2020/info/30.md10
-rw-r--r--2020/info/31.md24
-rw-r--r--2020/info/32.md16
-rw-r--r--2020/info/33.md8
-rw-r--r--2020/info/34.md6
-rw-r--r--2020/info/35.md10
-rw-r--r--2020/info/38.md2
-rw-r--r--2020/info/39.md2
-rw-r--r--2020/schedule/01.md30
-rw-r--r--2020/schedule/02.md28
-rw-r--r--2020/schedule/03.md53
-rw-r--r--2020/schedule/04.md21
-rw-r--r--2020/schedule/05.md25
-rw-r--r--2020/schedule/06.md12
-rw-r--r--2020/schedule/07.md44
-rw-r--r--2020/schedule/08.md29
-rw-r--r--2020/schedule/09.md35
-rw-r--r--2020/schedule/10.md23
-rw-r--r--2020/schedule/11.md15
-rw-r--r--2020/schedule/12.md32
-rw-r--r--2020/schedule/13.md36
-rw-r--r--2020/schedule/14.md34
-rw-r--r--2020/schedule/15.md20
-rw-r--r--2020/schedule/16.md33
-rw-r--r--2020/schedule/17.md31
-rw-r--r--2020/schedule/18.md42
-rw-r--r--2020/schedule/19.md23
-rw-r--r--2020/schedule/20.md23
-rw-r--r--2020/schedule/21.md59
-rw-r--r--2020/schedule/22.md74
-rw-r--r--2020/schedule/23.md19
-rw-r--r--2020/schedule/24.md31
-rw-r--r--2020/schedule/25.md30
-rw-r--r--2020/schedule/26.md25
-rw-r--r--2020/schedule/27.md17
-rw-r--r--2020/schedule/28.md32
-rw-r--r--2020/schedule/29.md74
-rw-r--r--2020/schedule/30.md19
-rw-r--r--2020/schedule/31.md33
-rw-r--r--2020/schedule/32.md25
-rw-r--r--2020/schedule/33.md17
-rw-r--r--2020/schedule/34.md15
-rw-r--r--2020/schedule/35.md19
-rw-r--r--2020/schedule/38.md11
-rw-r--r--2020/schedule/39.md11
-rw-r--r--2020/submissions.org32
75 files changed, 865 insertions, 1034 deletions
diff --git a/2020/info/01.md b/2020/info/01.md
new file mode 100644
index 00000000..edf4b527
--- /dev/null
+++ b/2020/info/01.md
@@ -0,0 +1,21 @@
+Quick highlights from Emacs News since the last EmacsConf
+
+
+# Links
+
+This is a draft.
+
+- [Mickey Petersen's notes on Emacs 27.1](https://www.masteringemacs.org/article/whats-new-in-emacs-27-1)
+- [Bringing GNU Emacs to Native Code](https://www.reddit.com/r/emacs/comments/g9vdd0/bringing_gnu_emacs_to_native_code_at_the_european/)
+- [Making Emacs popular again [LWN.net]​](https://lwn.net/Articles/819452/)
+- [Org Mode and Zettelkasten](https://www.reddit.com/r/emacs/comments/hfamm7/those_who_have_tried_out_multiple_zettelkasten/)
+- [EAF](https://www.reddit.com/r/emacs/comments/e48se1/eaf_extending_emacs_with_amazing_gui_support/)
+ - [Doom](https://www.reddit.com/r/emacs/comments/f2c99b/you_can_play_doom_inside_emacs_using_eaf/)
+- Virtual meetups:
+ - [NYC](https://www.meetup.com/New-York-Emacs-Meetup/events/)
+ - [SF](https://www.meetup.com/Emacs-SF/)
+ - [Emacs ATX](https://www.meetup.com/EmacsATX/)
+ - [APAC](https://www.reddit.com/r/emacs/comments/izbdq9/announcing_call_for_speakers_for_emacs_apac/)
+ - [Berlin](https://www.reddit.com/r/planetemacs/comments/jokqa4/emacs_berlin_online_meetup_on_november_25th_2020/)
+- [Emacs User Survey](https://emacssurvey.org/)
+
diff --git a/2020/info/02.md b/2020/info/02.md
new file mode 100644
index 00000000..41bcdcfd
--- /dev/null
+++ b/2020/info/02.md
@@ -0,0 +1,19 @@
+In light of the new development philosophy for Org-mode, I would like
+to present my developer story from discovering Org-mode in 2014 to
+becoming a maintainer for a big project in 2020. The goal is to show
+the logical progression between interest, gaining skills, becoming an
+expert, authoring, contributing and maintaining, in hope that it would
+bolster people to do the same.
+
+As someone who majored in a non CS-related degree, I feel that my
+story has a potential to grasp the attention of many attendees, since
+I basically started from the bottom of the ladder. Most people should
+be able to relate to one step on that ladder, which should hopefully
+encourage them to reach for the next step.
+
+My init files, which show the organic growth of my configuration:
+<https://github.com/zaeph/.emacs.d>
+
+Org-roam, the software which I am maintaining
+<https://github.com/org-roam/org-roam>
+
diff --git a/2020/info/03.md b/2020/info/03.md
new file mode 100644
index 00000000..1985fd70
--- /dev/null
+++ b/2020/info/03.md
@@ -0,0 +1,44 @@
+You want to write a novel, but you don't know how to create an
+outline. You have a seed idea for a novel, and you intend to expand
+it into a complete story. You have many ideas for a novel, and you
+are wondering how to proceed. You started writing your heart out, and
+you now feel the need to create a framework for a novel.
+
+Worry not, Emacs is here to the rescue.
+
+Listen to this talk to find out how to develop your story idea into a
+framework for a novel, all within your favourite text editor, Emacs.
+
+What you will learn during the session:
+
+- How to write a single-line plot for a novel
+- How to write the backbone of the novel, the main character arc
+- How to create characters and write their arcs
+- How to create a story design
+- How to create the scenes design
+- How to plan your novel writing project
+- How to track your project
+
+The modified Emacs template has all the ingredients and flow to start
+from a basic idea to a full fledged thrashed out novel superstructure.
+
+Once you are done with the superstructure, you can use the planning
+and clocking infrastructure to finish scene after scene, thus
+finishing your masterpiece.
+
+We will use:
+
+- The snowflake method -
+
+<https://www.advancedfictionwriting.com/articles/snowflake-method/>
+
+- The seven-point story structure -
+
+<https://invidious.snopyta.org/watch?v=KcmiqQ9NpPE&list=PLL7D_RCJrhcLzLiO17m7KcnG5WrjcUxGz>
+
+- The original emacs writing template -
+
+<https://tonyballantyne.com/EmacsWritingTips.html>
+
+- Some spices from the speaker's kitchen
+
diff --git a/2020/info/04.md b/2020/info/04.md
new file mode 100644
index 00000000..b1ac408b
--- /dev/null
+++ b/2020/info/04.md
@@ -0,0 +1,12 @@
+LilyPond is an extensible program for producing high-quality sheet
+music engraved with traditional layout rules. Similar to LaTeX and
+other typesetting programs, its input format simply describes the
+visual layout of the score using commands to define musical
+expressions. This makes collaboration easier, prevents users from
+having to adjust layout settings manually, and faciliates digital
+archiving and distribution of musical scores. In this talk, I begin
+by showcasing LilyPond syntax and mode using literate programming
+techniques as examples for building sheet music in Emacs, and proceed
+with an overview of the setup I use for producing music books with GNU
+Make, LilyPond, and LilyPond-mode.
+
diff --git a/2020/info/05.md b/2020/info/05.md
new file mode 100644
index 00000000..5991df2e
--- /dev/null
+++ b/2020/info/05.md
@@ -0,0 +1,16 @@
+I hoped to become a successful musician someday, and while that has
+yet to happen, I've recorded a fair share of unreleased music over the
+years. I decided it was time to share some of it with the world
+through the power of Emacs!
+
+Rather than using the available non-free (or even free?) platforms out
+there, I decided to build a Bandcamp-like page from scratch. While I
+could have chosen many of the static-site building tools, I decided to
+use the tool closest to my heart and automate the process of building
+a web page from a directory of audio files with Emacs Lisp.
+
+I will share with you how I managed to create a personal workflow for
+releasing an album without leaving the One True Editor that includes
+editing audio metadata with EMMS and generating HTML while cobbling
+together yasnippet and the format macro.
+
diff --git a/2020/info/06.md b/2020/info/06.md
new file mode 100644
index 00000000..911f334c
--- /dev/null
+++ b/2020/info/06.md
@@ -0,0 +1,3 @@
+Techniques to help new users bootstrap a more gentle introduction to
+Emacs, one (short) init.el file at a time.
+
diff --git a/2020/info/07.md b/2020/info/07.md
new file mode 100644
index 00000000..4b3683ac
--- /dev/null
+++ b/2020/info/07.md
@@ -0,0 +1,35 @@
+A practiced dexterity with the arcane incantations known as keybindings is
+the true mark of the veteran Emacs user. Yet, it takes years to get there,
+and if you tried to explain what you were doing there, nobody would
+understand, least of all those Vim users who would say that the whole
+enterprise was foolhardy to begin with. They don't get it, those fools. Let
+them flounder about in their "normal mode." Normal isn't good enough for
+me! I want exceptional, IDEAL, I want&#x2026; glorious mode, that's what I want.
+And the only thing that'll cut it is if I do it &#x2026; my way. Why, with my
+precious emacs.d, I'm invincible! Well&#x2026; just between you and me, there
+are times when learning new keybindings every time someone makes a new toy
+gets to be a bit of a drag, and some days I can't keep my C-c's and my C-c
+C-c's straight if I'm being honest with you, but you'll never catch me
+admitting it! I do wonder if there's a better way to get to glorious mode,
+even though my .emacs.d is already perfect (of course).
+
+If this secretly sounds like you, then rejoice, there just might be a new
+way, a better way! And you could potentially get there in days instead of
+years, so that even your script kiddie coworker with their "VSCode" (groan)
+may at last come around to your way of looking at things, and, maybe, just
+maybe, even those Vim users (hiss!)!
+
+"Epistemic" Emacs is a user interface paradigm based on treating aspects of
+the user interface as conceptual entities that can be reasoned about in
+terms of a standard language. Essentially, instead of learning keybindings
+for each specific action, you learn keybindings for general, conceptual
+habits, kind of like Vim, except that instead of reasoning only about text,
+you reason about any aspect of your interaction with the machine, whether
+it's windows or buffers or even those interactions themselves. The promise
+of this approach is that you just learn a simple language once, and you can
+then apply it to vastly different aspects of your user interface, with the
+same keybindings doing different things in different contexts, in sensible
+and predictable ways. And in principle, whenever that new toy technology
+comes around, anyone could extend the UI language to apply to it in a
+matter of minutes, and you'd already know how to use it.
+
diff --git a/2020/info/08.md b/2020/info/08.md
new file mode 100644
index 00000000..982b4270
--- /dev/null
+++ b/2020/info/08.md
@@ -0,0 +1,20 @@
+It's not always easy to take part of someone's configuration and make
+it work, it's almost never easy to move your configuration to fresh OS
+installation or hardware. Not sure that this snippet is enough to
+make package work? Forgot to install ripgrep in your system for
+rg.el? Got a broken version of package on package-install?
+
+There is a way to make an Emacs configuration reliable, composable and
+self-contained. It's possible to freeze package versions, create
+systemd unit for emacs daemon, maintain system dependencies and
+package subconfigurations in one place with one tool.
+
+The talk explains how to leverage the power of nix package manager and
+use-package to make pretty good emacs configuration.
+
+There is a stream record on the same topic:
+<https://youtu.be/2_e3kPJQ93s>. It lacks few interesting points about
+composability of such configuration approach, but already have enough
+interesting information. The talk will be a little more structured
+and more Emacs-users oriented.
+
diff --git a/2020/info/09.md b/2020/info/09.md
new file mode 100644
index 00000000..d90f1098
--- /dev/null
+++ b/2020/info/09.md
@@ -0,0 +1,26 @@
+This is a talk about Orgmode, my favorite Emacs application. The goal
+is to show you the power of Emacs when you want to manage and organize
+your life. Orgmode is your swiss army knife for that job, and so far
+the only tool that you can customize for your needs and you need to
+customize yourself to fit the restrictions of a "ToDo list tool".
+
+Background info: I'm using Orgmode for many years now, and I'm not
+exaggerating if I tell you that it saved me from a nervous breakdown
+when my wife got diagonosed with severe illness and I was suddenly in
+charge of everything. Orgmode was there and reminded me of the
+important things so nothing was forgotten and I could focus on what
+really matters.
+
+This talk should introduce people to Orgmode, showing them what they
+can do and how it makes your life easier, freeing time for the things
+that matter to you.
+
+I was holding a similar talk at the local Linux Day in our town in
+
+1. In 2016 I recorded a set of tutorial videos which are available
+
+on my YouTube channel which gained more than 3500 subcribers because
+of those tutorials. In Summer 2020 I recorded the tutorials again for
+a course at Udemy which went online in October 2020 and is
+supplemented by a 100+ pages course book.
+
diff --git a/2020/info/10.md b/2020/info/10.md
new file mode 100644
index 00000000..bda5f0a5
--- /dev/null
+++ b/2020/info/10.md
@@ -0,0 +1,14 @@
+The world is full of possibilities. A person life is rather short
+though, and one can easily end up carry on without focus.
+
+In this short talk I want to share how Org mode empowers me into
+organizing and monitoring my tasks to make sure I am working towards
+achieving my vision.
+
+The emphasis of the talk is on defining a direction, monitoring the
+progress towards your planned destination, and keeping a trail of your
+actions to review and set up a healthy feedback loop.
+
+Tools for the job that I will (at least) mention: Org files, Org
+agenda, Org archive, org-ql, and Org-roam.
+
diff --git a/2020/info/11.md b/2020/info/11.md
new file mode 100644
index 00000000..93c7284e
--- /dev/null
+++ b/2020/info/11.md
@@ -0,0 +1,6 @@
+Come see how org-gtd leverages org-mode to automate the GTD inbox
+management. Stick around to see how the various org-mode tools get
+connected by the package and how you can leverage them for yourself.
+Bonus: there's even a few tests written for the package! We'll go
+over those too.
+
diff --git a/2020/info/12.md b/2020/info/12.md
new file mode 100644
index 00000000..71de0c05
--- /dev/null
+++ b/2020/info/12.md
@@ -0,0 +1,23 @@
+Many discussions have been had over the years on the debate between
+using few big files versus many small files. However, more often than
+not, those discussions devolve in a collection of anecdotes with
+barely any science to them.
+
+Once and for all (or, at least until org-element.el get overhauled), I
+would like to settle the debate by explaining why the way we parse
+Org-mode files becomes slower as our files grow in size or numbers,
+and how that affects their browsing and the building of custom-agenda
+views.
+
+I feel qualified to talk about this topic for two reasons:
+
+- I went through the trouble of optimising my agenda-views by
+ implementing clever regex-based skips, so I know the ceiling that
+ can be reached with the current tech.
+- My work on Org-roam has led me to consider the use of an external
+ parser for Org-mode files, and whilst we are only at the prototyping
+ stage, we know what is at stake.
+
+I intend the talk to be fairly light-hearted and humorous, which is the
+only way we can do true justice to the topic.
+
diff --git a/2020/info/13.md b/2020/info/13.md
new file mode 100644
index 00000000..e72fbcb9
--- /dev/null
+++ b/2020/info/13.md
@@ -0,0 +1,27 @@
+We present a short experience report from the perspective of two
+long-time Emacs users and one relative newcomer. Our motivations
+relate, broadly, to reproducibility of research in science. We
+reflect on our experiences with off-the-self solutions available
+through the Emacs package manager, and describe some of our custom
+extensions.
+
+When working on a scientific research project, one typically has
+multiple different computer programs running at the same time. For
+example, we may use a computer algebra system such as Maxima for
+calculations, an interactive language such as Julia for numerical
+computations, TeX for writing up results, a reference manger such as
+Zotero for the bibliography, Roam for note-taking, and Jekyll for
+blogging. Switching and moving content among these programs can be
+distracting, time-consuming, and prone to error. These issues are
+compounded when there are several collaborators involved.
+
+We explore a solution that looks toward building better "computational
+notebooks" using Emacs. We take Org mode as our foundation. As many
+in this audience will know, Org mode integrates features such as
+writing, task management, program evaluation, typesetting,
+presentation, and navigation. Tightly integrated add-on packages
+round out the picture either by directly replacing the functionality
+of the other programs mentioned above or automatically dispatching
+commands to them. We outline both the pleasure and pain involved in
+this experience.
+
diff --git a/2020/info/14.md b/2020/info/14.md
new file mode 100644
index 00000000..34cc09df
--- /dev/null
+++ b/2020/info/14.md
@@ -0,0 +1,25 @@
+Org mode, among its numerous features, has the ability to do full
+literate programming (with tangling and weaving the way Donald Knuth
+originally intended). As a programmer, you can work comfortably,
+completely inside an org-mode buffer. When you are ready, emacs will
+generate the appropriate documentation and source code files for you.
+If you are a lone emacs user on your project, simply commit these
+exported files and keep your org file to yourself &#x2013; no one is the
+wiser.
+
+Watch "Literate Programming in Emacs Org-mode" to learn how you can
+annotate code snippets in an org file so they can be automatically
+exported to their proper locations in your source tree. Keep
+important information about your project where it should be: right
+next to the code itself. Not as ugly, out-of-date notes sitting
+behind comment characters in your source files, but front and center
+in well-formatted markdown and pdf files.
+
+And, for advanced use cases, see how you can even use a full-fledged
+macro processor like m4 to personalize your workflow even more.
+Literate programming on steroids!
+
+I'll walk you through the whole process, starting from an empty
+project README.org to a simple example that generates source and
+documentation.
+
diff --git a/2020/info/15.md b/2020/info/15.md
new file mode 100644
index 00000000..004cf504
--- /dev/null
+++ b/2020/info/15.md
@@ -0,0 +1,11 @@
+I have been a long time user of static site generators, such as
+Jekyll.
+
+I recently discovered Org Mode's publishing features and started
+appreciating flexibility and capabilities, especially when literate
+programming comes into play to generate "dynamic" content.
+
+In this talk/tutorial I will present the challenges I faced and how I
+finally moved my homepage and the University of Trento's Computational
+Logic website to Org Mode.
+
diff --git a/2020/info/16.md b/2020/info/16.md
new file mode 100644
index 00000000..27ec45cc
--- /dev/null
+++ b/2020/info/16.md
@@ -0,0 +1,24 @@
+Org-roam is a Roam replica built on top of the all-powerful Org-mode.
+
+Org-roam is a solution for effortless non-hierarchical note-taking with
+Org-mode. With Org-roam, notes flow naturally, making note-taking fun
+and easy. Org-roam should also work as a plug-and-play solution for
+anyone already using Org-mode for their personal wiki.
+
+Org-roam aims to implement the core features of Roam, leveraging the
+mature ecosystem around Org-mode where possible. Eventually, we hope to
+further introduce features enabled by the Emacs ecosystem.
+
+The purpose of the talk is to introduce people to Org-roam, whether
+they be Org-mode connoisseurs or newcomers. A lot of people have
+found value in adopting Org-roam and the Zettelkasten method in their
+workflows, and the goal is to demonstrate how they achieved it. The
+last part will present the future milestones that are in store for
+Org-roam.
+
+Examples of short-presentations I've recorded in the past:
+
+- [Org-Roam v1.2.0: Headlines & Unlinked References - YouTube](https://www.youtube.com/watch?v=3DoyEMlIxIHXs)
+- [Org-roam-bibtex - Quick Presentation - YouTube](https://www.youtube.com/watch?v=3DWy9WvF5gWYg)
+- [Org-roam-dailies: Demonstration - YouTube](https://www.youtube.com/watch?v=3D1q9x2aZCJJ4)
+
diff --git a/2020/info/17.md b/2020/info/17.md
new file mode 100644
index 00000000..1b7aa8fa
--- /dev/null
+++ b/2020/info/17.md
@@ -0,0 +1,22 @@
+Org-mode improved so much over the years, and the use-cases in org-mode are
+vast and highly technical. There is something for everyone in org-mode, and
+it's important to sift through all of these features and figure out what's
+best for a given situation or specific users. Therefore, I will be
+targeting academics and scholars that are engaging with literature in the
+early stages of a project or their academic careers.
+
+Academics and scholars engage with complex ideas and unstructured research
+workflows. I believe that org-mode can add more structure to the madness,
+and I will use this talk to clarify a possible solution to reduce such
+complexity. I propose a research workflow framework that utilizes
+org-mode, its raw form, and its many associated packages. However, the main
+package I will be mostly talking about is Org-Roam, and the way its
+underlying principles will revolutionize the research workflow.
+
+This presentation will help researchers organize and build their knowledge
+database in a streamlined and effective way. The research workflow is
+presented in three phases: planning, note-taking, and reference management.
+I will talk briefly about the packages and special-use cases for each stage
+and learned lessons along the way. Finally, the presentation concludes with
+future considerations and possible org-mode features.
+
diff --git a/2020/info/18.md b/2020/info/18.md
new file mode 100644
index 00000000..f58f80bd
--- /dev/null
+++ b/2020/info/18.md
@@ -0,0 +1,33 @@
+Org-roam is a Roam replica built on top of the all-powerful Org-mode.
+
+Org-roam is a solution for effortless non-hierarchical note-taking
+with Org-mode. With Org-roam, notes flow naturally, making
+note-taking fun and easy. Org-roam should also work as a
+plug-and-play solution for anyone already using Org-mode for their
+personal wiki.
+
+Org-roam aims to implement the core features of Roam, leveraging the
+mature ecosystem around Org-mode where possible. Eventually, we hope
+to further introduce features enabled by the Emacs ecosystem.
+
+The purpose of the talk is to present some technical aspects of
+Org-roam. From the very beginning, we wanted Org-roam to scale with
+your notes, and this meant that we had to keep a close eye on our
+performances. As we iterated, optimisation remained a top-priority,
+leading us to constantly peek under Org-mode's hood. Not only has
+this made us better developers, but it has also uncovered paths of
+optimisation for Org-mode itself.
+
+The talk is targeted at software engineers willing to peek under
+Org-mode's hood. A rudimentary understanding of Elisp will be
+required.
+
+Points to be covered
+
+- SQL database via emacsql
+- Elisp libraries
+- Parsing of Org-mode files
+- org-elements.e
+- Parsing with a background-process
+- Ensuring consistency via hooks
+
diff --git a/2020/info/19.md b/2020/info/19.md
new file mode 100644
index 00000000..e2db7530
--- /dev/null
+++ b/2020/info/19.md
@@ -0,0 +1,14 @@
+In this talk I will detail the ways in which static website generation
+results may be enhanced using org-webring. This talk will cover not
+only how to use org-webring (including how accessible and low-friction
+it is), but also how you may customize it, utilize it in different
+contexts unrelated to blogging (tracking project commits), and even as
+a way to respond to other blogs in a cogent and manner.
+
+Additionally, I will go into slight detail as to the history of this
+project, why it was made, what we are working on, and what we
+remaining we need to do before we can submit it to GNU Emacs /
+Org-mode.
+
+I think, in all, this can quite easily cover a 10 minute window.
+
diff --git a/2020/info/20.md b/2020/info/20.md
new file mode 100644
index 00000000..af74098c
--- /dev/null
+++ b/2020/info/20.md
@@ -0,0 +1,14 @@
+Macros are a powerful tool. In the context of Emacs Lisp programming
+they can also provide us with a "foot-gun" of immense proportions.
+Join the dungeon-mode project as we trip over our own macros, so to
+speak, in the context of building a GPLv3+ turn-based role-playing
+game engine and game design features for Emacs.
+
+In this 20m talk I'll briefly introduce some rationales leading to
+storing all game source and play state information within org-mode
+documents (spoiler: it's about freedom), then go into some detail
+around the "ETL" process design that currently accomplishes this.
+Finally, we'll look closely at one especially problematic macro deep
+within this solution, and invite people to throw fruit^11^dhelp draw
+conclusions, ask questions, and discuss.
+
diff --git a/2020/info/21.md b/2020/info/21.md
new file mode 100644
index 00000000..355ee8b8
--- /dev/null
+++ b/2020/info/21.md
@@ -0,0 +1,50 @@
+In the last months there were several hundreds of messages in
+emacs-devel in threads with names like "A proposal for a friendlier
+Emacs", "How to make Emacs popular again", and "Interactive guide for
+new users". On the one hand I am absolutely sure that eev is very
+good answer to all these themes; on the other hand I know that eev is
+based on some design decisions that offend most people used to modern,
+"user-friendly" interfaces - and I feel that at this moment mentions
+to eev in those discussions in emacs-devel would not be welcome.
+
+In this talk I will start by presenting very quickly the main "killer
+features" of eev - namely:
+
+1. Elisp hyperlinks,
+
+2. interactive tutorials that can be navigated with just three keys,
+
+3. non-invasiveness - people can easily turn eev on for only five
+ minutes each week, play with it a bit, and then turn it off,
+
+4. high discoverability factor,
+
+5. a way to create "hyperlinks to here",
+
+6. hyperlinks to specific points in PDF documents and video files -
+ i.e., to specific pages, strings, and timemarks,
+
+7. a way to control shell-like programs ("eepitch"), and
+
+8. an Elisp tutorial,
+
+and after that I will present the design decisions behind eev, in two
+parts:
+
+1. eev is a very thin layer above Emacs-the-Lisp-environment; it is
+ as simple as possible, but in the sense of "simple" that was used
+ in Forth, and that is not very familiar today.
+
+2. Very often when I am using Emacs - which is my main interface
+ with the system - I realize that I can automate some task that I
+ just did by hand twice of thrice; and that I should do that,
+ because automating that would be both easy and fun. Over the
+ years I experimented with several ways of automating tasks,
+ refined some of these ways a lot, and found a certain "best"
+ style that, again, usually offends people who are accustomed with
+ the modern ideas of user-friendliness. In this style, used in
+ most template-based functions in eev, both textual documentation
+ and error-handling are kept to a minimum. I will show how, and
+ why, eev makes this style works so well, and how users can create
+ their own templated functions very quickly - as "5-minute hacks".
+
diff --git a/2020/info/22.md b/2020/info/22.md
new file mode 100644
index 00000000..b9c89e75
--- /dev/null
+++ b/2020/info/22.md
@@ -0,0 +1,65 @@
+Users will generally only make use of a few predefined \`special
+blocks', such as \`example, centre, quote', and will not bother with
+the effort required to make new ones. When new encapsulating notions
+are required, users will either fallback on HTML or LaTeX specific
+solutions, usually littered with \`#+ATTR' clauses to pass around
+configurations or parameters.
+
+Efforts have been exerted to mitigate the trouble of producing new
+special blocks. However, the issue of passing parameters is still
+handled in a clumsy fashion; e.g., by having parameters be expressed
+in a special block's content using specific keywords.
+
+We present a novel approach to making special blocks in a familiar
+fashion and their use also in a familiar fashion. We achieve the
+former by presenting \`\`defblock'', an anaphoric macro exceedingly
+similar to \`\`defun'', and for the latter we mimic the usual
+\`\`src''-block syntax for argument passing to support special blocks.
+
+For instance, here is a sample declaration.
+
+ (defblock stutter () (reps 2)
+ "Output the CONTENTS of the block REPS many times"
+ (org-parse (s-repeat reps contents)))
+
+Here is an invocation that passes an *optional* argument; which
+defaults to 2 when not given.
+
+<div class="stutter">
+<p>
+Emacs for the win ⌣̈
+</p>
+
+</div>
+
+Upon export, to HTML or LaTeX for instance, the contents of this block
+are repeated (\`stuttered') 5 times. The use of \`\`src''-like
+invocation may lead to a decrease in \`#+ATTR' clauses.
+
+In the presentation, we aim to show a few \`practical' special blocks
+that users may want: A block that &#x2026;
+
+- translates *some selected* text &#x2014;useful for multilingual blogs
+- hides *some selected* text &#x2014;useful for learning, quizzes
+- folds/boxes text &#x2014;useful in blogs for folding away details
+
+In particular, all of these examples will be around ~5 lines long!
+
+We also have a larger collection of more useful block types, already
+implemented.
+
+The notable features of the system are as follows.
+
+- Familiar \`\`defun'' syntax for making block &#x2014;\`\`defblock''
+- Familiar \`\`src'' syntax for passing arguments &#x2014;e.g., \`\`:key
+ value''
+- Fine-grained control over export translation phases &#x2014;c.f.,
+ \`\`org-parse'' above
+- **Modular**: New blocks can be made out of existing blocks really
+ quickly using \`\`blockcall'' &#x2014;similar to Lisp's \`\`funcall''. We
+ will show how to fuse two blocks to make a new one, also within ~5
+ lines.
+
+It is hoped that the ease of creating custom special blocks will be a
+gateway for many Emacs users to start using Lisp.
+
diff --git a/2020/info/23.md b/2020/info/23.md
new file mode 100644
index 00000000..f5ca8833
--- /dev/null
+++ b/2020/info/23.md
@@ -0,0 +1,10 @@
+Tree-sitter is a parser generator and an incremental parsing library.
+emacs-tree-sitter is its most popular Emacs binding, which aims to be
+the foundation of Emacs packages that understand source code's
+structure. Examples include better code highlighting, folding,
+indexing, structural navigation.
+
+In this talk, I will describe the current state of emacs-tree-sitter's
+APIs and functionalities. I will also discuss areas that need
+improvements and contribution from the community.
+
diff --git a/2020/info/24.md b/2020/info/24.md
new file mode 100644
index 00000000..f39eccba
--- /dev/null
+++ b/2020/info/24.md
@@ -0,0 +1,22 @@
+Emacs, show me how much technical debt and where it is in this
+software repository!
+
+Also how complex is this module?
+
+And who is the main developer of this component?
+
+Mmm, if I change this file, do I need to change something else, Emacs?
+
+Ah, I need help of somebody to change this code! Emacs can you tell me
+who knows something about this file?
+
+The above are some questions my Emacs can answer (an M-x away).
+
+It all started with "Your Code as a Crime Scene", an insightful book
+by Adam Tornhill, and it continued with a big useful hack.
+
+In this talk I want to show the analyses I can produce on software
+repositories with my Emacs, explain how they help me in my daily work,
+give a bit of context of how Adam came up with them, and show the
+dirty code that makes this wonderful functionality work.
+
diff --git a/2020/info/25.md b/2020/info/25.md
new file mode 100644
index 00000000..dc02874a
--- /dev/null
+++ b/2020/info/25.md
@@ -0,0 +1,21 @@
+If you are working with complex nested JSON structures, you are
+probably familiar with jq which is like sed for JSON data and great at
+what it does. However, being a command-line tool like sed, the
+feedback for writing queries and seeing their results is a discrete
+process and not live.
+
+When working with Emacs, we are used to good auto-completion and live
+feedback. Formerly, this was mostly done with static input, but with
+modern completion frameworks like Ivy and Counsel, this can be done
+with dynamic inputs, as well.
+
+counsel-jq is a package with which you can quickly test queries and
+traverse a complex JSON structure whilst having live feedback. Just
+call `M-x counsel-jq` in a buffer containing JSON, then start writing
+your `jq` query string and see the output appear live in the message
+area. Whenever you're happy, hit `RET` and the results will be
+displayed to you in the buffer `*jq-json*`.
+
+In this lightning talk, I'll give a quick overview on how to use
+counsel-jq and how to build similar completion functionality.
+
diff --git a/2020/info/26.md b/2020/info/26.md
new file mode 100644
index 00000000..35044db7
--- /dev/null
+++ b/2020/info/26.md
@@ -0,0 +1,16 @@
+Could Emacs be humanity's solution to the turbulent years of
+adolescence? So much more than a text editor, Emacs changed the way I
+approach everything at the age of 15. In the two years since
+discovering Emacs in my sophomore year of high school, I have been
+constantly amazed at what Emacs is capable of. In this talk, I would
+like to share this journey of discovery and what I've learned along
+the way, beginning with what led me to Emacs. I will describe the
+many ways that Emacs has shaped my life as a student, a programmer, a
+violinist, and a productive and happy adolescent. In each case, I
+have thoroughly enjoyed figuring out the best way to make Emacs work
+for me, and I'd like to share this with others. In addition, I'd like
+to take this opportunity to address some roadblocks that I have
+noticed having observed some of my peers' attempts at learning Emacs
+and possible solutions for those barriers, taking inspiration from
+various sources both from inside and outside the Emacs community.
+
diff --git a/2020/info/27.md b/2020/info/27.md
new file mode 100644
index 00000000..ce42e753
--- /dev/null
+++ b/2020/info/27.md
@@ -0,0 +1,8 @@
+Many jokes have been made about the true nature of Emacs, such as it
+being a fully-fledged operating system. This talk will demonstrate
+its suitability for playing retro games, then explore the inner
+workings of a [CHIP-8](https://en.wikipedia.org/wiki/CHIP-8) emulator capable of smooth video game emulation.
+
+[1]: <https://depp.brause.cc/talks/chicken-saar/>
+[2]: <https://depp.brause.cc/talks/openchaos-2019-11/>
+
diff --git a/2020/info/28.md b/2020/info/28.md
new file mode 100644
index 00000000..b3646ba4
--- /dev/null
+++ b/2020/info/28.md
@@ -0,0 +1,23 @@
+Dungeon is an oral and physical media fantasy and abstract role-play
+gaming tradition that seems to have grown from miniature and
+war-gaming communities in and around the University of Minnesota, Twin
+Cities in the 1950s and 60s.
+
+Dungeon is inherently free (or nearly free, you do need paper and
+dice), both to play and to create your own games. Moreover, as a
+generality among practices, as Dungeon authors, we dislike impositions
+on our creative freedoms beyond those of our own imagination and
+tastes, especially those such as of a "brand" or "system", or e.g.
+copyright holder.
+
+In December of 2019 some friends who grew up creating and playing in
+each others' Dungeons decided to try making an engine for these types
+of games using Emacs and Emacs Lisp, org-mode, and maybe some
+duct-tape if needed. In this 50 minute talk Corwin and Erik introduce
+dungeon-mode, and explain why we decided to do that. We'll sketch out
+the project in both lay and technical terms, provide a tactical update
+with respect to completing our initial concept, describe how things
+are going in human terms, and share some things we've learned so far
+from and about Emacs and the free software community working on this
+project, while leaving 10-15m for questions and discussion.
+
diff --git a/2020/info/29.md b/2020/info/29.md
new file mode 100644
index 00000000..7639d238
--- /dev/null
+++ b/2020/info/29.md
@@ -0,0 +1,65 @@
+We hope the dungeon-mode project will eventually support three primary
+use-cases related to editing/designing, playing and running/hosting
+RPG games. In a "vanilla" game, characters descend from the "General
+Store" (the one safe haven available) into the dungeon, a (nominally)
+underground labyrinth of unknown dimensions with generally asocial
+occupants and occasional bits of treasure.
+
+Players can track (as long as the "lights" stay on) the location of
+their party of characters via a process we usually call "mapping".
+This has usually involved the dungeon master "calling out" the shape
+of the map level as the party, in turn, calls out their route or
+"pathing" decisions.
+
+ DUNGEON-MASTER
+ "Corridor East-West"
+ PARTY-LEADER
+ "West"
+ DUNGEON-MASTER
+ "Ten feet, corridor ends goes South"
+ PARTY-LEADER
+ "South"
+ DUNGEON-MASTER
+ "Step into an area. It's a
+ twenty-by-twenty area extending
+ West, with exits in the Western
+ part of the southern wall and the
+ Southern part of the eastern wall."
+ **rolls dice**
+ "Nothing waiting in the area"
+
+Mapping quickly emerged as a focal point for development. Especially,
+we were to excited to try creating an 'on-the-fly' graphical
+representation of the map that could respond to changing in-game
+circumstances. (Oops, all your Elves are dead. Where'd the secret
+doors go?)
+
+During this 20m talk I'll provide a couple of reference points on
+Emacs's image and especially SVG rendering capabilities, then
+introduce a series of proofs-of-concept focusing on our experience
+using core libraries such as \`svg.el' to make them.
+
+As of submitting abstracts, these include
+
+- "DM map view" - select and render a complete game map,
+- "play mode map" - progressively render maps based on game action,
+- "battle-board" - track damage taken by player characters, and
+- "character-sheet" - a graphical character sheet
+- "previews" - view map tiles when hovering their draw code in org
+- "sketch" - a "click-to-draw" experiment
+
+For an advanced peek please see our git repository (but note we're
+moving to Savannah soon). We'll be talking first about [map.el](https://github.com/dungeon-mode/game/blob/master/src/dm-map.el),
+especially \`dm-map-draw' and helpers. A few sample game maps this can
+render are available as org-mode documents in the [Docs/Maps](https://github.com/dungeon-mode/game/blob/master/Docs/Maps) folder.
+
+Those interested could compare functions between dm-map.el and
+[dm-draw.el](https://github.com/dungeon-mode/game/blob/master/src/dm-draw.el), which is an incomplete rewrite of the "SVG rendering"
+functions used only by [dm-sketch.el](https://github.com/dungeon-mode/game/blob/master/src/dm-sketch.el) (so far). Hopefully, it will be
+writing our "sketches" back out to org docs in time for the
+conference.
+
+Note on github:
+The project is transitioning to Savannah. Please watch for
+redirects/moved notices when using these links.
+
diff --git a/2020/info/30.md b/2020/info/30.md
new file mode 100644
index 00000000..68382c2a
--- /dev/null
+++ b/2020/info/30.md
@@ -0,0 +1,10 @@
+Vterm is a fast and fully capable terminal emulator in GNU Emacs built
+as a dynamic module on top of libvterm. In this talk, I will give an
+overview of the package. I will discuss the installation and common
+customizations. I will go into details on some of the most important
+features, such as directory tracking or message passing. Finally, I
+will touch upon known incompatibilities and the future directions of
+the project.
+
+URL: <https://github.com/akermu/emacs-libvterm>
+
diff --git a/2020/info/31.md b/2020/info/31.md
new file mode 100644
index 00000000..1283ea23
--- /dev/null
+++ b/2020/info/31.md
@@ -0,0 +1,24 @@
+When I began learning Lakota, the language of my ancestors, there was
+no way for me to type it on a computer without using non-free
+software. Additionally, the only software I could find supported just
+one of the proposed orthographies for the language.
+
+As an Emacs user, I knew that free software offered the ability for
+many types of languages to co-exist in the same program and went
+looking for how to enable an input mode for Lakota in Emacs. This
+talk will discuss how Emacs enabled me to define input modes for
+multiple Lakota orthographies using the Quail multilingual input
+package.
+
+I will also discuss some of the ethical and cultural considerations I
+went through when publishing the package. Lakota and many other
+indigenous languages were actively suppressed for many years, and are
+in danger of extinction. The language is being recovered now, but
+much of the available educational material comes from non-indian
+people. Before publishing an input mode for Emacs, I wanted to ensure
+that I included an orthography developed by Lakota people, not only
+the suggested orthography present in most of my educational material.
+Additionally, the choice of where to publish the source as an Emacs
+package was important, since some corporations have been known to
+support ongoing oppression against indigenous descended peoples.
+
diff --git a/2020/info/32.md b/2020/info/32.md
new file mode 100644
index 00000000..8097de9c
--- /dev/null
+++ b/2020/info/32.md
@@ -0,0 +1,16 @@
+The venerable Gnus newsreader has evolved over the years to interface
+with many different types of news- or mail-like backend programs,
+presenting all of them using a unified interface. This sort of
+software often calls for an object-oriented architecture, at least as
+regards polymorphism, yet Gnus was written well before Emacs lisp
+acquired the object-oriented tools and libraries &#x2013; largely borrowed
+from Common Lisp &#x2013; that it boasts today.
+
+Yet Gnus needed something "object-oriented-like", and so nnoo.el was
+born: a rather amazing (and frankly terrifying) implementation of
+object-oriented behavior using functional code.
+
+This talk will be a brief introduction to how this existing system
+works, and to the ongoing, incremental effort to port it over to newer
+Elisp tools like generic functions, structs, and objects.
+
diff --git a/2020/info/33.md b/2020/info/33.md
new file mode 100644
index 00000000..97d5ebaa
--- /dev/null
+++ b/2020/info/33.md
@@ -0,0 +1,8 @@
+Maxima is a great tool for symbolic mathematics, it has some support
+for Emacs in the main repository, but is quite outdated and doesn't
+receive the love I think it should, so a couple of months ago I decide
+to improve and "modernize" the maxima-mode.el code base. So, I want
+to talk about the integration with Emacs, the maxima REPL, how some of
+the main tool for Emacs integrate in maxima-mode and in general show
+how to start using maxima within Emacs.
+
diff --git a/2020/info/34.md b/2020/info/34.md
new file mode 100644
index 00000000..a0abbde4
--- /dev/null
+++ b/2020/info/34.md
@@ -0,0 +1,6 @@
+Emacs Application Framework (EAF) is a customizable and extensible GUI
+application framework that extends Emacs graphical capabilities using
+PyQt5. This talk will cover the architecture design of the EAF
+project, and demonstrate some of its most useful applications: modern
+browser, PDF viewer, video player, etc.
+
diff --git a/2020/info/35.md b/2020/info/35.md
new file mode 100644
index 00000000..b1307b61
--- /dev/null
+++ b/2020/info/35.md
@@ -0,0 +1,10 @@
+During quarantine, I found myself spending time with an Android app.
+One of the features this app has is composing music that loops
+endlessly. As with many things, I wondered how much better this tool
+would be, if only it was inside Emacs.
+
+This talk will explain how I made this tool inside Emacs, with detours
+through Emacs text properties, font rendering, the .WAVE file format,
+and music theory. And hopefully at the end, we'll have something
+worth listening to.
+
diff --git a/2020/info/38.md b/2020/info/38.md
new file mode 100644
index 00000000..6afcfd61
--- /dev/null
+++ b/2020/info/38.md
@@ -0,0 +1,2 @@
+TBD - possibly a quick overview of Emacs 27.1 and development priorities for Emacs 28
+
diff --git a/2020/info/39.md b/2020/info/39.md
new file mode 100644
index 00000000..07737ade
--- /dev/null
+++ b/2020/info/39.md
@@ -0,0 +1,2 @@
+TBD - plans for a NonGNU ELPA that will be easy to enable and contribute to without signing copyright assignment papers
+
diff --git a/2020/schedule/01.md b/2020/schedule/01.md
index 30709263..37776d18 100644
--- a/2020/schedule/01.md
+++ b/2020/schedule/01.md
@@ -4,35 +4,9 @@
Back to the [[schedule]]
Next: <a href="/2020/schedule/02">An Emacs Developer Story: From User to Maintainer</a>
+Saturday, Nov 28 2020, 9:33 AM - 9:43 AM EST / 6:33 AM - 6:43 AM PST / 2:33 PM - 2:43 PM UTC / 3:33 PM - 3:43 PM CET / 10:33 PM - 10:43 PM +08
-# Emacs News Highlights
-Saturday, Nov 28 2020, 9:33 AM - 9:43 AM EST / 6:33 AM - 6:43 AM PST / 2:33 PM - 2:43 PM UTC / 3:33 PM - 3:43 PM CET / 10:33 PM - 10:43 PM +08
-Sacha Chua
-
-Quick highlights from Emacs News since the last EmacsConf
-
-
-# Links
-
-This is a draft.
-
-- [Mickey Petersen's notes on Emacs 27.1](https://www.masteringemacs.org/article/whats-new-in-emacs-27-1)
-- [Bringing GNU Emacs to Native Code](https://www.reddit.com/r/emacs/comments/g9vdd0/bringing_gnu_emacs_to_native_code_at_the_european/)
-- [Making Emacs popular again [LWN.net]​](https://lwn.net/Articles/819452/)
-- [Org Mode and Zettelkasten](https://www.reddit.com/r/emacs/comments/hfamm7/those_who_have_tried_out_multiple_zettelkasten/)
-- [EAF](https://www.reddit.com/r/emacs/comments/e48se1/eaf_extending_emacs_with_amazing_gui_support/)
- - [Doom](https://www.reddit.com/r/emacs/comments/f2c99b/you_can_play_doom_inside_emacs_using_eaf/)
-- Virtual meetups:
- - [NYC](https://www.meetup.com/New-York-Emacs-Meetup/events/)
- - [SF](https://www.meetup.com/Emacs-SF/)
- - [Emacs ATX](https://www.meetup.com/EmacsATX/)
- - [APAC](https://www.reddit.com/r/emacs/comments/izbdq9/announcing_call_for_speakers_for_emacs_apac/)
- - [Berlin](https://www.reddit.com/r/planetemacs/comments/jokqa4/emacs_berlin_online_meetup_on_november_25th_2020/)
-- [Emacs User Survey](https://emacssurvey.org/)
-
-
-
-
+[[!inline pages="../info/01" raw="yes"]]
Back to the [[schedule]]
Next: <a href="/2020/schedule/02">An Emacs Developer Story: From User to Maintainer</a>
diff --git a/2020/schedule/02.md b/2020/schedule/02.md
index 3d8ebd8b..dacfb864 100644
--- a/2020/schedule/02.md
+++ b/2020/schedule/02.md
@@ -5,33 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/01">Emacs News Highlights</a>
Next: <a href="/2020/schedule/03">Idea to Novel Superstructure: Emacs for Writing</a>
+Saturday, Nov 28 2020, 9:46 AM - 10:06 AM EST / 6:46 AM - 7:06 AM PST / 2:46 PM - 3:06 PM UTC / 3:46 PM - 4:06 PM CET / 10:46 PM - 11:06 PM +08
-# An Emacs Developer Story: From User to Maintainer
-Saturday, Nov 28 2020, 9:46 AM - 10:06 AM EST / 6:46 AM - 7:06 AM PST / 2:46 PM - 3:06 PM UTC / 3:46 PM - 4:06 PM CET / 10:46 PM - 11:06 PM +08
-Leo Vivier
-
-In light of the new development philosophy for Org-mode, I would like
-to present my developer story from discovering Org-mode in 2014 to
-becoming a maintainer for a big project in 2020. The goal is to show
-the logical progression between interest, gaining skills, becoming an
-expert, authoring, contributing and maintaining, in hope that it would
-bolster people to do the same.
-
-As someone who majored in a non CS-related degree, I feel that my
-story has a potential to grasp the attention of many attendees, since
-I basically started from the bottom of the ladder. Most people should
-be able to relate to one step on that ladder, which should hopefully
-encourage them to reach for the next step.
-
-My init files, which show the organic growth of my configuration:
-<https://github.com/zaeph/.emacs.d>
-
-Org-roam, the software which I am maintaining
-<https://github.com/org-roam/org-roam>
-
-
-
-
+[[!inline pages="../info/02" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/01">Emacs News Highlights</a>
diff --git a/2020/schedule/03.md b/2020/schedule/03.md
index 5250dd09..6a8d03ad 100644
--- a/2020/schedule/03.md
+++ b/2020/schedule/03.md
@@ -5,58 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/02">An Emacs Developer Story: From User to Maintainer</a>
Next: <a href="/2020/schedule/04">Music in Plain Text</a>
+Saturday, Nov 28 2020, 10:09 AM - 10:19 AM EST / 7:09 AM - 7:19 AM PST / 3:09 PM - 3:19 PM UTC / 4:09 PM - 4:19 PM CET / 11:09 PM - 11:19 PM +08
-# Idea to Novel Superstructure: Emacs for Writing
-Saturday, Nov 28 2020, 10:09 AM - 10:19 AM EST / 7:09 AM - 7:19 AM PST / 3:09 PM - 3:19 PM UTC / 4:09 PM - 4:19 PM CET / 11:09 PM - 11:19 PM +08
-Bala Ramadurai
-
-You want to write a novel, but you don't know how to create an
-outline. You have a seed idea for a novel, and you intend to expand
-it into a complete story. You have many ideas for a novel, and you
-are wondering how to proceed. You started writing your heart out, and
-you now feel the need to create a framework for a novel.
-
-Worry not, Emacs is here to the rescue.
-
-Listen to this talk to find out how to develop your story idea into a
-framework for a novel, all within your favourite text editor, Emacs.
-
-What you will learn during the session:
-
-- How to write a single-line plot for a novel
-- How to write the backbone of the novel, the main character arc
-- How to create characters and write their arcs
-- How to create a story design
-- How to create the scenes design
-- How to plan your novel writing project
-- How to track your project
-
-The modified Emacs template has all the ingredients and flow to start
-from a basic idea to a full fledged thrashed out novel superstructure.
-
-Once you are done with the superstructure, you can use the planning
-and clocking infrastructure to finish scene after scene, thus
-finishing your masterpiece.
-
-We will use:
-
-- The snowflake method -
-
-<https://www.advancedfictionwriting.com/articles/snowflake-method/>
-
-- The seven-point story structure -
-
-<https://invidious.snopyta.org/watch?v=KcmiqQ9NpPE&list=PLL7D_RCJrhcLzLiO17m7KcnG5WrjcUxGz>
-
-- The original emacs writing template -
-
-<https://tonyballantyne.com/EmacsWritingTips.html>
-
-- Some spices from the speaker's kitchen
-
-
-
-
+[[!inline pages="../info/03" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/02">An Emacs Developer Story: From User to Maintainer</a>
diff --git a/2020/schedule/04.md b/2020/schedule/04.md
index 5fa0e4cf..910bf209 100644
--- a/2020/schedule/04.md
+++ b/2020/schedule/04.md
@@ -5,26 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/03">Idea to Novel Superstructure: Emacs for Writing</a>
Next: <a href="/2020/schedule/05">Bard Bivou(m)acs - Building a bandcamp-like page for an album of music</a>
+Saturday, Nov 28 2020, 10:22 AM - 10:32 AM EST / 7:22 AM - 7:32 AM PST / 3:22 PM - 3:32 PM UTC / 4:22 PM - 4:32 PM CET / 11:22 PM - 11:32 PM +08
-# Music in Plain Text
-Saturday, Nov 28 2020, 10:22 AM - 10:32 AM EST / 7:22 AM - 7:32 AM PST / 3:22 PM - 3:32 PM UTC / 4:22 PM - 4:32 PM CET / 11:22 PM - 11:32 PM +08
-Jonathan Gregory
-
-LilyPond is an extensible program for producing high-quality sheet
-music engraved with traditional layout rules. Similar to LaTeX and
-other typesetting programs, its input format simply describes the
-visual layout of the score using commands to define musical
-expressions. This makes collaboration easier, prevents users from
-having to adjust layout settings manually, and faciliates digital
-archiving and distribution of musical scores. In this talk, I begin
-by showcasing LilyPond syntax and mode using literate programming
-techniques as examples for building sheet music in Emacs, and proceed
-with an overview of the setup I use for producing music books with GNU
-Make, LilyPond, and LilyPond-mode.
-
-
-
-
+[[!inline pages="../info/04" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/03">Idea to Novel Superstructure: Emacs for Writing</a>
diff --git a/2020/schedule/05.md b/2020/schedule/05.md
index 8f7b1191..74d56217 100644
--- a/2020/schedule/05.md
+++ b/2020/schedule/05.md
@@ -5,30 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/04">Music in Plain Text</a>
Next: <a href="/2020/schedule/06">Trivial Emacs Kits</a>
+Saturday, Nov 28 2020, 10:35 AM - 10:45 AM EST / 7:35 AM - 7:45 AM PST / 3:35 PM - 3:45 PM UTC / 4:35 PM - 4:45 PM CET / 11:35 PM - 11:45 PM +08
-# Bard Bivou(m)acs - Building a bandcamp-like page for an album of music
-Saturday, Nov 28 2020, 10:35 AM - 10:45 AM EST / 7:35 AM - 7:45 AM PST / 3:35 PM - 3:45 PM UTC / 4:35 PM - 4:45 PM CET / 11:35 PM - 11:45 PM +08
-Grant Shangreaux
-
-I hoped to become a successful musician someday, and while that has
-yet to happen, I've recorded a fair share of unreleased music over the
-years. I decided it was time to share some of it with the world
-through the power of Emacs!
-
-Rather than using the available non-free (or even free?) platforms out
-there, I decided to build a Bandcamp-like page from scratch. While I
-could have chosen many of the static-site building tools, I decided to
-use the tool closest to my heart and automate the process of building
-a web page from a directory of audio files with Emacs Lisp.
-
-I will share with you how I managed to create a personal workflow for
-releasing an album without leaving the One True Editor that includes
-editing audio metadata with EMMS and generating HTML while cobbling
-together yasnippet and the format macro.
-
-
-
-
+[[!inline pages="../info/05" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/04">Music in Plain Text</a>
diff --git a/2020/schedule/06.md b/2020/schedule/06.md
index d8d4d2c3..99561a21 100644
--- a/2020/schedule/06.md
+++ b/2020/schedule/06.md
@@ -5,17 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/05">Bard Bivou(m)acs - Building a bandcamp-like page for an album of music</a>
Next: <a href="/2020/schedule/07">Beyond Vim and Emacs: A Scalable UI Paradigm</a>
+Saturday, Nov 28 2020, 10:48 AM - 10:58 AM EST / 7:48 AM - 7:58 AM PST / 3:48 PM - 3:58 PM UTC / 4:48 PM - 4:58 PM CET / 11:48 PM - 11:58 PM +08
-# Trivial Emacs Kits
-Saturday, Nov 28 2020, 10:48 AM - 10:58 AM EST / 7:48 AM - 7:58 AM PST / 3:48 PM - 3:58 PM UTC / 4:48 PM - 4:58 PM CET / 11:48 PM - 11:58 PM +08
-Corwin Brust
-
-Techniques to help new users bootstrap a more gentle introduction to
-Emacs, one (short) init.el file at a time.
-
-
-
-
+[[!inline pages="../info/06" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/05">Bard Bivou(m)acs - Building a bandcamp-like page for an album of music</a>
diff --git a/2020/schedule/07.md b/2020/schedule/07.md
index a333d6cf..a9e895d9 100644
--- a/2020/schedule/07.md
+++ b/2020/schedule/07.md
@@ -5,49 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/06">Trivial Emacs Kits</a>
Next: <a href="/2020/schedule/08">Building reproducible Emacs</a>
+Saturday, Nov 28 2020, 11:01 AM - 11:21 AM EST / 8:01 AM - 8:21 AM PST / 4:01 PM - 4:21 PM UTC / 5:01 PM - 5:21 PM CET / 12:01 AM - 12:21 AM +08
-# Beyond Vim and Emacs: A Scalable UI Paradigm
-Saturday, Nov 28 2020, 11:01 AM - 11:21 AM EST / 8:01 AM - 8:21 AM PST / 4:01 PM - 4:21 PM UTC / 5:01 PM - 5:21 PM CET / 12:01 AM - 12:21 AM +08
-Sid Kasivajhula
-
-A practiced dexterity with the arcane incantations known as keybindings is
-the true mark of the veteran Emacs user. Yet, it takes years to get there,
-and if you tried to explain what you were doing there, nobody would
-understand, least of all those Vim users who would say that the whole
-enterprise was foolhardy to begin with. They don't get it, those fools. Let
-them flounder about in their "normal mode." Normal isn't good enough for
-me! I want exceptional, IDEAL, I want&#x2026; glorious mode, that's what I want.
-And the only thing that'll cut it is if I do it &#x2026; my way. Why, with my
-precious emacs.d, I'm invincible! Well&#x2026; just between you and me, there
-are times when learning new keybindings every time someone makes a new toy
-gets to be a bit of a drag, and some days I can't keep my C-c's and my C-c
-C-c's straight if I'm being honest with you, but you'll never catch me
-admitting it! I do wonder if there's a better way to get to glorious mode,
-even though my .emacs.d is already perfect (of course).
-
-If this secretly sounds like you, then rejoice, there just might be a new
-way, a better way! And you could potentially get there in days instead of
-years, so that even your script kiddie coworker with their "VSCode" (groan)
-may at last come around to your way of looking at things, and, maybe, just
-maybe, even those Vim users (hiss!)!
-
-"Epistemic" Emacs is a user interface paradigm based on treating aspects of
-the user interface as conceptual entities that can be reasoned about in
-terms of a standard language. Essentially, instead of learning keybindings
-for each specific action, you learn keybindings for general, conceptual
-habits, kind of like Vim, except that instead of reasoning only about text,
-you reason about any aspect of your interaction with the machine, whether
-it's windows or buffers or even those interactions themselves. The promise
-of this approach is that you just learn a simple language once, and you can
-then apply it to vastly different aspects of your user interface, with the
-same keybindings doing different things in different contexts, in sensible
-and predictable ways. And in principle, whenever that new toy technology
-comes around, anyone could extend the UI language to apply to it in a
-matter of minutes, and you'd already know how to use it.
-
-
-
-
+[[!inline pages="../info/07" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/06">Trivial Emacs Kits</a>
diff --git a/2020/schedule/08.md b/2020/schedule/08.md
index e53c231e..90cb5968 100644
--- a/2020/schedule/08.md
+++ b/2020/schedule/08.md
@@ -5,34 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/07">Beyond Vim and Emacs: A Scalable UI Paradigm</a>
Next: <a href="/2020/schedule/21">On why most of the best features in eev look like 5-minute hacks</a>
+Saturday, Nov 28 2020, 11:24 AM - 11:44 AM EST / 8:24 AM - 8:44 AM PST / 4:24 PM - 4:44 PM UTC / 5:24 PM - 5:44 PM CET / 12:24 AM - 12:44 AM +08
-# Building reproducible Emacs
-Saturday, Nov 28 2020, 11:24 AM - 11:44 AM EST / 8:24 AM - 8:44 AM PST / 4:24 PM - 4:44 PM UTC / 5:24 PM - 5:44 PM CET / 12:24 AM - 12:44 AM +08
-Andrew Tropin
-
-It's not always easy to take part of someone's configuration and make
-it work, it's almost never easy to move your configuration to fresh OS
-installation or hardware. Not sure that this snippet is enough to
-make package work? Forgot to install ripgrep in your system for
-rg.el? Got a broken version of package on package-install?
-
-There is a way to make an Emacs configuration reliable, composable and
-self-contained. It's possible to freeze package versions, create
-systemd unit for emacs daemon, maintain system dependencies and
-package subconfigurations in one place with one tool.
-
-The talk explains how to leverage the power of nix package manager and
-use-package to make pretty good emacs configuration.
-
-There is a stream record on the same topic:
-<https://youtu.be/2_e3kPJQ93s>. It lacks few interesting points about
-composability of such configuration approach, but already have enough
-interesting information. The talk will be a little more structured
-and more Emacs-users oriented.
-
-
-
-
+[[!inline pages="../info/08" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/07">Beyond Vim and Emacs: A Scalable UI Paradigm</a>
diff --git a/2020/schedule/09.md b/2020/schedule/09.md
index 9de8314c..e4b7e67c 100644
--- a/2020/schedule/09.md
+++ b/2020/schedule/09.md
@@ -5,40 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/21">On why most of the best features in eev look like 5-minute hacks</a>
Next: <a href="/2020/schedule/10">Lead your future with Org</a>
+Saturday, Nov 28 2020, 1:03 PM - 1:13 PM EST / 10:03 AM - 10:13 AM PST / 6:03 PM - 6:13 PM UTC / 7:03 PM - 7:13 PM CET / 2:03 AM - 2:13 AM +08
-# Orgmode - your life in plain text
-Saturday, Nov 28 2020, 1:03 PM - 1:13 PM EST / 10:03 AM - 10:13 AM PST / 6:03 PM - 6:13 PM UTC / 7:03 PM - 7:13 PM CET / 2:03 AM - 2:13 AM +08
-Rainer König
-
-This is a talk about Orgmode, my favorite Emacs application. The goal
-is to show you the power of Emacs when you want to manage and organize
-your life. Orgmode is your swiss army knife for that job, and so far
-the only tool that you can customize for your needs and you need to
-customize yourself to fit the restrictions of a "ToDo list tool".
-
-Background info: I'm using Orgmode for many years now, and I'm not
-exaggerating if I tell you that it saved me from a nervous breakdown
-when my wife got diagonosed with severe illness and I was suddenly in
-charge of everything. Orgmode was there and reminded me of the
-important things so nothing was forgotten and I could focus on what
-really matters.
-
-This talk should introduce people to Orgmode, showing them what they
-can do and how it makes your life easier, freeing time for the things
-that matter to you.
-
-I was holding a similar talk at the local Linux Day in our town in
-
-1. In 2016 I recorded a set of tutorial videos which are available
-
-on my YouTube channel which gained more than 3500 subcribers because
-of those tutorials. In Summer 2020 I recorded the tutorials again for
-a course at Udemy which went online in October 2020 and is
-supplemented by a 100+ pages course book.
-
-
-
-
+[[!inline pages="../info/09" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/21">On why most of the best features in eev look like 5-minute hacks</a>
diff --git a/2020/schedule/10.md b/2020/schedule/10.md
index 38172da9..14cf136a 100644
--- a/2020/schedule/10.md
+++ b/2020/schedule/10.md
@@ -5,28 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/09">Orgmode - your life in plain text</a>
Next: <a href="/2020/schedule/11">the org-gtd package: opinions about Getting Things Done</a>
+Saturday, Nov 28 2020, 1:16 PM - 1:26 PM EST / 10:16 AM - 10:26 AM PST / 6:16 PM - 6:26 PM UTC / 7:16 PM - 7:26 PM CET / 2:16 AM - 2:26 AM +08
-# Lead your future with Org
-Saturday, Nov 28 2020, 1:16 PM - 1:26 PM EST / 10:16 AM - 10:26 AM PST / 6:16 PM - 6:26 PM UTC / 7:16 PM - 7:26 PM CET / 2:16 AM - 2:26 AM +08
-Andrea
-
-The world is full of possibilities. A person life is rather short
-though, and one can easily end up carry on without focus.
-
-In this short talk I want to share how Org mode empowers me into
-organizing and monitoring my tasks to make sure I am working towards
-achieving my vision.
-
-The emphasis of the talk is on defining a direction, monitoring the
-progress towards your planned destination, and keeping a trail of your
-actions to review and set up a healthy feedback loop.
-
-Tools for the job that I will (at least) mention: Org files, Org
-agenda, Org archive, org-ql, and Org-roam.
-
-
-
-
+[[!inline pages="../info/10" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/09">Orgmode - your life in plain text</a>
diff --git a/2020/schedule/11.md b/2020/schedule/11.md
index e4cdb822..f7e2ccdc 100644
--- a/2020/schedule/11.md
+++ b/2020/schedule/11.md
@@ -5,20 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/10">Lead your future with Org</a>
Next: <a href="/2020/schedule/12">One Big-ass Org File or multiple tiny ones? Finally, the End of the debate!</a>
+Saturday, Nov 28 2020, 1:29 PM - 1:49 PM EST / 10:29 AM - 10:49 AM PST / 6:29 PM - 6:49 PM UTC / 7:29 PM - 7:49 PM CET / 2:29 AM - 2:49 AM +08
-# the org-gtd package: opinions about Getting Things Done
-Saturday, Nov 28 2020, 1:29 PM - 1:49 PM EST / 10:29 AM - 10:49 AM PST / 6:29 PM - 6:49 PM UTC / 7:29 PM - 7:49 PM CET / 2:29 AM - 2:49 AM +08
-Aldric
-
-Come see how org-gtd leverages org-mode to automate the GTD inbox
-management. Stick around to see how the various org-mode tools get
-connected by the package and how you can leverage them for yourself.
-Bonus: there's even a few tests written for the package! We'll go
-over those too.
-
-
-
-
+[[!inline pages="../info/11" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/10">Lead your future with Org</a>
diff --git a/2020/schedule/12.md b/2020/schedule/12.md
index 22a83180..f5cd9551 100644
--- a/2020/schedule/12.md
+++ b/2020/schedule/12.md
@@ -5,37 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/11">the org-gtd package: opinions about Getting Things Done</a>
Next: <a href="/2020/schedule/13">Experience Report: Steps to "Emacs Hyper Notebooks"</a>
+Saturday, Nov 28 2020, 1:52 PM - 2:02 PM EST / 10:52 AM - 11:02 AM PST / 6:52 PM - 7:02 PM UTC / 7:52 PM - 8:02 PM CET / 2:52 AM - 3:02 AM +08
-# One Big-ass Org File or multiple tiny ones? Finally, the End of the debate!
-Saturday, Nov 28 2020, 1:52 PM - 2:02 PM EST / 10:52 AM - 11:02 AM PST / 6:52 PM - 7:02 PM UTC / 7:52 PM - 8:02 PM CET / 2:52 AM - 3:02 AM +08
-Leo Vivier
-
-Many discussions have been had over the years on the debate between
-using few big files versus many small files. However, more often than
-not, those discussions devolve in a collection of anecdotes with
-barely any science to them.
-
-Once and for all (or, at least until org-element.el get overhauled), I
-would like to settle the debate by explaining why the way we parse
-Org-mode files becomes slower as our files grow in size or numbers,
-and how that affects their browsing and the building of custom-agenda
-views.
-
-I feel qualified to talk about this topic for two reasons:
-
-- I went through the trouble of optimising my agenda-views by
- implementing clever regex-based skips, so I know the ceiling that
- can be reached with the current tech.
-- My work on Org-roam has led me to consider the use of an external
- parser for Org-mode files, and whilst we are only at the prototyping
- stage, we know what is at stake.
-
-I intend the talk to be fairly light-hearted and humorous, which is the
-only way we can do true justice to the topic.
-
-
-
-
+[[!inline pages="../info/12" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/11">the org-gtd package: opinions about Getting Things Done</a>
diff --git a/2020/schedule/13.md b/2020/schedule/13.md
index 6e8e12cd..076a40f0 100644
--- a/2020/schedule/13.md
+++ b/2020/schedule/13.md
@@ -5,41 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/12">One Big-ass Org File or multiple tiny ones? Finally, the End of the debate!</a>
Next: <a href="/2020/schedule/14">Literate Programming in Emacs Org-Mode</a>
+Saturday, Nov 28 2020, 2:05 PM - 2:15 PM EST / 11:05 AM - 11:15 AM PST / 7:05 PM - 7:15 PM UTC / 8:05 PM - 8:15 PM CET / 3:05 AM - 3:15 AM +08
-# Experience Report: Steps to "Emacs Hyper Notebooks"
-Saturday, Nov 28 2020, 2:05 PM - 2:15 PM EST / 11:05 AM - 11:15 AM PST / 7:05 PM - 7:15 PM UTC / 8:05 PM - 8:15 PM CET / 3:05 AM - 3:15 AM +08
-Joseph Corneli, Raymond Puzio, and Cameron Ray Smith
-
-We present a short experience report from the perspective of two
-long-time Emacs users and one relative newcomer. Our motivations
-relate, broadly, to reproducibility of research in science. We
-reflect on our experiences with off-the-self solutions available
-through the Emacs package manager, and describe some of our custom
-extensions.
-
-When working on a scientific research project, one typically has
-multiple different computer programs running at the same time. For
-example, we may use a computer algebra system such as Maxima for
-calculations, an interactive language such as Julia for numerical
-computations, TeX for writing up results, a reference manger such as
-Zotero for the bibliography, Roam for note-taking, and Jekyll for
-blogging. Switching and moving content among these programs can be
-distracting, time-consuming, and prone to error. These issues are
-compounded when there are several collaborators involved.
-
-We explore a solution that looks toward building better "computational
-notebooks" using Emacs. We take Org mode as our foundation. As many
-in this audience will know, Org mode integrates features such as
-writing, task management, program evaluation, typesetting,
-presentation, and navigation. Tightly integrated add-on packages
-round out the picture either by directly replacing the functionality
-of the other programs mentioned above or automatically dispatching
-commands to them. We outline both the pleasure and pain involved in
-this experience.
-
-
-
-
+[[!inline pages="../info/13" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/12">One Big-ass Org File or multiple tiny ones? Finally, the End of the debate!</a>
diff --git a/2020/schedule/14.md b/2020/schedule/14.md
index ed9f6f68..b1bd3d71 100644
--- a/2020/schedule/14.md
+++ b/2020/schedule/14.md
@@ -5,39 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/13">Experience Report: Steps to "Emacs Hyper Notebooks"</a>
Next: <a href="/2020/schedule/15">Moving from Jekyll to OrgMode, an experience report</a>
+Saturday, Nov 28 2020, 2:18 PM - 2:38 PM EST / 11:18 AM - 11:38 AM PST / 7:18 PM - 7:38 PM UTC / 8:18 PM - 8:38 PM CET / 3:18 AM - 3:38 AM +08
-# Literate Programming in Emacs Org-Mode
-Saturday, Nov 28 2020, 2:18 PM - 2:38 PM EST / 11:18 AM - 11:38 AM PST / 7:18 PM - 7:38 PM UTC / 8:18 PM - 8:38 PM CET / 3:18 AM - 3:38 AM +08
-Adam Ard
-
-Org mode, among its numerous features, has the ability to do full
-literate programming (with tangling and weaving the way Donald Knuth
-originally intended). As a programmer, you can work comfortably,
-completely inside an org-mode buffer. When you are ready, emacs will
-generate the appropriate documentation and source code files for you.
-If you are a lone emacs user on your project, simply commit these
-exported files and keep your org file to yourself &#x2013; no one is the
-wiser.
-
-Watch "Literate Programming in Emacs Org-mode" to learn how you can
-annotate code snippets in an org file so they can be automatically
-exported to their proper locations in your source tree. Keep
-important information about your project where it should be: right
-next to the code itself. Not as ugly, out-of-date notes sitting
-behind comment characters in your source files, but front and center
-in well-formatted markdown and pdf files.
-
-And, for advanced use cases, see how you can even use a full-fledged
-macro processor like m4 to personalize your workflow even more.
-Literate programming on steroids!
-
-I'll walk you through the whole process, starting from an empty
-project README.org to a simple example that generates source and
-documentation.
-
-
-
-
+[[!inline pages="../info/14" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/13">Experience Report: Steps to "Emacs Hyper Notebooks"</a>
diff --git a/2020/schedule/15.md b/2020/schedule/15.md
index 8f603cd6..377c3751 100644
--- a/2020/schedule/15.md
+++ b/2020/schedule/15.md
@@ -5,25 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/14">Literate Programming in Emacs Org-Mode</a>
Next: <a href="/2020/schedule/16">Org-roam: Presentation, Demonstration, and What's on the Horizon</a>
+Saturday, Nov 28 2020, 2:41 PM - 2:51 PM EST / 11:41 AM - 11:51 AM PST / 7:41 PM - 7:51 PM UTC / 8:41 PM - 8:51 PM CET / 3:41 AM - 3:51 AM +08
-# Moving from Jekyll to OrgMode, an experience report
-Saturday, Nov 28 2020, 2:41 PM - 2:51 PM EST / 11:41 AM - 11:51 AM PST / 7:41 PM - 7:51 PM UTC / 8:41 PM - 8:51 PM CET / 3:41 AM - 3:51 AM +08
-Adolfo Villafiorita
-
-I have been a long time user of static site generators, such as
-Jekyll.
-
-I recently discovered Org Mode's publishing features and started
-appreciating flexibility and capabilities, especially when literate
-programming comes into play to generate "dynamic" content.
-
-In this talk/tutorial I will present the challenges I faced and how I
-finally moved my homepage and the University of Trento's Computational
-Logic website to Org Mode.
-
-
-
-
+[[!inline pages="../info/15" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/14">Literate Programming in Emacs Org-Mode</a>
diff --git a/2020/schedule/16.md b/2020/schedule/16.md
index 3ec85113..70cc8ebc 100644
--- a/2020/schedule/16.md
+++ b/2020/schedule/16.md
@@ -5,38 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/15">Moving from Jekyll to OrgMode, an experience report</a>
Next: <a href="/2020/schedule/17">Org-mode and Org-Roam for Scholars and Researchers</a>
+Saturday, Nov 28 2020, 2:54 PM - 3:14 PM EST / 11:54 AM - 12:14 PM PST / 7:54 PM - 8:14 PM UTC / 8:54 PM - 9:14 PM CET / 3:54 AM - 4:14 AM +08
-# Org-roam: Presentation, Demonstration, and What's on the Horizon
-Saturday, Nov 28 2020, 2:54 PM - 3:14 PM EST / 11:54 AM - 12:14 PM PST / 7:54 PM - 8:14 PM UTC / 8:54 PM - 9:14 PM CET / 3:54 AM - 4:14 AM +08
-Leo Vivier
-
-Org-roam is a Roam replica built on top of the all-powerful Org-mode.
-
-Org-roam is a solution for effortless non-hierarchical note-taking with
-Org-mode. With Org-roam, notes flow naturally, making note-taking fun
-and easy. Org-roam should also work as a plug-and-play solution for
-anyone already using Org-mode for their personal wiki.
-
-Org-roam aims to implement the core features of Roam, leveraging the
-mature ecosystem around Org-mode where possible. Eventually, we hope to
-further introduce features enabled by the Emacs ecosystem.
-
-The purpose of the talk is to introduce people to Org-roam, whether
-they be Org-mode connoisseurs or newcomers. A lot of people have
-found value in adopting Org-roam and the Zettelkasten method in their
-workflows, and the goal is to demonstrate how they achieved it. The
-last part will present the future milestones that are in store for
-Org-roam.
-
-Examples of short-presentations I've recorded in the past:
-
-- [Org-Roam v1.2.0: Headlines & Unlinked References - YouTube](https://www.youtube.com/watch?v=3DoyEMlIxIHXs)
-- [Org-roam-bibtex - Quick Presentation - YouTube](https://www.youtube.com/watch?v=3DWy9WvF5gWYg)
-- [Org-roam-dailies: Demonstration - YouTube](https://www.youtube.com/watch?v=3D1q9x2aZCJJ4)
-
-
-
-
+[[!inline pages="../info/16" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/15">Moving from Jekyll to OrgMode, an experience report</a>
diff --git a/2020/schedule/17.md b/2020/schedule/17.md
index f54ea546..ef64081d 100644
--- a/2020/schedule/17.md
+++ b/2020/schedule/17.md
@@ -5,36 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/16">Org-roam: Presentation, Demonstration, and What's on the Horizon</a>
Next: <a href="/2020/schedule/18">Org-roam: Technical Presentation</a>
+Saturday, Nov 28 2020, 3:17 PM - 3:37 PM EST / 12:17 PM - 12:37 PM PST / 8:17 PM - 8:37 PM UTC / 9:17 PM - 9:37 PM CET / 4:17 AM - 4:37 AM +08
-# Org-mode and Org-Roam for Scholars and Researchers
-Saturday, Nov 28 2020, 3:17 PM - 3:37 PM EST / 12:17 PM - 12:37 PM PST / 8:17 PM - 8:37 PM UTC / 9:17 PM - 9:37 PM CET / 4:17 AM - 4:37 AM +08
-Noorah Alhasan
-
-Org-mode improved so much over the years, and the use-cases in org-mode are
-vast and highly technical. There is something for everyone in org-mode, and
-it's important to sift through all of these features and figure out what's
-best for a given situation or specific users. Therefore, I will be
-targeting academics and scholars that are engaging with literature in the
-early stages of a project or their academic careers.
-
-Academics and scholars engage with complex ideas and unstructured research
-workflows. I believe that org-mode can add more structure to the madness,
-and I will use this talk to clarify a possible solution to reduce such
-complexity. I propose a research workflow framework that utilizes
-org-mode, its raw form, and its many associated packages. However, the main
-package I will be mostly talking about is Org-Roam, and the way its
-underlying principles will revolutionize the research workflow.
-
-This presentation will help researchers organize and build their knowledge
-database in a streamlined and effective way. The research workflow is
-presented in three phases: planning, note-taking, and reference management.
-I will talk briefly about the packages and special-use cases for each stage
-and learned lessons along the way. Finally, the presentation concludes with
-future considerations and possible org-mode features.
-
-
-
-
+[[!inline pages="../info/17" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/16">Org-roam: Presentation, Demonstration, and What's on the Horizon</a>
diff --git a/2020/schedule/18.md b/2020/schedule/18.md
index 32b8ec2c..7831138e 100644
--- a/2020/schedule/18.md
+++ b/2020/schedule/18.md
@@ -5,47 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/17">Org-mode and Org-Roam for Scholars and Researchers</a>
Next: <a href="/2020/schedule/19">Sharing blogs (and more) with org-webring</a>
+Saturday, Nov 28 2020, 3:40 PM - 4:00 PM EST / 12:40 PM - 1:00 PM PST / 8:40 PM - 9:00 PM UTC / 9:40 PM - 10:00 PM CET / 4:40 AM - 5:00 AM +08
-# Org-roam: Technical Presentation
-Saturday, Nov 28 2020, 3:40 PM - 4:00 PM EST / 12:40 PM - 1:00 PM PST / 8:40 PM - 9:00 PM UTC / 9:40 PM - 10:00 PM CET / 4:40 AM - 5:00 AM +08
-Leo Vivier
-
-Org-roam is a Roam replica built on top of the all-powerful Org-mode.
-
-Org-roam is a solution for effortless non-hierarchical note-taking
-with Org-mode. With Org-roam, notes flow naturally, making
-note-taking fun and easy. Org-roam should also work as a
-plug-and-play solution for anyone already using Org-mode for their
-personal wiki.
-
-Org-roam aims to implement the core features of Roam, leveraging the
-mature ecosystem around Org-mode where possible. Eventually, we hope
-to further introduce features enabled by the Emacs ecosystem.
-
-The purpose of the talk is to present some technical aspects of
-Org-roam. From the very beginning, we wanted Org-roam to scale with
-your notes, and this meant that we had to keep a close eye on our
-performances. As we iterated, optimisation remained a top-priority,
-leading us to constantly peek under Org-mode's hood. Not only has
-this made us better developers, but it has also uncovered paths of
-optimisation for Org-mode itself.
-
-The talk is targeted at software engineers willing to peek under
-Org-mode's hood. A rudimentary understanding of Elisp will be
-required.
-
-Points to be covered
-
-- SQL database via emacsql
-- Elisp libraries
-- Parsing of Org-mode files
-- org-elements.e
-- Parsing with a background-process
-- Ensuring consistency via hooks
-
-
-
-
+[[!inline pages="../info/18" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/17">Org-mode and Org-Roam for Scholars and Researchers</a>
diff --git a/2020/schedule/19.md b/2020/schedule/19.md
index d444d4d7..03803218 100644
--- a/2020/schedule/19.md
+++ b/2020/schedule/19.md
@@ -5,28 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/18">Org-roam: Technical Presentation</a>
Next: <a href="/2020/schedule/20">OMG Macros</a>
+Saturday, Nov 28 2020, 4:03 PM - 4:13 PM EST / 1:03 PM - 1:13 PM PST / 9:03 PM - 9:13 PM UTC / 10:03 PM - 10:13 PM CET / 5:03 AM - 5:13 AM +08
-# Sharing blogs (and more) with org-webring
-Saturday, Nov 28 2020, 4:03 PM - 4:13 PM EST / 1:03 PM - 1:13 PM PST / 9:03 PM - 9:13 PM UTC / 10:03 PM - 10:13 PM CET / 5:03 AM - 5:13 AM +08
-Brett Gilio
-
-In this talk I will detail the ways in which static website generation
-results may be enhanced using org-webring. This talk will cover not
-only how to use org-webring (including how accessible and low-friction
-it is), but also how you may customize it, utilize it in different
-contexts unrelated to blogging (tracking project commits), and even as
-a way to respond to other blogs in a cogent and manner.
-
-Additionally, I will go into slight detail as to the history of this
-project, why it was made, what we are working on, and what we
-remaining we need to do before we can submit it to GNU Emacs /
-Org-mode.
-
-I think, in all, this can quite easily cover a 10 minute window.
-
-
-
-
+[[!inline pages="../info/19" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/18">Org-roam: Technical Presentation</a>
diff --git a/2020/schedule/20.md b/2020/schedule/20.md
index 038de641..d9952e2a 100644
--- a/2020/schedule/20.md
+++ b/2020/schedule/20.md
@@ -5,28 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/19">Sharing blogs (and more) with org-webring</a>
Next: <a href="/2020/schedule/38">Emacs development update</a>
+Saturday, Nov 28 2020, 4:16 PM - 4:36 PM EST / 1:16 PM - 1:36 PM PST / 9:16 PM - 9:36 PM UTC / 10:16 PM - 10:36 PM CET / 5:16 AM - 5:36 AM +08
-# OMG Macros
-Saturday, Nov 28 2020, 4:16 PM - 4:36 PM EST / 1:16 PM - 1:36 PM PST / 9:16 PM - 9:36 PM UTC / 10:16 PM - 10:36 PM CET / 5:16 AM - 5:36 AM +08
-Corwin Brust
-
-Macros are a powerful tool. In the context of Emacs Lisp programming
-they can also provide us with a "foot-gun" of immense proportions.
-Join the dungeon-mode project as we trip over our own macros, so to
-speak, in the context of building a GPLv3+ turn-based role-playing
-game engine and game design features for Emacs.
-
-In this 20m talk I'll briefly introduce some rationales leading to
-storing all game source and play state information within org-mode
-documents (spoiler: it's about freedom), then go into some detail
-around the "ETL" process design that currently accomplishes this.
-Finally, we'll look closely at one especially problematic macro deep
-within this solution, and invite people to throw fruit^11^dhelp draw
-conclusions, ask questions, and discuss.
-
-
-
-
+[[!inline pages="../info/20" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/19">Sharing blogs (and more) with org-webring</a>
diff --git a/2020/schedule/21.md b/2020/schedule/21.md
index 2bcf641e..14379c25 100644
--- a/2020/schedule/21.md
+++ b/2020/schedule/21.md
@@ -5,64 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/08">Building reproducible Emacs</a>
Next: <a href="/2020/schedule/09">Orgmode - your life in plain text</a>
+Saturday, Nov 28 2020, 11:47 AM - 12:27 PM EST / 8:47 AM - 9:27 AM PST / 4:47 PM - 5:27 PM UTC / 5:47 PM - 6:27 PM CET / 12:47 AM - 1:27 AM +08
-# On why most of the best features in eev look like 5-minute hacks
-Saturday, Nov 28 2020, 11:47 AM - 12:27 PM EST / 8:47 AM - 9:27 AM PST / 4:47 PM - 5:27 PM UTC / 5:47 PM - 6:27 PM CET / 12:47 AM - 1:27 AM +08
-Eduardo Ochs
-
-In the last months there were several hundreds of messages in
-emacs-devel in threads with names like "A proposal for a friendlier
-Emacs", "How to make Emacs popular again", and "Interactive guide for
-new users". On the one hand I am absolutely sure that eev is very
-good answer to all these themes; on the other hand I know that eev is
-based on some design decisions that offend most people used to modern,
-"user-friendly" interfaces - and I feel that at this moment mentions
-to eev in those discussions in emacs-devel would not be welcome.
-
-In this talk I will start by presenting very quickly the main "killer
-features" of eev - namely:
-
-1. Elisp hyperlinks,
-
-2. interactive tutorials that can be navigated with just three keys,
-
-3. non-invasiveness - people can easily turn eev on for only five
- minutes each week, play with it a bit, and then turn it off,
-
-4. high discoverability factor,
-
-5. a way to create "hyperlinks to here",
-
-6. hyperlinks to specific points in PDF documents and video files -
- i.e., to specific pages, strings, and timemarks,
-
-7. a way to control shell-like programs ("eepitch"), and
-
-8. an Elisp tutorial,
-
-and after that I will present the design decisions behind eev, in two
-parts:
-
-1. eev is a very thin layer above Emacs-the-Lisp-environment; it is
- as simple as possible, but in the sense of "simple" that was used
- in Forth, and that is not very familiar today.
-
-2. Very often when I am using Emacs - which is my main interface
- with the system - I realize that I can automate some task that I
- just did by hand twice of thrice; and that I should do that,
- because automating that would be both easy and fun. Over the
- years I experimented with several ways of automating tasks,
- refined some of these ways a lot, and found a certain "best"
- style that, again, usually offends people who are accustomed with
- the modern ideas of user-friendliness. In this style, used in
- most template-based functions in eev, both textual documentation
- and error-handling are kept to a minimum. I will show how, and
- why, eev makes this style works so well, and how users can create
- their own templated functions very quickly - as "5-minute hacks".
-
-
-
-
+[[!inline pages="../info/21" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/08">Building reproducible Emacs</a>
diff --git a/2020/schedule/22.md b/2020/schedule/22.md
index 9d9907b9..60a2ae35 100644
--- a/2020/schedule/22.md
+++ b/2020/schedule/22.md
@@ -5,79 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/38">Emacs development update</a>
Next: <a href="/2020/schedule/23">Incremental Parsing with emacs-tree-sitter</a>
+Sunday, Nov 29 2020, 9:33 AM - 9:53 AM EST / 6:33 AM - 6:53 AM PST / 2:33 PM - 2:53 PM UTC / 3:33 PM - 3:53 PM CET / 10:33 PM - 10:53 PM +08
-# Powering-up Special Blocks
-Sunday, Nov 29 2020, 9:33 AM - 9:53 AM EST / 6:33 AM - 6:53 AM PST / 2:33 PM - 2:53 PM UTC / 3:33 PM - 3:53 PM CET / 10:33 PM - 10:53 PM +08
-Musa Al-hassy
-
-Users will generally only make use of a few predefined \`special
-blocks', such as \`example, centre, quote', and will not bother with
-the effort required to make new ones. When new encapsulating notions
-are required, users will either fallback on HTML or LaTeX specific
-solutions, usually littered with \`#+ATTR' clauses to pass around
-configurations or parameters.
-
-Efforts have been exerted to mitigate the trouble of producing new
-special blocks. However, the issue of passing parameters is still
-handled in a clumsy fashion; e.g., by having parameters be expressed
-in a special block's content using specific keywords.
-
-We present a novel approach to making special blocks in a familiar
-fashion and their use also in a familiar fashion. We achieve the
-former by presenting \`\`defblock'', an anaphoric macro exceedingly
-similar to \`\`defun'', and for the latter we mimic the usual
-\`\`src''-block syntax for argument passing to support special blocks.
-
-For instance, here is a sample declaration.
-
- (defblock stutter () (reps 2)
- "Output the CONTENTS of the block REPS many times"
- (org-parse (s-repeat reps contents)))
-
-Here is an invocation that passes an *optional* argument; which
-defaults to 2 when not given.
-
-<div class="stutter">
-<p>
-Emacs for the win ⌣̈
-</p>
-
-</div>
-
-Upon export, to HTML or LaTeX for instance, the contents of this block
-are repeated (\`stuttered') 5 times. The use of \`\`src''-like
-invocation may lead to a decrease in \`#+ATTR' clauses.
-
-In the presentation, we aim to show a few \`practical' special blocks
-that users may want: A block that &#x2026;
-
-- translates *some selected* text &#x2014;useful for multilingual blogs
-- hides *some selected* text &#x2014;useful for learning, quizzes
-- folds/boxes text &#x2014;useful in blogs for folding away details
-
-In particular, all of these examples will be around ~5 lines long!
-
-We also have a larger collection of more useful block types, already
-implemented.
-
-The notable features of the system are as follows.
-
-- Familiar \`\`defun'' syntax for making block &#x2014;\`\`defblock''
-- Familiar \`\`src'' syntax for passing arguments &#x2014;e.g., \`\`:key
- value''
-- Fine-grained control over export translation phases &#x2014;c.f.,
- \`\`org-parse'' above
-- **Modular**: New blocks can be made out of existing blocks really
- quickly using \`\`blockcall'' &#x2014;similar to Lisp's \`\`funcall''. We
- will show how to fuse two blocks to make a new one, also within ~5
- lines.
-
-It is hoped that the ease of creating custom special blocks will be a
-gateway for many Emacs users to start using Lisp.
-
-
-
-
+[[!inline pages="../info/22" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/38">Emacs development update</a>
diff --git a/2020/schedule/23.md b/2020/schedule/23.md
index 6ebfd0ac..d35b6810 100644
--- a/2020/schedule/23.md
+++ b/2020/schedule/23.md
@@ -5,24 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/22">Powering-up Special Blocks</a>
Next: <a href="/2020/schedule/24">Analyze code quality through Emacs: a smart forensics approach and the story of a hack</a>
+Sunday, Nov 29 2020, 9:56 AM - 10:46 AM EST / 6:56 AM - 7:46 AM PST / 2:56 PM - 3:46 PM UTC / 3:56 PM - 4:46 PM CET / 10:56 PM - 11:46 PM +08
-# Incremental Parsing with emacs-tree-sitter
-Sunday, Nov 29 2020, 9:56 AM - 10:46 AM EST / 6:56 AM - 7:46 AM PST / 2:56 PM - 3:46 PM UTC / 3:56 PM - 4:46 PM CET / 10:56 PM - 11:46 PM +08
-Tuấn-Anh Nguyễn
-
-Tree-sitter is a parser generator and an incremental parsing library.
-emacs-tree-sitter is its most popular Emacs binding, which aims to be
-the foundation of Emacs packages that understand source code's
-structure. Examples include better code highlighting, folding,
-indexing, structural navigation.
-
-In this talk, I will describe the current state of emacs-tree-sitter's
-APIs and functionalities. I will also discuss areas that need
-improvements and contribution from the community.
-
-
-
-
+[[!inline pages="../info/23" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/22">Powering-up Special Blocks</a>
diff --git a/2020/schedule/24.md b/2020/schedule/24.md
index 175400cb..96475c48 100644
--- a/2020/schedule/24.md
+++ b/2020/schedule/24.md
@@ -5,36 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/23">Incremental Parsing with emacs-tree-sitter</a>
Next: <a href="/2020/schedule/25">Traverse complex JSON structures with live feedback</a>
+Sunday, Nov 29 2020, 10:49 AM - 11:09 AM EST / 7:49 AM - 8:09 AM PST / 3:49 PM - 4:09 PM UTC / 4:49 PM - 5:09 PM CET / 11:49 PM - 12:09 AM +08
-# Analyze code quality through Emacs: a smart forensics approach and the story of a hack
-Sunday, Nov 29 2020, 10:49 AM - 11:09 AM EST / 7:49 AM - 8:09 AM PST / 3:49 PM - 4:09 PM UTC / 4:49 PM - 5:09 PM CET / 11:49 PM - 12:09 AM +08
-Andrea
-
-Emacs, show me how much technical debt and where it is in this
-software repository!
-
-Also how complex is this module?
-
-And who is the main developer of this component?
-
-Mmm, if I change this file, do I need to change something else, Emacs?
-
-Ah, I need help of somebody to change this code! Emacs can you tell me
-who knows something about this file?
-
-The above are some questions my Emacs can answer (an M-x away).
-
-It all started with "Your Code as a Crime Scene", an insightful book
-by Adam Tornhill, and it continued with a big useful hack.
-
-In this talk I want to show the analyses I can produce on software
-repositories with my Emacs, explain how they help me in my daily work,
-give a bit of context of how Adam came up with them, and show the
-dirty code that makes this wonderful functionality work.
-
-
-
-
+[[!inline pages="../info/24" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/23">Incremental Parsing with emacs-tree-sitter</a>
diff --git a/2020/schedule/25.md b/2020/schedule/25.md
index 72dc39a9..eb2a7821 100644
--- a/2020/schedule/25.md
+++ b/2020/schedule/25.md
@@ -5,35 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/24">Analyze code quality through Emacs: a smart forensics approach and the story of a hack</a>
Next: <a href="/2020/schedule/39">NonGNU ELPA</a>
+Sunday, Nov 29 2020, 11:12 AM - 11:22 AM EST / 8:12 AM - 8:22 AM PST / 4:12 PM - 4:22 PM UTC / 5:12 PM - 5:22 PM CET / 12:12 AM - 12:22 AM +08
-# Traverse complex JSON structures with live feedback
-Sunday, Nov 29 2020, 11:12 AM - 11:22 AM EST / 8:12 AM - 8:22 AM PST / 4:12 PM - 4:22 PM UTC / 5:12 PM - 5:22 PM CET / 12:12 AM - 12:22 AM +08
-Zen Monk Alain M. Lafon
-
-If you are working with complex nested JSON structures, you are
-probably familiar with jq which is like sed for JSON data and great at
-what it does. However, being a command-line tool like sed, the
-feedback for writing queries and seeing their results is a discrete
-process and not live.
-
-When working with Emacs, we are used to good auto-completion and live
-feedback. Formerly, this was mostly done with static input, but with
-modern completion frameworks like Ivy and Counsel, this can be done
-with dynamic inputs, as well.
-
-counsel-jq is a package with which you can quickly test queries and
-traverse a complex JSON structure whilst having live feedback. Just
-call `M-x counsel-jq` in a buffer containing JSON, then start writing
-your `jq` query string and see the output appear live in the message
-area. Whenever you're happy, hit `RET` and the results will be
-displayed to you in the buffer `*jq-json*`.
-
-In this lightning talk, I'll give a quick overview on how to use
-counsel-jq and how to build similar completion functionality.
-
-
-
-
+[[!inline pages="../info/25" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/24">Analyze code quality through Emacs: a smart forensics approach and the story of a hack</a>
diff --git a/2020/schedule/26.md b/2020/schedule/26.md
index 7b521527..ef8e12c6 100644
--- a/2020/schedule/26.md
+++ b/2020/schedule/26.md
@@ -5,30 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/39">NonGNU ELPA</a>
Next: <a href="/2020/schedule/27">State of Retro Gaming in Emacs</a>
+Sunday, Nov 29 2020, 1:03 PM - 1:13 PM EST / 10:03 AM - 10:13 AM PST / 6:03 PM - 6:13 PM UTC / 7:03 PM - 7:13 PM CET / 2:03 AM - 2:13 AM +08
-# Emacs as a Highschooler: How It Changed My Life
-Sunday, Nov 29 2020, 1:03 PM - 1:13 PM EST / 10:03 AM - 10:13 AM PST / 6:03 PM - 6:13 PM UTC / 7:03 PM - 7:13 PM CET / 2:03 AM - 2:13 AM +08
-Pierce Wang
-
-Could Emacs be humanity's solution to the turbulent years of
-adolescence? So much more than a text editor, Emacs changed the way I
-approach everything at the age of 15. In the two years since
-discovering Emacs in my sophomore year of high school, I have been
-constantly amazed at what Emacs is capable of. In this talk, I would
-like to share this journey of discovery and what I've learned along
-the way, beginning with what led me to Emacs. I will describe the
-many ways that Emacs has shaped my life as a student, a programmer, a
-violinist, and a productive and happy adolescent. In each case, I
-have thoroughly enjoyed figuring out the best way to make Emacs work
-for me, and I'd like to share this with others. In addition, I'd like
-to take this opportunity to address some roadblocks that I have
-noticed having observed some of my peers' attempts at learning Emacs
-and possible solutions for those barriers, taking inspiration from
-various sources both from inside and outside the Emacs community.
-
-
-
-
+[[!inline pages="../info/26" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/39">NonGNU ELPA</a>
diff --git a/2020/schedule/27.md b/2020/schedule/27.md
index 7e6e75c9..d2d7e65b 100644
--- a/2020/schedule/27.md
+++ b/2020/schedule/27.md
@@ -5,22 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/26">Emacs as a Highschooler: How It Changed My Life</a>
Next: <a href="/2020/schedule/28">Welcome To The Dungeon</a>
+Sunday, Nov 29 2020, 1:16 PM - 1:26 PM EST / 10:16 AM - 10:26 AM PST / 6:16 PM - 6:26 PM UTC / 7:16 PM - 7:26 PM CET / 2:16 AM - 2:26 AM +08
-# State of Retro Gaming in Emacs
-Sunday, Nov 29 2020, 1:16 PM - 1:26 PM EST / 10:16 AM - 10:26 AM PST / 6:16 PM - 6:26 PM UTC / 7:16 PM - 7:26 PM CET / 2:16 AM - 2:26 AM +08
-Vasilij "wasamasa" Schneidermann
-
-Many jokes have been made about the true nature of Emacs, such as it
-being a fully-fledged operating system. This talk will demonstrate
-its suitability for playing retro games, then explore the inner
-workings of a [CHIP-8](https://en.wikipedia.org/wiki/CHIP-8) emulator capable of smooth video game emulation.
-
-[1]: <https://depp.brause.cc/talks/chicken-saar/>
-[2]: <https://depp.brause.cc/talks/openchaos-2019-11/>
-
-
-
-
+[[!inline pages="../info/27" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/26">Emacs as a Highschooler: How It Changed My Life</a>
diff --git a/2020/schedule/28.md b/2020/schedule/28.md
index 15755292..f736a7df 100644
--- a/2020/schedule/28.md
+++ b/2020/schedule/28.md
@@ -5,37 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/27">State of Retro Gaming in Emacs</a>
Next: <a href="/2020/schedule/29">Pathing of Least Resistance</a>
+Sunday, Nov 29 2020, 1:29 PM - 2:19 PM EST / 10:29 AM - 11:19 AM PST / 6:29 PM - 7:19 PM UTC / 7:29 PM - 8:19 PM CET / 2:29 AM - 3:19 AM +08
-# Welcome To The Dungeon
-Sunday, Nov 29 2020, 1:29 PM - 2:19 PM EST / 10:29 AM - 11:19 AM PST / 6:29 PM - 7:19 PM UTC / 7:29 PM - 8:19 PM CET / 2:29 AM - 3:19 AM +08
-Erik Elmshauser and Corwin Brust
-
-Dungeon is an oral and physical media fantasy and abstract role-play
-gaming tradition that seems to have grown from miniature and
-war-gaming communities in and around the University of Minnesota, Twin
-Cities in the 1950s and 60s.
-
-Dungeon is inherently free (or nearly free, you do need paper and
-dice), both to play and to create your own games. Moreover, as a
-generality among practices, as Dungeon authors, we dislike impositions
-on our creative freedoms beyond those of our own imagination and
-tastes, especially those such as of a "brand" or "system", or e.g.
-copyright holder.
-
-In December of 2019 some friends who grew up creating and playing in
-each others' Dungeons decided to try making an engine for these types
-of games using Emacs and Emacs Lisp, org-mode, and maybe some
-duct-tape if needed. In this 50 minute talk Corwin and Erik introduce
-dungeon-mode, and explain why we decided to do that. We'll sketch out
-the project in both lay and technical terms, provide a tactical update
-with respect to completing our initial concept, describe how things
-are going in human terms, and share some things we've learned so far
-from and about Emacs and the free software community working on this
-project, while leaving 10-15m for questions and discussion.
-
-
-
-
+[[!inline pages="../info/28" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/27">State of Retro Gaming in Emacs</a>
diff --git a/2020/schedule/29.md b/2020/schedule/29.md
index 9ae2931d..cc7fd154 100644
--- a/2020/schedule/29.md
+++ b/2020/schedule/29.md
@@ -5,79 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/28">Welcome To The Dungeon</a>
Next: <a href="/2020/schedule/30">A tour of vterm</a>
+Sunday, Nov 29 2020, 2:22 PM - 2:42 PM EST / 11:22 AM - 11:42 AM PST / 7:22 PM - 7:42 PM UTC / 8:22 PM - 8:42 PM CET / 3:22 AM - 3:42 AM +08
-# Pathing of Least Resistance
-Sunday, Nov 29 2020, 2:22 PM - 2:42 PM EST / 11:22 AM - 11:42 AM PST / 7:22 PM - 7:42 PM UTC / 8:22 PM - 8:42 PM CET / 3:22 AM - 3:42 AM +08
-Corwin Brust
-
-We hope the dungeon-mode project will eventually support three primary
-use-cases related to editing/designing, playing and running/hosting
-RPG games. In a "vanilla" game, characters descend from the "General
-Store" (the one safe haven available) into the dungeon, a (nominally)
-underground labyrinth of unknown dimensions with generally asocial
-occupants and occasional bits of treasure.
-
-Players can track (as long as the "lights" stay on) the location of
-their party of characters via a process we usually call "mapping".
-This has usually involved the dungeon master "calling out" the shape
-of the map level as the party, in turn, calls out their route or
-"pathing" decisions.
-
- DUNGEON-MASTER
- "Corridor East-West"
- PARTY-LEADER
- "West"
- DUNGEON-MASTER
- "Ten feet, corridor ends goes South"
- PARTY-LEADER
- "South"
- DUNGEON-MASTER
- "Step into an area. It's a
- twenty-by-twenty area extending
- West, with exits in the Western
- part of the southern wall and the
- Southern part of the eastern wall."
- **rolls dice**
- "Nothing waiting in the area"
-
-Mapping quickly emerged as a focal point for development. Especially,
-we were to excited to try creating an 'on-the-fly' graphical
-representation of the map that could respond to changing in-game
-circumstances. (Oops, all your Elves are dead. Where'd the secret
-doors go?)
-
-During this 20m talk I'll provide a couple of reference points on
-Emacs's image and especially SVG rendering capabilities, then
-introduce a series of proofs-of-concept focusing on our experience
-using core libraries such as \`svg.el' to make them.
-
-As of submitting abstracts, these include
-
-- "DM map view" - select and render a complete game map,
-- "play mode map" - progressively render maps based on game action,
-- "battle-board" - track damage taken by player characters, and
-- "character-sheet" - a graphical character sheet
-- "previews" - view map tiles when hovering their draw code in org
-- "sketch" - a "click-to-draw" experiment
-
-For an advanced peek please see our git repository (but note we're
-moving to Savannah soon). We'll be talking first about [map.el](https://github.com/dungeon-mode/game/blob/master/src/dm-map.el),
-especially \`dm-map-draw' and helpers. A few sample game maps this can
-render are available as org-mode documents in the [Docs/Maps](https://github.com/dungeon-mode/game/blob/master/Docs/Maps) folder.
-
-Those interested could compare functions between dm-map.el and
-[dm-draw.el](https://github.com/dungeon-mode/game/blob/master/src/dm-draw.el), which is an incomplete rewrite of the "SVG rendering"
-functions used only by [dm-sketch.el](https://github.com/dungeon-mode/game/blob/master/src/dm-sketch.el) (so far). Hopefully, it will be
-writing our "sketches" back out to org docs in time for the
-conference.
-
-Note on github:
-The project is transitioning to Savannah. Please watch for
-redirects/moved notices when using these links.
-
-
-
-
+[[!inline pages="../info/29" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/28">Welcome To The Dungeon</a>
diff --git a/2020/schedule/30.md b/2020/schedule/30.md
index c7caa79c..9da2b1f4 100644
--- a/2020/schedule/30.md
+++ b/2020/schedule/30.md
@@ -5,24 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/29">Pathing of Least Resistance</a>
Next: <a href="/2020/schedule/31">Lakota Language and Emacs</a>
+Sunday, Nov 29 2020, 2:45 PM - 2:55 PM EST / 11:45 AM - 11:55 AM PST / 7:45 PM - 7:55 PM UTC / 8:45 PM - 8:55 PM CET / 3:45 AM - 3:55 AM +08
-# A tour of vterm
-Sunday, Nov 29 2020, 2:45 PM - 2:55 PM EST / 11:45 AM - 11:55 AM PST / 7:45 PM - 7:55 PM UTC / 8:45 PM - 8:55 PM CET / 3:45 AM - 3:55 AM +08
-Gabriele Bozzola (@sbozzolo)
-
-Vterm is a fast and fully capable terminal emulator in GNU Emacs built
-as a dynamic module on top of libvterm. In this talk, I will give an
-overview of the package. I will discuss the installation and common
-customizations. I will go into details on some of the most important
-features, such as directory tracking or message passing. Finally, I
-will touch upon known incompatibilities and the future directions of
-the project.
-
-URL: <https://github.com/akermu/emacs-libvterm>
-
-
-
-
+[[!inline pages="../info/30" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/29">Pathing of Least Resistance</a>
diff --git a/2020/schedule/31.md b/2020/schedule/31.md
index 899bc2eb..d48c6fa4 100644
--- a/2020/schedule/31.md
+++ b/2020/schedule/31.md
@@ -5,38 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/30">A tour of vterm</a>
Next: <a href="/2020/schedule/32">Object Oriented Code in the Gnus Newsreader</a>
+Sunday, Nov 29 2020, 2:58 PM - 3:08 PM EST / 11:58 AM - 12:08 PM PST / 7:58 PM - 8:08 PM UTC / 8:58 PM - 9:08 PM CET / 3:58 AM - 4:08 AM +08
-# Lakota Language and Emacs
-Sunday, Nov 29 2020, 2:58 PM - 3:08 PM EST / 11:58 AM - 12:08 PM PST / 7:58 PM - 8:08 PM UTC / 8:58 PM - 9:08 PM CET / 3:58 AM - 4:08 AM +08
-Grant Shangreaux
-
-When I began learning Lakota, the language of my ancestors, there was
-no way for me to type it on a computer without using non-free
-software. Additionally, the only software I could find supported just
-one of the proposed orthographies for the language.
-
-As an Emacs user, I knew that free software offered the ability for
-many types of languages to co-exist in the same program and went
-looking for how to enable an input mode for Lakota in Emacs. This
-talk will discuss how Emacs enabled me to define input modes for
-multiple Lakota orthographies using the Quail multilingual input
-package.
-
-I will also discuss some of the ethical and cultural considerations I
-went through when publishing the package. Lakota and many other
-indigenous languages were actively suppressed for many years, and are
-in danger of extinction. The language is being recovered now, but
-much of the available educational material comes from non-indian
-people. Before publishing an input mode for Emacs, I wanted to ensure
-that I included an orthography developed by Lakota people, not only
-the suggested orthography present in most of my educational material.
-Additionally, the choice of where to publish the source as an Emacs
-package was important, since some corporations have been known to
-support ongoing oppression against indigenous descended peoples.
-
-
-
-
+[[!inline pages="../info/31" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/30">A tour of vterm</a>
diff --git a/2020/schedule/32.md b/2020/schedule/32.md
index 8264c08b..fed3a2ab 100644
--- a/2020/schedule/32.md
+++ b/2020/schedule/32.md
@@ -5,30 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/31">Lakota Language and Emacs</a>
Next: <a href="/2020/schedule/33">Maxima a computer algebra system in Emacs</a>
+Sunday, Nov 29 2020, 3:11 PM - 3:31 PM EST / 12:11 PM - 12:31 PM PST / 8:11 PM - 8:31 PM UTC / 9:11 PM - 9:31 PM CET / 4:11 AM - 4:31 AM +08
-# Object Oriented Code in the Gnus Newsreader
-Sunday, Nov 29 2020, 3:11 PM - 3:31 PM EST / 12:11 PM - 12:31 PM PST / 8:11 PM - 8:31 PM UTC / 9:11 PM - 9:31 PM CET / 4:11 AM - 4:31 AM +08
-Eric Abrahamsen
-
-The venerable Gnus newsreader has evolved over the years to interface
-with many different types of news- or mail-like backend programs,
-presenting all of them using a unified interface. This sort of
-software often calls for an object-oriented architecture, at least as
-regards polymorphism, yet Gnus was written well before Emacs lisp
-acquired the object-oriented tools and libraries &#x2013; largely borrowed
-from Common Lisp &#x2013; that it boasts today.
-
-Yet Gnus needed something "object-oriented-like", and so nnoo.el was
-born: a rather amazing (and frankly terrifying) implementation of
-object-oriented behavior using functional code.
-
-This talk will be a brief introduction to how this existing system
-works, and to the ongoing, incremental effort to port it over to newer
-Elisp tools like generic functions, structs, and objects.
-
-
-
-
+[[!inline pages="../info/32" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/31">Lakota Language and Emacs</a>
diff --git a/2020/schedule/33.md b/2020/schedule/33.md
index cf13f3e0..ad800224 100644
--- a/2020/schedule/33.md
+++ b/2020/schedule/33.md
@@ -5,22 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/32">Object Oriented Code in the Gnus Newsreader</a>
Next: <a href="/2020/schedule/34">Extend Emacs to Modern GUI Applications with EAF</a>
+Sunday, Nov 29 2020, 3:34 PM - 3:54 PM EST / 12:34 PM - 12:54 PM PST / 8:34 PM - 8:54 PM UTC / 9:34 PM - 9:54 PM CET / 4:34 AM - 4:54 AM +08
-# Maxima a computer algebra system in Emacs
-Sunday, Nov 29 2020, 3:34 PM - 3:54 PM EST / 12:34 PM - 12:54 PM PST / 8:34 PM - 8:54 PM UTC / 9:34 PM - 9:54 PM CET / 4:34 AM - 4:54 AM +08
-Fermin MF
-
-Maxima is a great tool for symbolic mathematics, it has some support
-for Emacs in the main repository, but is quite outdated and doesn't
-receive the love I think it should, so a couple of months ago I decide
-to improve and "modernize" the maxima-mode.el code base. So, I want
-to talk about the integration with Emacs, the maxima REPL, how some of
-the main tool for Emacs integrate in maxima-mode and in general show
-how to start using maxima within Emacs.
-
-
-
-
+[[!inline pages="../info/33" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/32">Object Oriented Code in the Gnus Newsreader</a>
diff --git a/2020/schedule/34.md b/2020/schedule/34.md
index 311df4b9..f961517d 100644
--- a/2020/schedule/34.md
+++ b/2020/schedule/34.md
@@ -5,20 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/33">Maxima a computer algebra system in Emacs</a>
Next: <a href="/2020/schedule/35">WAVEing at Repetitive Repetitive Repetitive Music</a>
+Sunday, Nov 29 2020, 3:57 PM - 4:17 PM EST / 12:57 PM - 1:17 PM PST / 8:57 PM - 9:17 PM UTC / 9:57 PM - 10:17 PM CET / 4:57 AM - 5:17 AM +08
-# Extend Emacs to Modern GUI Applications with EAF
-Sunday, Nov 29 2020, 3:57 PM - 4:17 PM EST / 12:57 PM - 1:17 PM PST / 8:57 PM - 9:17 PM UTC / 9:57 PM - 10:17 PM CET / 4:57 AM - 5:17 AM +08
-Matthew Zeng
-
-Emacs Application Framework (EAF) is a customizable and extensible GUI
-application framework that extends Emacs graphical capabilities using
-PyQt5. This talk will cover the architecture design of the EAF
-project, and demonstrate some of its most useful applications: modern
-browser, PDF viewer, video player, etc.
-
-
-
-
+[[!inline pages="../info/34" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/33">Maxima a computer algebra system in Emacs</a>
diff --git a/2020/schedule/35.md b/2020/schedule/35.md
index eaa7109c..c5120549 100644
--- a/2020/schedule/35.md
+++ b/2020/schedule/35.md
@@ -4,24 +4,9 @@
Back to the [[schedule]]
Previous: <a href="/2020/schedule/34">Extend Emacs to Modern GUI Applications with EAF</a>
+Sunday, Nov 29 2020, 4:20 PM - 4:30 PM EST / 1:20 PM - 1:30 PM PST / 9:20 PM - 9:30 PM UTC / 10:20 PM - 10:30 PM CET / 5:20 AM - 5:30 AM +08
-# WAVEing at Repetitive Repetitive Repetitive Music
-Sunday, Nov 29 2020, 4:20 PM - 4:30 PM EST / 1:20 PM - 1:30 PM PST / 9:20 PM - 9:30 PM UTC / 10:20 PM - 10:30 PM CET / 5:20 AM - 5:30 AM +08
-Zachary Kanfer
-
-During quarantine, I found myself spending time with an Android app.
-One of the features this app has is composing music that loops
-endlessly. As with many things, I wondered how much better this tool
-would be, if only it was inside Emacs.
-
-This talk will explain how I made this tool inside Emacs, with detours
-through Emacs text properties, font rendering, the .WAVE file format,
-and music theory. And hopefully at the end, we'll have something
-worth listening to.
-
-
-
-
+[[!inline pages="../info/35" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/34">Extend Emacs to Modern GUI Applications with EAF</a>
diff --git a/2020/schedule/38.md b/2020/schedule/38.md
index 5f446b8f..bdaa530a 100644
--- a/2020/schedule/38.md
+++ b/2020/schedule/38.md
@@ -5,16 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/20">OMG Macros</a>
Next: <a href="/2020/schedule/22">Powering-up Special Blocks</a>
+Sunday, Nov 29 2020, 9:13 AM - 9:30 AM EST / 6:13 AM - 6:30 AM PST / 2:13 PM - 2:30 PM UTC / 3:13 PM - 3:30 PM CET / 10:13 PM - 10:30 PM +08
-# Emacs development update
-Sunday, Nov 29 2020, 9:13 AM - 9:30 AM EST / 6:13 AM - 6:30 AM PST / 2:13 PM - 2:30 PM UTC / 3:13 PM - 3:30 PM CET / 10:13 PM - 10:30 PM +08
-John Wiegley
-
-TBD - possibly a quick overview of Emacs 27.1 and development priorities for Emacs 28
-
-
-
-
+[[!inline pages="../info/38" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/20">OMG Macros</a>
diff --git a/2020/schedule/39.md b/2020/schedule/39.md
index f72f2b78..b2f2ea8c 100644
--- a/2020/schedule/39.md
+++ b/2020/schedule/39.md
@@ -5,16 +5,9 @@ Back to the [[schedule]]
Previous: <a href="/2020/schedule/25">Traverse complex JSON structures with live feedback</a>
Next: <a href="/2020/schedule/26">Emacs as a Highschooler: How It Changed My Life</a>
+Sunday, Nov 29 2020, 11:25 AM - 11:45 AM EST / 8:25 AM - 8:45 AM PST / 4:25 PM - 4:45 PM UTC / 5:25 PM - 5:45 PM CET / 12:25 AM - 12:45 AM +08
-# NonGNU ELPA
-Sunday, Nov 29 2020, 11:25 AM - 11:45 AM EST / 8:25 AM - 8:45 AM PST / 4:25 PM - 4:45 PM UTC / 5:25 PM - 5:45 PM CET / 12:25 AM - 12:45 AM +08
-Richard Stallman
-
-TBD - plans for a NonGNU ELPA that will be easy to enable and contribute to without signing copyright assignment papers
-
-
-
-
+[[!inline pages="../info/39" raw="yes"]]
Back to the [[schedule]]
Previous: <a href="/2020/schedule/25">Traverse complex JSON structures with live feedback</a>
diff --git a/2020/submissions.org b/2020/submissions.org
index 94b7c775..ebb17946 100644
--- a/2020/submissions.org
+++ b/2020/submissions.org
@@ -20,8 +20,7 @@ You can check out the Org Mode source for this page by following the [[https://e
- [[elisp:conf/generate-schedule-files][Generate schedule files]]
To update the information included in the individual talk page,
-execute the buffer, update the talk's "Talk information" heading, and
-then generate schedule files.
+execute the buffer, update the talk's info/TALKID.md file.
* Tables
@@ -3115,6 +3114,8 @@ The total is written to the MIN_TIME_SUM property of this heading"
** Generate schedule file
#+begin_src emacs-lisp :results none :eval yes :exports code :tangle "conf.el"
+(defvar conf/timezones '("EST" "America/Los_Angeles" "UTC" "CET" "Asia/Singapore") "List of timezones")
+
(defun conf/get-talk-info ()
(let (talk results)
(org-map-entries (lambda ()
@@ -3177,8 +3178,24 @@ The total is written to the MIN_TIME_SUM property of this heading"
(format "<tr><td width=100>%s</td><td width=100>%s</td><td>%s</td><td>%s</td></tr>"
start end (conf/format-talk-link o) speakers)))) (cdr info) "\n")))
+(defun conf/filter-talks (info)
+ (seq-filter (lambda (o) (eq (plist-get o :type) 'talk)) info))
+
+(defun conf/split-out-talk-information ()
+ (interactive)
+ (let ((talks (conf/filter-talks (conf/get-talk-info-from-file))))
+ (mapc (lambda (o)
+ (with-temp-buffer
+ (insert
+ (format "# %s\n%s\n\n%s")
+ (plist-get o :title)
+ (plist-get o :speakers)
+ (plist-get o :info))
+ (write-file (expand-file-name (format "%s.md" (plist-get o :talk-id)) "info"))))
+ talks)))
+
(defun conf/format-talk-pages (info)
- (let* ((talks (seq-filter (lambda (o) (eq (plist-get o :type) 'talk)) info))
+ (let* ((talks (conf/filter-talks info))
(next-talks (cdr talks))
(prev-talks (cons nil talks)))
(mapc (lambda (o)
@@ -3193,8 +3210,9 @@ The total is written to the MIN_TIME_SUM property of this heading"
[[%s copyright=\"Copyright &copy; 2020 %s\"]]
%s
+%s
-# %s\n%s \n%s\n\n%s\n\n
+[[!inline pages=\"../info/%s\" raw=\"yes\"]]
%s
@@ -3208,7 +3226,6 @@ conference for instructions on how to watch and participate. See you then!
"!meta"
(plist-get o :speakers)
nav-links
- (plist-get o :title)
(concat (format-time-string "%A, %b %e %Y, " (org-timestamp-to-time (org-timestamp-split-range timestamp)))
(mapconcat
(lambda (tz)
@@ -3217,10 +3234,9 @@ conference for instructions on how to watch and participate. See you then!
(org-timestamp-to-time (org-timestamp-split-range timestamp)) tz)
(format-time-string "%l:%M %p %Z"
(org-timestamp-to-time (org-timestamp-split-range timestamp t)) tz)))
- '("EST" "America/Los_Angeles" "UTC" "CET" "Asia/Singapore")
+ conf/timezones
" / "))
- (plist-get o :speakers)
- (plist-get o :info)
+ (plist-get o :talk-id)
nav-links)))
(write-file (format "schedule/%s.md" (plist-get o :talk-id)))))
talks)))