1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
|
<!-- Automatically generated by emacsconf-publish-after-page -->
<a name="writing-mainVideo-transcript"></a>
# Transcript
Intro
[[!template new="1" text="""Hello everyone, I'm Jeremy Friesen, pronouns he/him,""" start="00:00:00.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and today I'll be talking about""" start="00:00:04.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""how Emacs turbocharges my writing.""" start="00:00:05.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Quick intro: I've been programming since 1998""" start="00:00:08.600" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and blogging since 2011.""" start="00:00:11.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""In May of 2020 I switched to Emacs,""" start="00:00:14.080" video="mainVideo-writing" id="subtitle"]]
[[!template text="""having previously used a long list of different editors.""" start="00:00:16.640" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Curious about how Emacs impacted my writing,""" start="00:00:19.920" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I wrote some stuff on my personal site and""" start="00:00:23.040" video="mainVideo-writing" id="subtitle"]]
[[!template text="""found that I blogged about 95 words per day prior to Emacs,""" start="00:00:25.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and with Emacs I'm blogging about 340.""" start="00:00:30.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Now, this is not a fair comparison, many things changed.""" start="00:00:33.720" video="mainVideo-writing" id="subtitle"]]
[[!template text="""A pandemic removed 2 hours of commute every day""" start="00:00:37.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""as a big contributor.""" start="00:00:40.920" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Ultimately though, I've used Emacs and extended it""" start="00:00:44.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""to reduce barriers to capturing and writing and thinking,""" start="00:00:47.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and I'm always on the lookout for minor refinements""" start="00:00:50.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""that help me stay in my thinking.""" start="00:00:53.320" video="mainVideo-writing" id="subtitle"]]
How I got here
[[!template new="1" text="""How I got here was I started in WordPress,""" start="00:00:57.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""then I moved to Jekyll, and then to Hugo,""" start="00:00:59.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and through that process I started writing in Markdown.""" start="00:01:02.600" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And when I was learning Emacs,""" start="00:01:05.440" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I also didn't want to learn Org Mode,""" start="00:01:07.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""it felt intimidating because it could do so many things.""" start="00:01:09.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I later learned Org Mode grows with you,""" start="00:01:12.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and that's where I'm at now.""" start="00:01:15.520" video="mainVideo-writing" id="subtitle"]]
Friction
[[!template new="1" text="""But I didn't realize that friction""" start="00:01:18.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""between writing Markdown for my public blog""" start="00:01:20.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and then adopting Org Mode locally""" start="00:01:23.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""for writing and time tracking and things like that.""" start="00:01:25.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And also, where did I put things,""" start="00:01:28.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""because migrating the formats was just a little clunky.""" start="00:01:31.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So ultimately I spent some time thinking about the data flow""" start="00:01:35.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and where I would put things,""" start="00:01:38.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""this kind of pre-thinking,""" start="00:01:39.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""where does stuff go when it comes into and out of my brain.""" start="00:01:41.040" video="mainVideo-writing" id="subtitle"]]
Domains for notes
[[!template new="1" text="""So I have many domains where I'll write towards.""" start="00:01:45.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""The ones for this presentation are going to be""" start="00:01:49.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""blog posts, epigraphs, glossary, and melange.""" start="00:01:51.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Melange is, I don't know where it goes,""" start="00:01:54.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""but now I do, I just throw it in melange.""" start="00:01:56.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I began exploring Org Mode via Org Roam,""" start="00:02:01.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""but I've ultimately switched from Org Roam""" start="00:02:04.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""to the simplified Denote package.""" start="00:02:07.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I didn't use a lot of the functionality""" start="00:02:10.640" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and I appreciate the plain text reality of Denote.""" start="00:02:13.200" video="mainVideo-writing" id="subtitle"]]
Demo
[[!template new="1" text="""So let's hop into the demo.""" start="00:02:15.920" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to split my screen.""" start="00:02:18.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Over on the right is going to be""" start="00:02:19.920" video="mainVideo-writing" id="subtitle"]]
[[!template text="""where I'm going to be live typing stuff.""" start="00:02:21.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So let's get going.""" start="00:02:24.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""You'll notice I don't do a lot of screen splitting.""" start="00:02:27.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It just makes it easier to focus.""" start="00:02:29.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So let's create a note.""" start="00:02:32.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""All right, I have bound hyper to my command key,""" start="00:02:34.040" video="mainVideo-writing" id="subtitle"]]
[[!template text="""my right command key.""" start="00:02:41.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""This opens up a whole world.""" start="00:02:42.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to create a blog post""" start="00:02:43.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and we're going to name it the ever popular "hello world".""" start="00:02:45.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It's Emacs.""" start="00:02:49.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Great.""" start="00:02:50.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""We've saved it.""" start="00:02:51.520" video="mainVideo-writing" id="subtitle"]]
Dabbrev and hippie-expand
[[!template new="1" text="""One of the things I encourage everybody to do""" start="00:02:55.440" video="mainVideo-writing" id="subtitle"]]
[[!template text="""is to watch Jay Dixit's presentation, Emacs for Writers.""" start="00:02:57.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It showed me the utility of Dabbrev for quick auto correction.""" start="00:03:02.040" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I also love using hippie-expand.""" start="00:03:08.080" video="mainVideo-writing" id="subtitle"]]
[[!template text="""When I watch VS coders code, it's always a little sad pants""" start="00:03:11.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""because they're thinking about coding or writing""" start="00:03:14.640" video="mainVideo-writing" id="subtitle"]]
[[!template text="""in terms of their code.""" start="00:03:17.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""But I have found as a programmer, I tend to write more tech,""" start="00:03:19.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""more like English instead of programming code.""" start="00:03:24.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I think it's important to understand these tools""" start="00:03:27.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""that help me write better.""" start="00:03:30.720" video="mainVideo-writing" id="subtitle"]]
Links
[[!template new="1" text="""All right, we're going to go with links.""" start="00:03:32.840" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Links are foundational for the web.""" start="00:03:34.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to insert a public link,""" start="00:03:37.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""which is a role playing game that I love,""" start="00:03:41.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Worlds Without Number.""" start="00:03:43.440" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I'm going to go ahead and describe it.""" start="00:03:45.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""A role playing game.""" start="00:03:48.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""But I don't want to always say role playing game.""" start="00:03:49.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to abbreviate it.""" start="00:03:53.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I wrote a function that will transform it.""" start="00:03:54.600" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And let's take a look at what that looks like on the inside.""" start="00:03:57.080" video="mainVideo-writing" id="subtitle"]]
[[!template text="""When I do this real quick, it's toggling it back and forth.""" start="00:04:00.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I'll just keep doing that.""" start="00:04:06.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I also have the idea of public notes and private notes.""" start="00:04:10.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Public is things that's going to have a URL.""" start="00:04:13.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I met a person at a conference.""" start="00:04:15.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""He gave a talk on something that I thought was very useful.""" start="00:04:16.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I didn't write down what he talked about on his note.""" start="00:04:19.640" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I wrote it where it was more relevant to the topic.""" start="00:04:23.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I can use a backlink to go find that.""" start="00:04:26.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Next up, I demonstrate the abbreviation.""" start="00:04:31.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I also have dates.""" start="00:04:34.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""This is a semantic date in HTML5.""" start="00:04:35.840" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I can just have the year.""" start="00:04:38.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I can also just have something like that date is today.""" start="00:04:41.840" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And we have date links.""" start="00:04:48.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I don't have backlinks built up for that,""" start="00:04:52.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""but I have ideas of how I go about doing it.""" start="00:04:54.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And last up, thank you Frank Herbert,""" start="00:04:56.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I want to introduce epigraphs.""" start="00:04:58.760" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So this is epigraph.""" start="00:05:00.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I just have that, any sufficiently, dot, dot, dot.""" start="00:05:04.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And that's my epigraph.""" start="00:05:08.720" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Backlinks, I mentioned that.""" start="00:05:10.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Let's go take a look at Jonathan, right?""" start="00:05:16.720" video="mainVideo-writing" id="subtitle"]]
[[!template text="""He's a Rubyist, but importantly is the backlinks.""" start="00:05:19.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""He gave a talk on, that's right, PDFs.""" start="00:05:23.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I can go look at what he spoke to""" start="00:05:27.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and I can reference that because I will remember""" start="00:05:28.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""that talk or I will remember, oh, I need to look up PDFs.""" start="00:05:31.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Oh, I have something in PDFs.""" start="00:05:36.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Again, it's about stumbling upon data in a good way.""" start="00:05:39.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So thinking of making linking easy helps me""" start="00:05:43.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""create more and more ways to find things,""" start="00:05:48.320" video="mainVideo-writing" id="subtitle"]]
[[!template text="""both by links, backlinks, indices, file searches, and so forth.""" start="00:05:52.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It's all about information organization.""" start="00:05:57.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Next up is a really cool function of org capture.""" start="00:05:59.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So let's take a look here.""" start="00:06:04.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to start a clock.""" start="00:06:06.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It's running.""" start="00:06:08.040" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I'm going to bring up my browser.""" start="00:06:09.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I'm going to go ahead and capture to the content to clock.""" start="00:06:11.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And it brings up this block quote, which is lovely.""" start="00:06:19.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And boom, I'm going to save it.""" start="00:06:23.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm going to close this.""" start="00:06:25.720" video="mainVideo-writing" id="subtitle"]]
[[!template text="""We're back here to my "hello world".""" start="00:06:28.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And it has grabbed a block quote for this.""" start="00:06:30.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Again, it helps me gather stuff up quickly.""" start="00:06:33.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I've bound that also in my RSS feed.""" start="00:06:38.040" video="mainVideo-writing" id="subtitle"]]
[[!template text="""We're going to skip over macros, blocks, and the abstract.""" start="00:06:41.120" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And we're going to get into the export""" start="00:06:44.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""because this is where we can see the magic""" start="00:06:45.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""that happens because I want to take things""" start="00:06:47.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""from private to public.""" start="00:06:49.600" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I have bound a key.""" start="00:06:51.080" video="mainVideo-writing" id="subtitle"]]
[[!template text="""These are my menu of things I don't want to forget.""" start="00:06:53.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I will export.""" start="00:06:55.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And here we go.""" start="00:06:56.760" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Here is my blog post in markdown format with Hugo shortcodes.""" start="00:06:57.840" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So let's go take a look at what that looks like.""" start="00:07:04.960" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Localhost.""" start="00:07:07.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'm not writing in Rails.""" start="00:07:09.360" video="mainVideo-writing" id="subtitle"]]
[[!template text=""""Hello world" right there.""" start="00:07:12.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""This is the epigraph.""" start="00:07:14.920" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I have a mention of Worlds without Number.""" start="00:07:17.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I have mentioned this as a abbreviation.""" start="00:07:22.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I include the first time this text.""" start="00:07:24.800" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Here's also Jonathan.""" start="00:07:27.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""He is not a public reference thing.""" start="00:07:30.200" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Also, I have these things here.""" start="00:07:33.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And here's my captured information""" start="00:07:37.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""along with the citation link to it.""" start="00:07:39.400" video="mainVideo-writing" id="subtitle"]]
[[!template text="""Again, helpful to be consistent.""" start="00:07:42.600" video="mainVideo-writing" id="subtitle"]]
Conclusion
[[!template new="1" text="""In conclusion, when I started learning Emacs,""" start="00:07:49.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I quickly shifted to vanilla Emacs and just started writing.""" start="00:07:52.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""As I wrote, when I needed to do something that I'd previously""" start="00:07:55.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""done in a text editor, I'd find an experiment with a package.""" start="00:07:59.520" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I continue that mindset.""" start="00:08:03.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""As I write, I'm attending to what I'm doing.""" start="00:08:04.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And eventually, I realize if I were to just write""" start="00:08:06.840" video="mainVideo-writing" id="subtitle"]]
[[!template text="""a function that does this one thing,""" start="00:08:08.880" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'd have a smoother writing experience.""" start="00:08:11.640" video="mainVideo-writing" id="subtitle"]]
[[!template text="""This helps me practice my craft, extend my editor,""" start="00:08:13.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""understand its capabilities, and begin exploring other things.""" start="00:08:16.360" video="mainVideo-writing" id="subtitle"]]
[[!template text="""The goal of this is all to minimize the distractions.""" start="00:08:20.000" video="mainVideo-writing" id="subtitle"]]
[[!template text="""As I'm thinking about it, I wanted to quickly add it""" start="00:08:23.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""and then move along,""" start="00:08:25.760" video="mainVideo-writing" id="subtitle"]]
[[!template text="""basically creating breadcrumbs for me""" start="00:08:27.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""to follow my thoughts in the future.""" start="00:08:29.560" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And one of those functions is""" start="00:08:31.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""I'd like to write an extender for my abbr,""" start="00:08:33.160" video="mainVideo-writing" id="subtitle"]]
[[!template text="""abbreviation export to work in Latex.""" start="00:08:36.480" video="mainVideo-writing" id="subtitle"]]
[[!template text="""It's like halfway there.""" start="00:08:38.680" video="mainVideo-writing" id="subtitle"]]
[[!template text="""So I'm looking forward to getting that done""" start="00:08:40.280" video="mainVideo-writing" id="subtitle"]]
[[!template text="""when I have some time and can prioritize it.""" start="00:08:42.240" video="mainVideo-writing" id="subtitle"]]
[[!template text="""But for now, thank you.""" start="00:08:45.440" video="mainVideo-writing" id="subtitle"]]
[[!template text="""And I look forward to your questions.""" start="00:08:47.800" video="mainVideo-writing" id="subtitle"]]
Captioner: bala
Questions or comments? Please e-mail [jeremy@jeremyfriesen.com](mailto:jeremy@jeremyfriesen.com?subject=Comment%20for%20EmacsConf%202023%20writing%3A%20Emacs%20turbo-charges%20my%20writing)
<!-- End of emacsconf-publish-after-page -->
|