WEBVTT

00:00:00.000 --> 00:00:02.759
If you're listening to this as a podcast, remember

00:00:02.759 --> 00:00:06.259
that it was originally recorded as a video. If

00:00:06.259 --> 00:00:08.199
you're not following along, you can go to my

00:00:08.199 --> 00:00:11.720
YouTube channel. My username is Linkarzu. And

00:00:11.720 --> 00:00:14.039
if you want to support me to keep this podcast

00:00:14.039 --> 00:00:17.820
going, you can donate in Ko -fi. I'm going to

00:00:17.820 --> 00:00:20.760
leave a link in the description. All right, so

00:00:20.760 --> 00:00:23.500
let's get started with this chapter then. All

00:00:23.500 --> 00:00:27.320
right, so hey everyone, I have Joshua here today.

00:00:27.640 --> 00:00:31.859
I want to try Emacs. I haven't done so. So this

00:00:31.859 --> 00:00:34.420
is my first time doing it. When I give it a go

00:00:34.420 --> 00:00:38.479
and maybe compare it to any of them, see the

00:00:38.479 --> 00:00:41.740
differences between the two. And maybe I'll convert

00:00:41.740 --> 00:00:44.060
you forever. Maybe I'll convert you forever.

00:00:44.179 --> 00:00:48.960
That's the goal. It could be, you know, it could

00:00:48.960 --> 00:00:51.899
happen. You never know. You equate the setup

00:00:51.899 --> 00:00:53.460
though. Like, so I don't know if I'm going to

00:00:53.460 --> 00:00:56.700
be able to replicate everything, but. You put

00:00:56.700 --> 00:00:59.140
some time into your setup. I've seen your videos

00:00:59.140 --> 00:01:00.899
and I'm like, this guy knows what he's talking

00:01:00.899 --> 00:01:05.019
about in the NeoVim space. Yeah. Well, I'm not

00:01:05.019 --> 00:01:11.280
a NeoVim expert. I have, you know, set up everything

00:01:11.280 --> 00:01:15.000
out of necessity. I do Markdown editing, you

00:01:15.000 --> 00:01:17.579
know, and I wanted to customize a few things.

00:01:17.680 --> 00:01:21.340
I used OBS. No, I'm sorry. I used Obsidian. That's

00:01:21.340 --> 00:01:25.069
the tool that I did for Markdown. And I wanted

00:01:25.069 --> 00:01:27.549
to replicate what I did in Obsidian in Neobim.

00:01:27.750 --> 00:01:31.769
So I just, out of necessity, came up with solutions

00:01:31.769 --> 00:01:37.549
in Neobim. But I'm no expert at all. I'll preface

00:01:37.549 --> 00:01:39.689
this with I'm not an expert at Emacs either.

00:01:40.150 --> 00:01:44.230
So it's... I'm not a noob, but I'm also like,

00:01:44.370 --> 00:01:47.010
there are people that are unbelievable. Like

00:01:47.010 --> 00:01:50.170
Emacs is their life, right? I'm not that person,

00:01:50.269 --> 00:01:53.579
but I... do understand kind of the philosophy

00:01:53.579 --> 00:01:56.939
behind it and and why people would use it and

00:01:56.939 --> 00:01:59.200
and the interesting thing is you mentioned markdown

00:01:59.200 --> 00:02:03.379
um i actually wrote a book in emacs in something

00:02:03.379 --> 00:02:06.879
called org mode which is we'll talk a little

00:02:06.879 --> 00:02:08.840
bit about it but it's like a it's like a markdown

00:02:08.840 --> 00:02:12.719
on steroids um it's it's pretty cool and getting

00:02:12.719 --> 00:02:17.409
you into it you might see how It's better or

00:02:17.409 --> 00:02:19.569
worse than Markdown in certain things, but it's

00:02:19.569 --> 00:02:22.650
pretty cool. I'll kind of show you a bit of a

00:02:22.650 --> 00:02:24.530
walkthrough after we get it installed and everything.

00:02:25.009 --> 00:02:27.729
Oh, yeah. I do have some questions about org

00:02:27.729 --> 00:02:30.729
mode. I have thought about it, but I'll ask you

00:02:30.729 --> 00:02:33.270
when we get to that part. All right. So let's

00:02:33.270 --> 00:02:35.590
do it. Yeah. How should I call you? Should I

00:02:35.590 --> 00:02:38.710
call you Josh? Joshua? Josh. Josh is perfect.

00:02:38.969 --> 00:02:41.270
Yeah, it's just fine. OK, yeah. Then I'll go

00:02:41.270 --> 00:02:43.870
over a few things here in this little app that

00:02:43.870 --> 00:02:46.830
I have on the right hand side. We have topics

00:02:46.830 --> 00:02:49.969
that we want to discuss. I'm just going to put

00:02:49.969 --> 00:02:51.789
them here. We'll just add them. Yeah. Sounds

00:02:51.789 --> 00:02:56.430
good. Just add them there. Right. So let's start

00:02:56.430 --> 00:02:58.550
with this. What do you do? Just a quick introduction

00:02:58.550 --> 00:03:02.009
and then we'll jump into what is important for

00:03:02.009 --> 00:03:05.550
the viewers. But what do you do? I don't even

00:03:05.550 --> 00:03:09.069
know what I do. I'm constantly reinventing myself.

00:03:09.210 --> 00:03:13.439
I have a couple of companies. My first foray

00:03:13.439 --> 00:03:15.099
into business was kind of actually a real estate

00:03:15.099 --> 00:03:18.259
brokerage. And in your initial years of real

00:03:18.259 --> 00:03:21.199
estate, you're very not busy. So I started learning

00:03:21.199 --> 00:03:24.699
how to program and all of that in my first years

00:03:24.699 --> 00:03:26.199
and kind of fell in love with that more than

00:03:26.199 --> 00:03:29.719
I did in real estate. So I started just automating

00:03:29.719 --> 00:03:33.039
processes and stuff and selling those solutions

00:03:33.039 --> 00:03:36.000
to people. And that's kind of what I do. I have

00:03:36.000 --> 00:03:38.319
a YouTube channel. I've wrote a book. So I guess

00:03:38.319 --> 00:03:42.090
I'm a self -published author. Um, yeah, I wear

00:03:42.090 --> 00:03:44.030
many hats. I'm a father. I think you are too.

00:03:44.310 --> 00:03:48.389
Yep. I am. Yeah. So, so we're, uh, we're part

00:03:48.389 --> 00:03:52.030
of the dad team. Um, yeah, I live, uh, live in

00:03:52.030 --> 00:03:55.409
Canada. Uh, so, which was funny that you said

00:03:55.409 --> 00:03:57.030
you're in the same time zone as me, but we're

00:03:57.030 --> 00:04:00.009
not in the same country at all. Not even the

00:04:00.009 --> 00:04:02.509
same, not even the same, uh, what is that Northern

00:04:02.509 --> 00:04:05.949
Southern hemisphere, I guess. Yeah. I'm in Guatemala,

00:04:06.050 --> 00:04:08.210
by the way, for the people that, that don't know,

00:04:08.310 --> 00:04:11.870
they always ask me like, Yeah. They wonder, I

00:04:11.870 --> 00:04:15.129
guess, like, but why do you speak English? Like,

00:04:15.229 --> 00:04:17.750
because we don't speak English here. That's not

00:04:17.750 --> 00:04:20.670
my main language is Spanish, actually, you know,

00:04:20.670 --> 00:04:24.089
so makes people wonder. No, your English is really

00:04:24.089 --> 00:04:26.569
good. So, I mean, English for the Internet is

00:04:26.569 --> 00:04:28.870
a good thing. And then, like, man, I wish I knew

00:04:28.870 --> 00:04:31.689
Spanish a little bit better. But you know French,

00:04:31.889 --> 00:04:34.970
right? A little bit. I mean, enough to get by,

00:04:35.050 --> 00:04:39.680
but enough to get in trouble, too. All right.

00:04:39.899 --> 00:04:42.139
Let's see. What's your YouTube channel? Well,

00:04:42.259 --> 00:04:44.540
I'm subscribed to it. That's the way that I found

00:04:44.540 --> 00:04:48.160
you. Yeah, I'm subscribed to you too. At Joshua

00:04:48.160 --> 00:04:50.660
Blaze, just my name. This is how I found you.

00:04:50.720 --> 00:04:55.980
The algorithm showed me this video. So I was

00:04:55.980 --> 00:05:00.319
like, hmm, a guy that used to be on Emacs switched

00:05:00.319 --> 00:05:04.160
to Neobim. I was like, so is it? is neovim the

00:05:04.160 --> 00:05:07.259
king then but i see that you went back to emacs

00:05:07.259 --> 00:05:09.199
right we're gonna discuss all that in a little

00:05:09.199 --> 00:05:12.240
while but i'm gonna leave your your channel in

00:05:12.240 --> 00:05:14.740
the video description so that people can find

00:05:14.740 --> 00:05:17.920
you and uh subscribe to your channel i appreciate

00:05:17.920 --> 00:05:21.540
it thank you so much okay and um what other type

00:05:21.540 --> 00:05:25.079
of content should we see or that we see in your

00:05:25.079 --> 00:05:28.180
channel let me just open this yeah no i do like

00:05:28.180 --> 00:05:31.699
mostly technical stuff i i kind of do a little

00:05:31.699 --> 00:05:35.620
bit of um philosophy, theology as well, but mostly

00:05:35.620 --> 00:05:39.540
like technical, um, stuff around like Linux use.

00:05:39.720 --> 00:05:42.879
And I'm a huge proponent for like free and open

00:05:42.879 --> 00:05:46.620
systems. Um, so that's kind of my, I don't really

00:05:46.620 --> 00:05:48.379
want to say a niche cause I don't even know what

00:05:48.379 --> 00:05:50.639
I, I haven't really found my niche. I seem to

00:05:50.639 --> 00:05:54.040
get views on the technical stuff, uh, the most,

00:05:54.060 --> 00:05:58.019
but yeah, that's, that's kind of, kind of where

00:05:58.019 --> 00:06:02.180
my, I guess my, uh, my audience resides, I suppose.

00:06:02.750 --> 00:06:07.329
Okay. Linux, open source related stuff. Oh, yeah.

00:06:07.470 --> 00:06:10.290
And DMAX, of course. And you mentioned before

00:06:10.290 --> 00:06:15.189
I forgot about this, you don't work for like

00:06:15.189 --> 00:06:20.230
a company, then you work for yourself. Yes. Free

00:06:20.230 --> 00:06:25.750
time, time rich, money poor, time rich. That's

00:06:25.750 --> 00:06:28.670
like sort of my goal as well. You know, I worked

00:06:28.670 --> 00:06:30.790
for a company like for seven years. They laid

00:06:30.790 --> 00:06:33.879
me off. I don't know, like a couple months ago.

00:06:34.439 --> 00:06:38.100
And I don't know what I'll do. I would try to

00:06:38.100 --> 00:06:41.560
come up with something on my own. YouTube, man,

00:06:41.759 --> 00:06:45.240
YouTube is just pennies what you get. But who

00:06:45.240 --> 00:06:49.459
knows, right? I'll have to find my way. You seem

00:06:49.459 --> 00:06:52.019
to have a growing channel though, man. So keep

00:06:52.019 --> 00:06:55.199
going, keep doing what you're doing. And who

00:06:55.199 --> 00:06:58.439
knows, right? Yeah, we'll see where it goes.

00:06:58.639 --> 00:07:01.850
We'll see where it goes. Okay, so. The type of

00:07:01.850 --> 00:07:03.990
content that you share, people can find you here

00:07:03.990 --> 00:07:05.569
in YouTube. I'm going to leave it in the video

00:07:05.569 --> 00:07:09.410
description. So let's get started with the installation

00:07:09.410 --> 00:07:12.149
then. I have not installed this, so I have no

00:07:12.149 --> 00:07:16.129
idea at all. I was thinking of doing it, but

00:07:16.129 --> 00:07:19.089
you need to invest a lot of hours. And I'm not

00:07:19.089 --> 00:07:20.949
going to come up with something useful. So it's

00:07:20.949 --> 00:07:23.449
better to do this with someone that knows and

00:07:23.449 --> 00:07:26.170
can guide me through the process, you know? Sure.

00:07:26.810 --> 00:07:29.689
Yeah, and you're on a Mac, so we can brew install.

00:07:30.360 --> 00:07:32.660
uh emacs i've i've used my girlfriend's mac before

00:07:32.660 --> 00:07:35.899
so i've i've done it on hers um i sent you a

00:07:35.899 --> 00:07:40.459
link to the emacs plus repository uh in github

00:07:40.459 --> 00:07:45.120
let me bring that up hold on oh and what do you

00:07:45.120 --> 00:07:47.360
think about mac what do you think about mac os

00:07:47.360 --> 00:07:49.819
what's your take on that well well i look yeah

00:07:49.819 --> 00:07:52.879
i i no totally i've thought about switching to

00:07:52.879 --> 00:07:58.139
mac um i i like the hardware i I don't really

00:07:58.139 --> 00:08:00.879
like the operating system as much. Now, Mac is

00:08:00.879 --> 00:08:06.920
Unix. So I like it better than Windows. And I've

00:08:06.920 --> 00:08:12.399
kind of thought to myself that there's a lot

00:08:12.399 --> 00:08:15.120
of these ARM processors and these integrated

00:08:15.120 --> 00:08:17.300
chips that are coming out with AMD. And I really

00:08:17.300 --> 00:08:19.240
want to see what those look like before I make

00:08:19.240 --> 00:08:21.620
a decision on like kind of a next machine. But

00:08:21.620 --> 00:08:24.600
Mac is, I like Mac. I think it's a little bit

00:08:24.600 --> 00:08:28.790
more of a walled garden than... linux um but

00:08:28.790 --> 00:08:32.409
it is a unix and i mean that is beneficial in

00:08:32.409 --> 00:08:34.090
a lot of ways because you get all the unix tooling

00:08:34.090 --> 00:08:37.210
and one thing you'll note too is that in emacs

00:08:37.210 --> 00:08:39.870
you almost start using emacs as your computing

00:08:39.870 --> 00:08:42.250
environment and we'll talk about the philosophy

00:08:42.250 --> 00:08:44.590
and stuff later but you start to realize that

00:08:44.590 --> 00:08:47.269
emacs can essentially take over your entire operating

00:08:47.269 --> 00:08:50.830
system as your file manager, how you do things

00:08:50.830 --> 00:08:53.190
day to day, blah, blah, blah, blah, blah. So

00:08:53.190 --> 00:08:55.049
it almost doesn't really matter what the operating

00:08:55.049 --> 00:08:59.590
system is that's underlying it. Which I know

00:08:59.590 --> 00:09:03.730
that's like a tall ask because you're asking

00:09:03.730 --> 00:09:06.309
a program to do like your email, you're asking

00:09:06.309 --> 00:09:08.570
it to manage your media, you're doing all these

00:09:08.570 --> 00:09:11.690
different things. But Emacs is like, it becomes

00:09:11.690 --> 00:09:14.889
almost your computer. It's a very different philosophy.

00:09:16.030 --> 00:09:19.009
that you really have to like get into it and

00:09:19.009 --> 00:09:22.629
use it full time to understand like the potential

00:09:22.629 --> 00:09:26.990
of it. Oh, makes sense. I wish, I think you wish

00:09:26.990 --> 00:09:30.350
you could install like OBS in Emacs or something

00:09:30.350 --> 00:09:34.779
like that. Not so much. Like I do think that

00:09:34.779 --> 00:09:38.139
because I do a video as well, video heavy stuff,

00:09:38.419 --> 00:09:42.039
imaging, that is still more inclined to like

00:09:42.039 --> 00:09:45.080
your dedicated OBS or DaVinci Resolve or that

00:09:45.080 --> 00:09:46.440
sort of thing. That's actually kind of why I

00:09:46.440 --> 00:09:49.580
considered Mac is that DaVinci Resolve on Linux

00:09:49.580 --> 00:09:53.519
is it's accessible, but you need like a dedicated

00:09:53.519 --> 00:09:57.220
GPU. So the thing with Mac is you get such good

00:09:57.220 --> 00:10:01.460
GPU to power ratio. that that was a consideration

00:10:01.460 --> 00:10:06.179
for me, just as an aside. Oh, yeah. That's the

00:10:06.179 --> 00:10:09.820
reason why I haven't switched to Linux yet. I

00:10:09.820 --> 00:10:11.460
don't know if I will ever do, because I'm too

00:10:11.460 --> 00:10:17.179
lazy. I opened DaVinci, and I just want it to

00:10:17.179 --> 00:10:19.080
work. I don't want to spend not even a minute

00:10:19.080 --> 00:10:22.100
configuring it. I don't want it to break on me.

00:10:22.220 --> 00:10:27.519
So it looks better, definitely. animations and

00:10:27.519 --> 00:10:30.379
all that looks way better on on linux for sure

00:10:30.379 --> 00:10:34.240
but uh i'm not ready to take that step yet maybe

00:10:34.240 --> 00:10:36.500
one day maybe i can convince you one day yeah

00:10:36.500 --> 00:10:39.539
it'd be everyone tells me to switch to linux

00:10:39.539 --> 00:10:42.720
by the way but we'll see what happens there so

00:10:42.720 --> 00:10:44.860
that's what i'm talking about keep keep forcing

00:10:44.860 --> 00:10:49.600
him audience let's go yeah this is the command

00:10:49.600 --> 00:10:52.440
i guess right no well this is reinstall let's

00:10:52.440 --> 00:10:56.279
see Yeah. So we're going to do Emacs 30. So brew

00:10:56.279 --> 00:11:00.340
install plus dash plus at 30. That's the most

00:11:00.340 --> 00:11:02.559
current Emacs version. So you can literally just

00:11:02.559 --> 00:11:04.299
copy that and paste that into your terminal.

00:11:04.580 --> 00:11:09.039
Okay. And what is this 31? 31 is like, that is

00:11:09.039 --> 00:11:12.360
the, not production, the development branch.

00:11:12.600 --> 00:11:15.100
So that's like what's coming down the pipeline.

00:11:15.480 --> 00:11:18.000
Emacs is a very interesting thing in that, like

00:11:18.000 --> 00:11:20.360
it's been around for 50 years, like almost 50

00:11:20.360 --> 00:11:24.559
years. And it's essentially grown and mutated

00:11:24.559 --> 00:11:27.840
through those 50 years. In the coming versions,

00:11:28.000 --> 00:11:30.299
they're actually looking at adding multi -threading.

00:11:30.480 --> 00:11:34.360
So that's going to be very cool to see how fast

00:11:34.360 --> 00:11:37.080
Emacs can potentially be when it starts using

00:11:37.080 --> 00:11:40.019
multiple threads on a computer. Because it doesn't

00:11:40.019 --> 00:11:43.120
currently. It's currently single -threaded. So

00:11:43.120 --> 00:11:46.000
if you have issues with something going down,

00:11:46.100 --> 00:11:50.259
then your whole Emacs freezes up. Yeah, but in

00:11:50.259 --> 00:11:52.039
the future, it seems to be that multi -threading

00:11:52.039 --> 00:11:54.320
is going to be the way forward, which is awesome.

00:11:54.919 --> 00:11:57.259
But yeah, we'll do 30 because 30 is the current

00:11:57.259 --> 00:11:59.259
version. That's what I'm running as well on my

00:11:59.259 --> 00:12:02.559
Fedora machine. Okay, I guess I need to add this

00:12:02.559 --> 00:12:05.720
first, the tab command. Yep, you got to tap it

00:12:05.720 --> 00:12:08.240
first and then... All right. This is similar

00:12:08.240 --> 00:12:11.379
for my Linux guys. This is similar to like DNF

00:12:11.379 --> 00:12:14.639
adding a certain, this is using like a certain,

00:12:14.720 --> 00:12:17.379
it's adding the repository. Let's see how long

00:12:17.379 --> 00:12:20.759
it takes. Let's see if my internet is quite slow

00:12:20.759 --> 00:12:24.840
or not. I was saying that I have my router configured

00:12:24.840 --> 00:12:27.820
so that it splits the bandwidth, you know, if

00:12:27.820 --> 00:12:31.019
two users, well, 30 megs for each computer on

00:12:31.019 --> 00:12:33.840
the house. So I cannot get more than 30 megs.

00:12:33.879 --> 00:12:37.409
I should probably. overwrite that because i'm

00:12:37.409 --> 00:12:40.710
like the the main user in the house right yeah

00:12:40.710 --> 00:12:44.549
like i i essentially plug my router directly

00:12:44.549 --> 00:12:47.529
into my my laptop when i'm in the office so i'm

00:12:47.529 --> 00:12:50.049
just like taking taking whatever i possibly can

00:12:50.049 --> 00:12:52.750
from it yeah and that is the right command yeah

00:12:52.750 --> 00:12:58.350
that one emacs 30 right yes sir okay let's install

00:12:58.350 --> 00:13:00.590
it maybe we talk about the philosophy behind

00:13:00.590 --> 00:13:03.370
emacs while it's installing yeah yeah i'm interested

00:13:03.370 --> 00:13:06.179
in hearing about that Yeah. So, I mean, like

00:13:06.179 --> 00:13:09.580
the, the reason that I think people really, cause

00:13:09.580 --> 00:13:11.600
there's the editor war, right? Like between Vim

00:13:11.600 --> 00:13:13.720
and Emacs has been, it's been raging on forever.

00:13:13.860 --> 00:13:18.320
Right. Yeah. Well now NeoVim and Vim versus Emacs.

00:13:18.379 --> 00:13:20.940
Well, NeoVim seems to be like the way forward

00:13:20.940 --> 00:13:23.360
for Vim. Like I think that NeoVim is, is essentially

00:13:23.360 --> 00:13:27.440
Vim for the 21st century. And it seems to be

00:13:27.440 --> 00:13:29.580
the program that everybody uses when they talk

00:13:29.580 --> 00:13:33.639
about Vim. Yeah. Yeah. So, I mean, the philosophy

00:13:33.639 --> 00:13:35.720
is, they're different philosophies entirely.

00:13:35.940 --> 00:13:39.200
They're almost apples and oranges. Whereas NeoVim

00:13:39.200 --> 00:13:41.539
is kind of like, it's strictly an editor, right?

00:13:41.620 --> 00:13:44.039
Like you go in there and you can edit all sorts

00:13:44.039 --> 00:13:48.399
of text files. And it's very good at what it

00:13:48.399 --> 00:13:52.559
does. I love the Vim editing style. So you'll

00:13:52.559 --> 00:13:54.679
see actually in Emacs, I use the Vim editing

00:13:54.679 --> 00:13:59.159
style. They call it evil mode. I think it's probably

00:13:59.159 --> 00:14:05.370
the best editing style ever devised. So I'm not

00:14:05.370 --> 00:14:07.129
going to say that Vim is not a good thing. Like

00:14:07.129 --> 00:14:09.789
Vim is the way that Vim edits text is phenomenal.

00:14:10.809 --> 00:14:13.429
The thing with Emacs though is Emacs is like,

00:14:13.490 --> 00:14:16.529
it's a graphical program. It can be used in the

00:14:16.529 --> 00:14:20.669
terminal as well, but it is really more so a

00:14:20.669 --> 00:14:27.350
way to extend the Unix tooling on a system. So

00:14:27.350 --> 00:14:30.330
if you're familiar with stuff like RipGrap and...

00:14:31.309 --> 00:14:34.549
ripgrep is like the big big one but you can essentially

00:14:34.549 --> 00:14:39.409
like take a you can essentially use emacs to

00:14:39.409 --> 00:14:41.809
traverse your file system and all that i know

00:14:41.809 --> 00:14:45.610
neovim is has added that in um with stuff like

00:14:45.610 --> 00:14:48.090
uh you're familiar with the primogen so he wrote

00:14:48.090 --> 00:14:52.149
the he wrote the harpoon package which is using

00:14:52.149 --> 00:14:55.690
uh i believe it's using ripgrep but also fcf

00:14:55.690 --> 00:14:58.629
to go through your file system and find files

00:14:58.629 --> 00:15:03.830
and easily access them and all of that um emacs

00:15:03.830 --> 00:15:07.149
has always had that built in and you can use

00:15:07.149 --> 00:15:13.029
emacs to uh essentially extend unix tooling with

00:15:13.029 --> 00:15:17.269
the lisp programming language uh so i know that

00:15:17.269 --> 00:15:21.169
neovim uses lua for its configuration emacs uses

00:15:21.169 --> 00:15:25.690
lisp lisp is a fully integrated programming language

00:15:25.690 --> 00:15:29.899
so what you can do is How familiar are you with

00:15:29.899 --> 00:15:34.740
Bash scripting? Most of the things that I do

00:15:34.740 --> 00:15:39.379
are Bash, right? I try to use it as much as possible.

00:15:40.080 --> 00:15:43.720
Yeah, so in Bash scripting, you can write out

00:15:43.720 --> 00:15:46.120
your script and it can automate a lot of tasks,

00:15:46.299 --> 00:15:49.659
right? With Emacs and Lisp, you can actually

00:15:49.659 --> 00:15:55.440
take those Bash scripts and then use Lisp on

00:15:55.440 --> 00:15:57.840
top of them. So you have like a programming language

00:15:57.840 --> 00:16:02.340
on top of Bash that allows it to extend basic

00:16:02.340 --> 00:16:04.960
Unix tooling to essentially whatever you want

00:16:04.960 --> 00:16:08.840
it to be. So Emacs can really be whatever you

00:16:08.840 --> 00:16:13.899
want it or need it to be. It's fully programmatic.

00:16:13.919 --> 00:16:17.559
It's fully self -documenting. It's essentially

00:16:17.559 --> 00:16:20.639
a way that you could replace your entire... We

00:16:20.639 --> 00:16:29.429
were talking about this. way of doing essentially

00:16:29.429 --> 00:16:33.289
everything. Does that make sense? Yeah. So, well,

00:16:33.350 --> 00:16:36.649
I'm curious about what you said about Bash, right?

00:16:36.730 --> 00:16:40.330
So how is Bash related to Lisp? Because I have

00:16:40.330 --> 00:16:43.009
heard about Lisp a lot and I'm like, so what

00:16:43.009 --> 00:16:45.909
is it? Is it a programming language then? Yep.

00:16:46.370 --> 00:16:48.990
Yeah. Lisp is a fully fledged programming language.

00:16:49.509 --> 00:16:54.210
So Bash is CLI. And I mean, it's definitely...

00:16:54.669 --> 00:16:57.610
programmatic in and of itself but you can take

00:16:57.610 --> 00:17:00.610
instead of like piping a command out in bash

00:17:00.610 --> 00:17:04.970
you can pipe it into lisp and then take a lisp

00:17:04.970 --> 00:17:09.150
function and write whatever you want on top of

00:17:09.150 --> 00:17:12.569
that does that make sense okay yeah i i guess

00:17:12.569 --> 00:17:16.150
it does make sense i'll i'll understand more

00:17:16.150 --> 00:17:20.089
once i start doing my first um you know things

00:17:20.089 --> 00:17:22.289
with lisp i don't think we're gonna go into too

00:17:22.289 --> 00:17:27.079
much um no no i'll kind of show you my yeah no

00:17:27.079 --> 00:17:29.119
i'll show you my config like i'll show you some

00:17:29.119 --> 00:17:31.059
of my configuration and like things that i've

00:17:31.059 --> 00:17:34.900
done uh that have kind of i've used to extend

00:17:34.900 --> 00:17:37.759
emacs but yeah we're not gonna we're not gonna

00:17:37.759 --> 00:17:39.880
let write any list functions or anything i don't

00:17:39.880 --> 00:17:42.819
think in this video okay yeah and we can do another

00:17:42.819 --> 00:17:46.759
one depending on how this one um performs if

00:17:46.759 --> 00:17:48.740
people like it you know we can create another

00:17:48.740 --> 00:17:51.720
one and do some more complex things i want to

00:17:51.720 --> 00:17:55.690
go over basics right now and what someone that

00:17:55.690 --> 00:17:59.029
needs to get started or wants to get started

00:17:59.029 --> 00:18:03.650
with Emacs needs to do, right? Just as a beginner.

00:18:03.650 --> 00:18:07.190
That sounds good to me. So this will install

00:18:07.190 --> 00:18:11.109
vanilla Emacs. If you go to my screen, you'll

00:18:11.109 --> 00:18:13.470
see that I'm running something called Doom Emacs,

00:18:13.569 --> 00:18:17.190
which is... it's kind of like a bunch of sensible

00:18:17.190 --> 00:18:20.130
defaults on top of emacs so you'll you'll open

00:18:20.130 --> 00:18:21.809
this when you first download it and you'll be

00:18:21.809 --> 00:18:24.509
like this it's just this big white screen with

00:18:24.509 --> 00:18:27.190
like a logo in the middle of it and then a toolbar

00:18:27.190 --> 00:18:28.970
and all this and you're like what am i supposed

00:18:28.970 --> 00:18:31.069
to do with this oh hold on let me switch to your

00:18:31.069 --> 00:18:33.690
screen oh yeah so this is this is doom emacs

00:18:33.690 --> 00:18:36.690
and this is like this is like a sensible default

00:18:36.690 --> 00:18:40.490
for the neovim people it's like envy chad but

00:18:40.490 --> 00:18:42.869
like that's not a very good comparison because

00:18:42.869 --> 00:18:46.680
doom like takes the sensible defaults but also

00:18:46.680 --> 00:18:49.480
uh optimizations and everything for emacs for

00:18:49.480 --> 00:18:51.440
like startup time and everything like i don't

00:18:51.440 --> 00:18:53.599
even think i can make that comparison but essentially

00:18:53.599 --> 00:18:55.700
it gives you like a file manager you can go through

00:18:55.700 --> 00:18:58.420
like go through all your files uh in the bottom

00:18:58.420 --> 00:19:01.160
here you can open it up let's i mean let's go

00:19:01.160 --> 00:19:03.880
to a project or something like that uh development

00:19:03.880 --> 00:19:06.779
i don't know something i'm building here and

00:19:06.779 --> 00:19:11.480
even just my blog right um it's you're familiar

00:19:11.480 --> 00:19:13.200
with this like it's a file system and everything

00:19:13.200 --> 00:19:17.730
but in here like you can start you just open

00:19:17.730 --> 00:19:19.789
up a file i don't know what i want here just

00:19:19.789 --> 00:19:23.650
do one of my latest posts uh let's do this one

00:19:23.650 --> 00:19:29.289
so this is org mode this is uh and how yeah this

00:19:29.289 --> 00:19:32.910
is you have a blog post as well yeah so this

00:19:32.910 --> 00:19:36.450
is my literate doom emax configuration so uh

00:19:36.450 --> 00:19:39.710
this is one of my more recent posts um i actually

00:19:39.710 --> 00:19:42.309
go through everything that i've done for configuring

00:19:42.309 --> 00:19:46.650
my emacs and i'm like i don't know i think i

00:19:46.650 --> 00:19:50.869
have like 1200 lines of uh config i want to say

00:19:50.869 --> 00:19:55.390
okay so it's it's pretty long um yeah it's uh

00:19:55.390 --> 00:19:58.069
this is this is org mode so you can essentially

00:19:58.069 --> 00:20:02.410
see all of these different um code blocks these

00:20:02.410 --> 00:20:06.650
are all tangled to my configuration so what that

00:20:06.650 --> 00:20:14.519
means is i can essentially in org mode. And then

00:20:14.519 --> 00:20:19.480
this line then gets traversed into my regular

00:20:19.480 --> 00:20:24.059
Lisp configuration. Does that make sense? Not

00:20:24.059 --> 00:20:29.099
much, but it's fine. No, no, no. Yeah. So it's

00:20:29.099 --> 00:20:31.720
kind of like, it's a way of like self -documenting

00:20:31.720 --> 00:20:35.480
your configuration. So like when you program,

00:20:35.640 --> 00:20:39.279
you could essentially write a source block. right

00:20:39.279 --> 00:20:42.980
here, and then have that tangled to another file

00:20:42.980 --> 00:20:46.039
that actually is that code. So you could like

00:20:46.039 --> 00:20:48.000
self -document this right here, because this

00:20:48.000 --> 00:20:50.900
is not going to be included in my code right

00:20:50.900 --> 00:20:55.599
here. I could say this, this is my, I can't type

00:20:55.599 --> 00:21:02.680
today. This is my initial configuration. Can't

00:21:02.680 --> 00:21:05.799
spell either today. And that is not included

00:21:05.799 --> 00:21:09.859
in my source block. okay this is and then this

00:21:09.859 --> 00:21:13.000
actually gets tangled to like a a source block

00:21:13.000 --> 00:21:16.579
that is actually the the file that's installing

00:21:16.579 --> 00:21:19.700
a little bit quicker now yeah so this is org

00:21:19.700 --> 00:21:23.220
mode that's like a very that's a basic rundown

00:21:23.220 --> 00:21:25.819
of what org mode is but org mode is also these

00:21:25.819 --> 00:21:31.440
um in markdown you have the um heading system

00:21:31.440 --> 00:21:33.960
so in markdown you have something that's like

00:21:33.960 --> 00:21:38.339
right here you have like this is a heading h1

00:21:38.339 --> 00:21:42.059
h2 h3 heading you got it you got it so in in

00:21:42.059 --> 00:21:44.960
in org mode it's actually just an asterisk and

00:21:44.960 --> 00:21:46.579
then you can actually take that and make it a

00:21:46.579 --> 00:21:48.400
second asterisk or third you can actually go

00:21:48.400 --> 00:21:51.160
all the way down and that's kind of your your

00:21:51.160 --> 00:21:55.019
heading system um and then you can obviously

00:21:55.019 --> 00:21:58.359
same thing as in markdown you can like you can

00:21:58.359 --> 00:22:02.559
wrap it you can close it uh and all of that you

00:22:02.559 --> 00:22:07.440
can also take like um the big thing for org mode

00:22:07.440 --> 00:22:09.960
a lot of people do is like they do project management

00:22:09.960 --> 00:22:13.559
so they write like to do's and you can like mark

00:22:13.559 --> 00:22:16.700
those as done or you can take them and go through

00:22:16.700 --> 00:22:20.460
different statuses for them does that make sense

00:22:20.460 --> 00:22:23.099
so you can also you can also you can also like

00:22:23.099 --> 00:22:27.420
clock in on it so you can actually like take

00:22:27.420 --> 00:22:30.339
your You can actually like track your work on

00:22:30.339 --> 00:22:32.960
a heading, for example. So like, let's say you

00:22:32.960 --> 00:22:36.000
have a project and you have like a dozen things

00:22:36.000 --> 00:22:38.660
you need to do for that project. You can actually

00:22:38.660 --> 00:22:41.119
like time yourself on each of them. And then

00:22:41.119 --> 00:22:43.079
you can actually like send a report out at the

00:22:43.079 --> 00:22:47.579
end of it for what you've worked on that day.

00:22:47.640 --> 00:22:50.900
Oh, I see. Makes sense. Yeah, like it's a fully

00:22:50.900 --> 00:22:54.460
programmatic environment on top of like, it's

00:22:54.460 --> 00:22:57.579
like a better markdown, I would say. I've used...

00:22:57.799 --> 00:23:01.119
I know. I've used Markdown extensively, but Org

00:23:01.119 --> 00:23:04.059
is even better. Now, I have a question about

00:23:04.059 --> 00:23:08.240
that. Yes. How do you do with GitHub repos? If

00:23:08.240 --> 00:23:10.440
you need to create a readme file in a GitHub

00:23:10.440 --> 00:23:14.579
repo, right? Yep. What do you do? So there's

00:23:14.579 --> 00:23:16.539
something called... Oh my goodness. We could

00:23:16.539 --> 00:23:20.180
go like so deep on this video. There's something

00:23:20.180 --> 00:23:24.180
called Magit. Magit. M -A -G -I -T. And if you

00:23:24.180 --> 00:23:27.019
can see my screen here, this is literally...

00:23:27.289 --> 00:23:31.269
this is a like this is a git diff buffer it's

00:23:31.269 --> 00:23:33.130
like you can literally stage your changes here

00:23:33.130 --> 00:23:37.170
commit them write your commit here i'm not actually

00:23:37.170 --> 00:23:40.029
going to commit this because it's it's not i

00:23:40.029 --> 00:23:41.690
don't want to add this to my blog post right

00:23:41.690 --> 00:23:43.930
but you can essentially write your commit here

00:23:43.930 --> 00:23:46.430
and then you can stage it and then you can push

00:23:46.430 --> 00:23:49.450
it to your github repo just like that it's all

00:23:49.450 --> 00:23:53.190
integrated into emacs You probably... The readme

00:23:53.190 --> 00:23:56.049
files, since they're marked down, right? Let's

00:23:56.049 --> 00:23:58.109
say that you want to have a readme file in a

00:23:58.109 --> 00:24:01.930
GitHub repo. Yep. Yep. Well, my friend, GitHub

00:24:01.930 --> 00:24:05.369
also uses org. You can do readme .org instead

00:24:05.369 --> 00:24:09.130
of readme .md. Oh, and it converts it and it

00:24:09.130 --> 00:24:13.190
looks nice? Yeah, 100%. And it looks like I do

00:24:13.190 --> 00:24:16.349
all my readmes in org mode. Oh, interesting.

00:24:16.670 --> 00:24:20.940
Yeah. So it's fully compatible on GitHub. It'll

00:24:20.940 --> 00:24:29.000
be properly formatted and all that on the repo

00:24:29.000 --> 00:24:32.680
and everything. Okay. Now, my blog post is marked

00:24:32.680 --> 00:24:36.500
down, 100 % marked down. So I guess I'm screwed

00:24:36.500 --> 00:24:40.740
there, right? Not necessarily. What do you use

00:24:40.740 --> 00:24:42.220
for your blog? Do you use something like Hugo

00:24:42.220 --> 00:24:47.160
or? Jekyll. It's just a Jekyll. Okay. Yeah. I'm

00:24:47.160 --> 00:24:49.619
not super familiar with Jekyll, but Hugo, literally,

00:24:49.799 --> 00:24:52.160
it's one -to -one. You can actually use org mode

00:24:52.160 --> 00:24:57.480
instead of Markdown. But if you wanted to go

00:24:57.480 --> 00:25:00.579
org mode, you could literally, there's conversion

00:25:00.579 --> 00:25:04.759
programs within Doom Emacs that you could literally

00:25:04.759 --> 00:25:08.319
say, I want to convert. Okay, this file from

00:25:08.319 --> 00:25:11.480
Markdown to org. Correct. Okay. Yeah, and it

00:25:11.480 --> 00:25:13.640
will take all your headings and make them org

00:25:13.640 --> 00:25:16.329
headings, blah, blah, blah, blah. Oh, makes sense.

00:25:16.829 --> 00:25:20.250
Yeah, it's like a straight conversion. So I think

00:25:20.250 --> 00:25:22.710
it's installed on your screen. Yeah, it is installed.

00:25:22.829 --> 00:25:28.369
Let me switch to my screen. What was it? This,

00:25:28.609 --> 00:25:33.890
I think. I don't know if you can see my screen.

00:25:35.450 --> 00:25:38.900
I can. You're good to go. Okay. This is what

00:25:38.900 --> 00:25:43.200
I do for tasks in NeoVim because I feel what

00:25:43.200 --> 00:25:45.660
you're saying about tasks, right? So I just came

00:25:45.660 --> 00:25:49.160
up with my own, let's say, sort of solution,

00:25:49.380 --> 00:25:52.059
right? I already installed Emacs. So if I type

00:25:52.059 --> 00:25:55.700
here, Alt X, notice that it removed the task

00:25:55.700 --> 00:25:59.140
from there, right? So it's no longer there. And

00:25:59.140 --> 00:26:02.579
I just configured it so that I added the task

00:26:02.579 --> 00:26:06.119
here with the time, right? Date and time, right?

00:26:06.200 --> 00:26:09.400
Nice. I can untangle them. You know, it's not

00:26:09.400 --> 00:26:14.859
so well thought out, but at least that's what

00:26:14.859 --> 00:26:17.500
I need. You know, I just need to keep a history

00:26:17.500 --> 00:26:20.400
of my tasks and I can search through them and

00:26:20.400 --> 00:26:24.079
all that. So I can see which tasks are completed

00:26:24.079 --> 00:26:27.880
or not in a project, you know. No, that's awesome.

00:26:28.759 --> 00:26:31.400
I had thought about doing it because I had...

00:26:31.789 --> 00:26:33.849
been using neovim extensively and i was like

00:26:33.849 --> 00:26:36.609
how do i build a better org mode and i just literally

00:26:36.609 --> 00:26:39.609
couldn't the way that they had it done is just

00:26:39.609 --> 00:26:43.970
so like the the man hours and thought processes

00:26:43.970 --> 00:26:46.109
that have gone into org mode it's just like i

00:26:46.109 --> 00:26:49.470
could never replicate yeah for sure no i did

00:26:49.470 --> 00:26:51.309
something very similar to you too though like

00:26:51.309 --> 00:26:54.970
100 exactly like that when i was using um neovim

00:26:54.970 --> 00:26:57.329
and then i would actually just take that over

00:26:57.329 --> 00:27:01.119
into um obsidian And you could just see like

00:27:01.119 --> 00:27:04.240
the obsidian layout of my task management and

00:27:04.240 --> 00:27:07.039
all that. And I mean, whatever works for you

00:27:07.039 --> 00:27:09.700
is really what matters at the end of the day.

00:27:09.920 --> 00:27:14.240
Yeah. Yeah, that's true. And I'm open to right

00:27:14.240 --> 00:27:16.700
now new tools, you know, I don't think there

00:27:16.700 --> 00:27:20.200
are sites, you know, I can like new of them.

00:27:20.259 --> 00:27:22.579
I can love new of them, but why wouldn't I try

00:27:22.579 --> 00:27:26.019
Emacs? Right. I cannot say I don't like Emacs

00:27:26.019 --> 00:27:29.880
if I haven't tested. Especially if I haven't

00:27:29.880 --> 00:27:32.900
used it at least for a year, right? One year

00:27:32.900 --> 00:27:35.720
after using it, I could come and tell you, no,

00:27:35.880 --> 00:27:38.759
Niobe is better. I'm not in that position yet,

00:27:38.859 --> 00:27:42.119
but, you know, that's what I think. That's how

00:27:42.119 --> 00:27:45.380
I feel. Many people use them both. right? Like

00:27:45.380 --> 00:27:48.279
they use their Emacs for org mode and task management

00:27:48.279 --> 00:27:50.240
and then they do all their programming in NeoVim,

00:27:50.339 --> 00:27:52.700
right? Like you can absolutely do that. I'm not

00:27:52.700 --> 00:27:54.900
saying that you should pick a side and stay to

00:27:54.900 --> 00:27:57.559
the side forever, but no, like Emacs is just,

00:27:57.640 --> 00:28:02.339
it's a different philosophy as to how you integrate

00:28:02.339 --> 00:28:05.000
with a computer at the end of the day. It's almost

00:28:05.000 --> 00:28:08.359
like what a computer could have been if we had

00:28:08.359 --> 00:28:11.599
kept everything integrated instead of like starting

00:28:11.599 --> 00:28:15.130
to compartmentalize everything out into different

00:28:15.130 --> 00:28:18.809
applications oh yeah um if that makes sense yeah

00:28:18.809 --> 00:28:21.869
yeah i get it like if you could install emacs

00:28:21.869 --> 00:28:24.849
like the operating system itself and you could

00:28:24.849 --> 00:28:28.069
yeah run applications inside of it like obs and

00:28:28.069 --> 00:28:30.069
stuff like that you say it would be great right

00:28:30.069 --> 00:28:32.750
yeah yeah and there's people that are working

00:28:32.750 --> 00:28:35.609
on that like like a fully fledged web browser

00:28:35.609 --> 00:28:38.279
and all these different things and i'm like Maybe

00:28:38.279 --> 00:28:40.420
that actually is the direction it will eventually

00:28:40.420 --> 00:28:42.920
go. It needs to be multi -threaded before I think

00:28:42.920 --> 00:28:48.039
that that is viable. But it's right now for a

00:28:48.039 --> 00:28:51.740
text editing environment. And I mean, when you

00:28:51.740 --> 00:28:54.779
get down to it in a computer, everything is a

00:28:54.779 --> 00:29:00.839
text file, right? Like everything when you're

00:29:00.839 --> 00:29:03.539
programming is a text file. So that's kind of

00:29:03.539 --> 00:29:06.720
where it shines as a way to integrate with a

00:29:06.720 --> 00:29:10.339
computer. Yeah. Okay. So it installed already.

00:29:10.640 --> 00:29:13.299
What should I do? Let's open it. Let's try opening

00:29:13.299 --> 00:29:16.420
it and see what vanilla Emacs looks like. Okay.

00:29:16.460 --> 00:29:20.920
And how do I open it? Just open up the Emacs

00:29:20.920 --> 00:29:23.059
app in your computer. Probably should have just

00:29:23.059 --> 00:29:24.960
installed it. Or you can just run Emacs from

00:29:24.960 --> 00:29:28.819
your terminal. Okay. So it installs it as an

00:29:28.819 --> 00:29:34.169
app then. It's not just like a CLI tool? Maybe

00:29:34.169 --> 00:29:37.809
Emacs Plus is just a CLI. Try just writing Emacs

00:29:37.809 --> 00:29:41.849
in the terminal. Emacs. Yeah. Let's see what

00:29:41.849 --> 00:29:43.970
happens. Something popped up. Yeah. I saw something

00:29:43.970 --> 00:29:47.130
pop up. All right. So let me bring up my applications.

00:29:48.190 --> 00:29:52.829
And it seems that here is Emacs. There you go.

00:29:53.809 --> 00:29:58.049
That's the default Emacs screen. There you go.

00:29:59.599 --> 00:30:02.339
It's a separate application. I don't run it in.

00:30:02.420 --> 00:30:05.259
It's like its own terminal application. I thought

00:30:05.259 --> 00:30:07.980
it ran like in Ghosty or something like that.

00:30:08.559 --> 00:30:12.279
No, you can run it in the terminal with emacs

00:30:12.279 --> 00:30:17.640
- I believe it's emacs -nw, which is a... Let

00:30:17.640 --> 00:30:20.079
me double check that for you. But what's better?

00:30:20.180 --> 00:30:22.940
Like what makes more sense? Running it in the

00:30:22.940 --> 00:30:27.460
GUI. Run it as it... in the in the gui is the

00:30:27.460 --> 00:30:30.500
better way to run it i would say because then

00:30:30.500 --> 00:30:32.880
you get like full image support and everything

00:30:32.880 --> 00:30:35.640
like it you can actually have images within it

00:30:35.640 --> 00:30:39.640
you can have um that's probably the better way

00:30:39.640 --> 00:30:42.299
to run emacs you can absolutely run it in a terminal

00:30:42.299 --> 00:30:45.059
and use it like on a server and use it interchangeably

00:30:45.059 --> 00:30:50.880
with like a neovim um yeah it's emacs -nw would

00:30:50.880 --> 00:30:53.380
be the way to start it in the terminal. So if

00:30:53.380 --> 00:30:57.240
you close that window and you type emacs -nw,

00:30:57.460 --> 00:31:00.859
it will open up in the terminal. Oh, okay. But

00:31:00.859 --> 00:31:02.740
do I have to close this or can I leave it open?

00:31:04.619 --> 00:31:07.960
You can probably leave it open and just throw

00:31:07.960 --> 00:31:12.180
another TMUX session up and throw... Oh, okay.

00:31:12.259 --> 00:31:14.559
I see what you mean. Because it takes over my

00:31:14.559 --> 00:31:21.329
terminal. Yes. Okay. Emacs -nw? Space, yeah,

00:31:21.450 --> 00:31:26.769
space -nw. Oh, space -nw. Yeah, dash nw. Correct,

00:31:26.950 --> 00:31:29.750
yeah. Oh, I see. Okay. So that's fully in your

00:31:29.750 --> 00:31:32.390
terminal then. The only thing with this is you

00:31:32.390 --> 00:31:35.789
won't get like image support and the nice stuff

00:31:35.789 --> 00:31:39.130
with a GUI. Makes sense. Okay, so you don't rely

00:31:39.130 --> 00:31:42.049
on the terminal at all then. How do I exit out

00:31:42.049 --> 00:31:48.490
of this? That one is, you can, does it even set

00:31:48.490 --> 00:31:52.039
in there? I'm so unfamiliar with normal Emacs

00:31:52.039 --> 00:31:55.059
commands. Oh, there's this exit Emacs, control

00:31:55.059 --> 00:31:58.619
X, control C. That is, yes. Do I have to type

00:31:58.619 --> 00:32:02.240
both of them then? Yeah, hold control X and then

00:32:02.240 --> 00:32:06.140
hit control C again. Okay, okay. There you go.

00:32:06.240 --> 00:32:09.599
Okay. Yeah, so the big joke about Emacs is that

00:32:09.599 --> 00:32:12.160
like you'll ruin your pinky finger because you

00:32:12.160 --> 00:32:15.789
have to hit control a ton. Um, the thing about

00:32:15.789 --> 00:32:19.710
do me max is that they use space as the leader.

00:32:20.150 --> 00:32:23.569
So it like, it completely takes away that control,

00:32:23.769 --> 00:32:29.849
uh, that control interface. Um, I like that personally.

00:32:29.990 --> 00:32:31.789
I know that some people are purists and they

00:32:31.789 --> 00:32:34.730
don't like that at all, but, uh, it's for me,

00:32:34.769 --> 00:32:37.250
it's a way more ergonomic way of dealing with,

00:32:37.390 --> 00:32:42.250
um, doing everything. Oh, yeah. Just exiting

00:32:42.250 --> 00:32:44.930
out of it. You know, my fingers felt it. You

00:32:44.930 --> 00:32:48.930
know, imagine doing that all day, every day.

00:32:49.130 --> 00:32:52.789
Yeah. No, no, no, no. Cool. Well, let's install

00:32:52.789 --> 00:32:54.829
Doom then. And I'll kind of show you around that.

00:32:55.130 --> 00:32:57.210
Because I think that because you're coming from

00:32:57.210 --> 00:33:01.890
Vim, Doom is essentially a it's an Emacs that

00:33:01.890 --> 00:33:05.289
really uses a lot of the Vim stuff. So you'll

00:33:05.289 --> 00:33:07.269
probably feel a lot more at home and be able

00:33:07.269 --> 00:33:08.990
to get up and running with Doom a lot quicker.

00:33:09.640 --> 00:33:13.000
all right let's do it then cool so if you go

00:33:13.000 --> 00:33:16.759
to uh github and just search doom emacs yeah

00:33:16.759 --> 00:33:19.960
doom emacs you got it the first one the first

00:33:19.960 --> 00:33:27.160
one yep all right and then uh installation on

00:33:27.160 --> 00:33:32.339
the installation section let's see here right

00:33:32.339 --> 00:33:35.079
there git clone yep that's exactly what you do

00:33:35.079 --> 00:33:40.369
i just copy that thing yep And I just run it

00:33:40.369 --> 00:33:44.049
in my terminal, right? You got it. All right.

00:33:44.109 --> 00:33:46.569
Do I leave Emacs open? Cause it's still running

00:33:46.569 --> 00:33:50.150
here. You can just close it and then reopen it

00:33:50.150 --> 00:33:53.009
when it's, when it's installed. And I just close

00:33:53.009 --> 00:33:55.069
it like a regular app. Like if you would quit

00:33:55.069 --> 00:33:58.490
an app on Mac OS or do I do the control X control,

00:33:58.650 --> 00:34:01.440
whatever thing. No, you can, well, I mean, you

00:34:01.440 --> 00:34:04.380
could do both. You try control X, control C.

00:34:04.460 --> 00:34:06.140
I'm actually not familiar with Mac, so I'd be

00:34:06.140 --> 00:34:08.000
interested if it actually closes that window.

00:34:08.360 --> 00:34:11.199
Let's see, control X, control C. Oh, it does.

00:34:11.380 --> 00:34:17.480
Nice. Okay, cool. And then as a normal GUI app,

00:34:17.619 --> 00:34:19.960
you could just like X out of it or close it however

00:34:19.960 --> 00:34:22.400
you have a hotkey set up. Oh yeah, that's way

00:34:22.400 --> 00:34:24.599
easier. Okay, so I'm just going to clone this.

00:34:25.159 --> 00:34:27.420
and it's going to run what an install script

00:34:27.420 --> 00:34:32.840
seems yep and then just hit y okay and then it

00:34:32.840 --> 00:34:36.840
will uh it adds a bunch of like package management

00:34:36.840 --> 00:34:40.219
and and ways that you can like a bunch of default

00:34:40.219 --> 00:34:46.539
packages for um editing and lsps and tree sitter

00:34:46.539 --> 00:34:48.639
and all these different things like it it's kind

00:34:48.639 --> 00:34:51.639
of uh are you familiar with nv chad as like a

00:34:52.239 --> 00:34:54.760
NeoVim framework? Distribution? Yeah. I don't

00:34:54.760 --> 00:34:57.940
use it. I use the LazyVim distribution. Yeah,

00:34:58.019 --> 00:35:01.940
it's similar to Lazy. Same thing. I don't want

00:35:01.940 --> 00:35:03.860
to say same thing because there's a lot of optimizations

00:35:03.860 --> 00:35:06.400
and stuff that the developer Henrik has done.

00:35:06.800 --> 00:35:10.559
But it's a bunch of like sane defaults on top

00:35:10.559 --> 00:35:12.599
of Emacs. I know people that are watching this

00:35:12.599 --> 00:35:14.380
that are like Emacs purists are going to scream

00:35:14.380 --> 00:35:17.860
at me, but I love it. I don't really see myself

00:35:17.860 --> 00:35:20.300
ever doing like a vanilla Emacs config just because

00:35:20.300 --> 00:35:22.269
I don't really have the time to do it. Yeah.

00:35:22.409 --> 00:35:26.090
Yeah. Same thing in Neobim. If you install a

00:35:26.090 --> 00:35:28.190
Neobim distribution, there's a lot of people

00:35:28.190 --> 00:35:30.250
that's going to scream at you and are going to

00:35:30.250 --> 00:35:32.309
be upset because you're using a distribution

00:35:32.309 --> 00:35:35.210
and you didn't start your Neobim from scratch.

00:35:35.489 --> 00:35:38.530
But the problem with that is that, yeah, for

00:35:38.530 --> 00:35:42.329
sure. The problem is that I want to get to know

00:35:42.329 --> 00:35:44.630
the tool first. You know, I want to see what

00:35:44.630 --> 00:35:47.369
it's capable of doing. I want to see if I like

00:35:47.369 --> 00:35:50.389
it or not. If I do, I'm still trying out NeoVim.

00:35:50.489 --> 00:35:53.269
I have been using it for like a year. If I like

00:35:53.269 --> 00:35:57.530
it, maybe I can invest hours and hours and hours

00:35:57.530 --> 00:35:59.889
into my own config. Honestly, I don't want to

00:35:59.889 --> 00:36:01.889
do it because it's not going to look better than

00:36:01.889 --> 00:36:04.650
the lazy event distro anyway, and it's not going

00:36:04.650 --> 00:36:07.750
to be better. So I'm just going to leave that

00:36:07.750 --> 00:36:11.070
to an expert, right? That's kind of how I feel

00:36:11.070 --> 00:36:16.030
about Emacs as well. Doom is just so... well

00:36:16.030 --> 00:36:19.230
optimized and such like i and i mean i've i've

00:36:19.230 --> 00:36:21.409
run optimizations within my own configuration

00:36:21.409 --> 00:36:23.809
we can even go through them and stuff but like

00:36:23.809 --> 00:36:27.190
there's nothing that even compares uh for me

00:36:27.190 --> 00:36:29.869
at least and i know people are gonna be like

00:36:29.869 --> 00:36:32.570
well you gotta roll your own configuration eventually

00:36:32.570 --> 00:36:37.429
maybe maybe one day uh but right now i get by

00:36:37.429 --> 00:36:39.969
pretty well with uh the way that it's configured

00:36:39.969 --> 00:36:44.909
for me and where do you think The inspiration

00:36:44.909 --> 00:36:49.389
came from, did Neovim came up with the inspiration

00:36:49.389 --> 00:36:52.889
for this called distributions from Doom Emacs

00:36:52.889 --> 00:36:58.329
or Doom Emacs came from Neovim inspiration? I

00:36:58.329 --> 00:37:00.849
don't know which one started, you know, this

00:37:00.849 --> 00:37:04.530
like packaging, because it's some sort of like

00:37:04.530 --> 00:37:07.030
packaging system, right? In which you get a lot

00:37:07.030 --> 00:37:10.880
of same defaults, right? Yeah. I'm not a hundred

00:37:10.880 --> 00:37:14.019
percent sure who started like the, there's been

00:37:14.019 --> 00:37:17.500
Emacs distributions in the past. Like Doom is

00:37:17.500 --> 00:37:21.579
not the newest distribution in quotation marks

00:37:21.579 --> 00:37:25.099
by any means, but there you go. That was actually

00:37:25.099 --> 00:37:28.820
pretty quick for an install. Two minutes, 58

00:37:28.820 --> 00:37:33.800
seconds. Yeah. So now you'll run, if you go back

00:37:33.800 --> 00:37:39.380
to the GitHub repo. Okay. You will just scroll

00:37:39.380 --> 00:37:43.639
down a little bit. That command there with the

00:37:43.639 --> 00:37:47.320
.config slash emacs slash bin slash doom. Copy

00:37:47.320 --> 00:37:53.340
that, just that part of the yes. Just copy that.

00:37:53.800 --> 00:37:57.900
Go to your terminal. Paste it in. Just like that?

00:37:57.980 --> 00:38:01.159
Just paste it in? Yeah, just paste that in. And

00:38:01.159 --> 00:38:04.019
then I'll add a couple things to it. Then add

00:38:04.019 --> 00:38:08.119
a, no, no, sorry. And then slash. Right at the

00:38:08.119 --> 00:38:13.099
end of bin. Okay. Oh, okay. Yeah. You got it.

00:38:13.159 --> 00:38:18.699
Slash doom. And then space. Then the word sync.

00:38:18.840 --> 00:38:22.559
S Y N C. Just like this. And then hit it. Yep.

00:38:23.539 --> 00:38:26.960
Okay. What is that? That should, that, that,

00:38:26.960 --> 00:38:31.320
that just builds the, um, that just builds doom.

00:38:31.579 --> 00:38:34.579
So that should, uh, if you run Emacs again, it

00:38:34.579 --> 00:38:37.119
should look differently. Let's see if this works.

00:38:37.440 --> 00:38:42.719
Oh, it's just Emacs, right? Yep. Just Emacs.

00:38:42.780 --> 00:38:45.900
And where is it? Oh, no, it doesn't look different.

00:38:46.059 --> 00:38:48.599
Okay, what do we have to do here? Let me think.

00:38:49.199 --> 00:38:51.940
So yeah, if you run that command, that will open

00:38:51.940 --> 00:38:56.099
up Doom Emacs. We can alias that to just the

00:38:56.099 --> 00:38:58.079
command Emacs in the future if you wanted to.

00:38:58.239 --> 00:39:00.380
So if you just type in Emacs, it will just run

00:39:00.380 --> 00:39:03.019
that command instead. Okay, okay, makes sense.

00:39:03.179 --> 00:39:05.900
You're familiar with aliases, I assume. yeah

00:39:05.900 --> 00:39:09.860
yeah yeah for sure so um okay so that so that

00:39:09.860 --> 00:39:12.760
will pop it up and then it seems to be running

00:39:12.760 --> 00:39:17.000
there it is nice okay that's do me max so it

00:39:17.000 --> 00:39:19.719
looks a little bit prettier than vanilla emacs

00:39:19.719 --> 00:39:22.139
at least my opinion yeah it looks like a neovin

00:39:22.139 --> 00:39:26.300
distribution you got it so these commands that

00:39:26.300 --> 00:39:28.900
it has right at the default uh dashboard will

00:39:28.900 --> 00:39:30.820
kind of get you started so if you wanted to go

00:39:30.820 --> 00:39:35.480
uh to your configuration you could just type

00:39:35.480 --> 00:39:39.780
uh space fp that will bring you to your like

00:39:39.780 --> 00:39:43.219
your emacs configuration etc but if you just

00:39:43.219 --> 00:39:47.599
type space period space period okay space period

00:39:47.599 --> 00:39:52.039
okay there's your file system okay from that

00:39:52.039 --> 00:39:55.820
point that you entered uh it so you're actually

00:39:55.820 --> 00:39:59.380
in your config directory right now okay um and

00:39:59.380 --> 00:40:01.889
you can zoom around your file system just with

00:40:01.889 --> 00:40:06.369
that okay uh so if you wanted to go edit a file

00:40:06.369 --> 00:40:09.869
or something maybe even edit your neovim configuration

00:40:09.869 --> 00:40:14.070
you could do it from there okay okay so you just

00:40:14.070 --> 00:40:17.510
have to change the path here then i guess right

00:40:17.510 --> 00:40:24.530
yep yep okay so if i come here to github and

00:40:24.530 --> 00:40:27.190
it has a tab completion as well yeah that's what

00:40:27.190 --> 00:40:30.769
i noticed that files latest Okay, I'm in my .files

00:40:30.769 --> 00:40:33.829
there, for example. There you go. I just open

00:40:33.829 --> 00:40:36.349
that directory there? Just hit enter? Yeah, just

00:40:36.349 --> 00:40:38.670
hit. If you hit enter, that will actually take

00:40:38.670 --> 00:40:40.630
you to the place. There you go. So now you're

00:40:40.630 --> 00:40:44.909
in it. You'll have Vim controls, so HJKL is normal.

00:40:44.949 --> 00:40:48.429
Oh, that's good. Okay. And then if you hit L,

00:40:48.550 --> 00:40:51.730
for example, to go into a directory. Okay, L

00:40:51.730 --> 00:40:55.449
is right and H is left. It's back, I guess, right?

00:40:55.650 --> 00:40:59.400
Okay, so if I come here to... this okay makes

00:40:59.400 --> 00:41:01.440
sense yes there you go you want to edit lazy

00:41:01.440 --> 00:41:03.880
vim or whatever you can go through and then it'll

00:41:03.880 --> 00:41:06.500
uh take you into whichever file you want to edit

00:41:06.500 --> 00:41:08.900
let me open a file and let's see how it looks

00:41:08.900 --> 00:41:11.619
uh one of the plugin files and let's open this

00:41:11.619 --> 00:41:15.460
one yeah that's fully yeah so that's like fully

00:41:15.460 --> 00:41:20.300
vanilla um that's a lua file type alt type alt

00:41:20.300 --> 00:41:26.860
x alt x Or command X on a Mac, I suppose. Command

00:41:26.860 --> 00:41:29.860
X. Let's see. Okay. Command X. That's literally

00:41:29.860 --> 00:41:33.360
every command you can run in Emacs. So you see

00:41:33.360 --> 00:41:36.539
all of the different commands. Just type Lua.

00:41:36.659 --> 00:41:40.760
I want to see if there's a Lua mode. Lua TS mode.

00:41:41.219 --> 00:41:44.719
Hit enter. Let's see if that does anything. Nice.

00:41:44.800 --> 00:41:48.119
There you go. So you have your LSP for Lua right

00:41:48.119 --> 00:41:52.079
there. Okay. Now, it's giving you an error because

00:41:52.079 --> 00:41:57.079
TreeSitter, it's saying the Lua grammar is unavailable.

00:41:57.360 --> 00:41:59.159
I mean, that's weird because it actually is giving

00:41:59.159 --> 00:42:01.280
you a little bit of syntax highlighting. Yeah,

00:42:01.340 --> 00:42:04.059
a little bit, it seems. Oh, and Control -D works.

00:42:05.179 --> 00:42:09.980
Yeah. Oh, yeah. Like all of your Vim movement

00:42:09.980 --> 00:42:13.079
commands, it's all the same. You hit I, that's

00:42:13.079 --> 00:42:16.360
your input. Yeah, so you could type exactly.

00:42:16.940 --> 00:42:19.400
Oh, okay. And then escape is to get out of it.

00:42:19.710 --> 00:42:23.550
yeah okay how do i you said that yeah you wanted

00:42:23.550 --> 00:42:26.530
to do kj right yeah kj yeah because that's what

00:42:26.530 --> 00:42:30.829
i'm used to yeah let's uh let's add it let's

00:42:30.829 --> 00:42:32.650
see because this is what i this is what i used

00:42:32.650 --> 00:42:35.429
to do too oh yeah what do you do you do escape

00:42:35.429 --> 00:42:40.070
to exit out of um because i use uh yeah so i

00:42:40.070 --> 00:42:43.650
use a pretty similar um keyboard to you i use

00:42:43.650 --> 00:42:47.170
a chalkify you have a glove 80 there um so literally

00:42:47.170 --> 00:42:51.000
my right thumb Underneath my right thumb is escape.

00:42:51.719 --> 00:42:54.599
Okay. Oh, I see. So that, yeah, that's even easier

00:42:54.599 --> 00:42:57.900
for me than doing KJ. But here, if you wanted

00:42:57.900 --> 00:43:02.780
to add KJ to your configuration, this is the,

00:43:02.920 --> 00:43:06.579
I'll send it to you in Discord here. This is

00:43:06.579 --> 00:43:09.119
the thing that you'll add to your config and

00:43:09.119 --> 00:43:13.179
we'll add it to your config together. Okay. So

00:43:13.179 --> 00:43:15.860
that's some Lua, or sorry, not Lua, Lisp. That's

00:43:15.860 --> 00:43:19.150
some Lisp. okay that's lisp okay so after evil

00:43:19.150 --> 00:43:23.329
that that stuff right yeah so let's go to type

00:43:23.329 --> 00:43:28.090
space fp okay here i'm just in this file space

00:43:28.090 --> 00:43:32.250
fp okay yeah that actually goes directly to your

00:43:32.250 --> 00:43:35.349
doom config so like it's kind of a shortcut that

00:43:35.349 --> 00:43:37.230
you can enter anywhere in your file system it'll

00:43:37.230 --> 00:43:40.070
bring you to your doom config okay how do i close

00:43:40.070 --> 00:43:42.329
the little window that is up there the arrow

00:43:42.329 --> 00:43:46.280
how do i navigate between these panes Ah, so

00:43:46.280 --> 00:43:48.420
that'll also be something that you could configure.

00:43:48.920 --> 00:43:53.840
I personally like control arrow. Well, I do control

00:43:53.840 --> 00:43:59.059
K, J, H, and L. Yes, yes. So you could do that

00:43:59.059 --> 00:44:01.940
as well. We could add that as well to your configuration.

00:44:02.019 --> 00:44:04.940
It's something that I have in mind. Right now,

00:44:05.000 --> 00:44:07.480
you could literally just click on the window

00:44:07.480 --> 00:44:09.679
that you want to close. So you want to close

00:44:09.679 --> 00:44:13.219
the error window, I assume, right? Yep. Yeah,

00:44:13.260 --> 00:44:19.659
click on that. and type space wd space wd oh

00:44:19.659 --> 00:44:22.420
that's the way that i do it in neovim as well

00:44:22.420 --> 00:44:24.900
i guess okay yeah i don't know where the inspiration

00:44:24.900 --> 00:44:28.159
come came from but that's the way it's done i

00:44:28.159 --> 00:44:30.320
think there's some overlap for sure so that's

00:44:30.320 --> 00:44:32.239
that's the way that you can do it um you can

00:44:32.239 --> 00:44:33.840
obviously configure that however you want it

00:44:33.840 --> 00:44:37.960
as well so let's go to your config .el oh hold

00:44:37.960 --> 00:44:42.739
on here and is there a way because when i open

00:44:44.819 --> 00:44:51.260
When I'm looking for files, I don't use the arrows

00:44:51.260 --> 00:44:54.059
usually. Because when I open this, you know,

00:44:54.059 --> 00:44:57.440
file picker or whatever it is, I started in normal

00:44:57.440 --> 00:45:01.239
mode in any of them. So I can just use, it doesn't

00:45:01.239 --> 00:45:04.320
matter, right? No, if you want to use, if you

00:45:04.320 --> 00:45:07.260
want to do HJKL, just hit control and then HJKL.

00:45:07.679 --> 00:45:11.340
Control. Okay. I see. Okay. But you don't have

00:45:11.340 --> 00:45:13.360
like something like modes, for example. Let me

00:45:13.360 --> 00:45:18.320
just. quickly jump here and I open this, right?

00:45:18.480 --> 00:45:22.860
This is the file picker. Or if I, if I open my

00:45:22.860 --> 00:45:26.280
buffers, the buffers that I have opened, notice

00:45:26.280 --> 00:45:29.480
that I'm in normal mode directly. So I just type

00:45:29.480 --> 00:45:34.320
J and I can go down or, or up. Or if I'm in this

00:45:34.320 --> 00:45:37.639
file picker, I just jump into normal mode real

00:45:37.639 --> 00:45:41.679
quick and I can go up and down with the J and

00:45:41.679 --> 00:45:45.670
K. it doesn't matter i'm sure there's yeah i'm

00:45:45.670 --> 00:45:48.369
sure there's a way to configure it i personally

00:45:48.369 --> 00:45:50.889
because i use like a 36 keyboard i literally

00:45:50.889 --> 00:45:54.510
just use like the arrows underneath my hjkl fingers

00:45:54.510 --> 00:45:57.630
okay um but there's i'm sure there's a way to

00:45:57.630 --> 00:45:59.869
configure it i'm not totally familiar with it

00:45:59.869 --> 00:46:01.610
but we could absolutely figure that one out so

00:46:01.610 --> 00:46:04.510
if you go to your config .yell okay um but for

00:46:04.510 --> 00:46:07.570
for right now it's control hjkl okay this is

00:46:07.570 --> 00:46:09.730
your this is your big config file like literally

00:46:09.730 --> 00:46:13.599
this is what you would edit to change the behavior

00:46:13.599 --> 00:46:17.739
of Emacs. So if you hit, let's go capital G,

00:46:17.800 --> 00:46:21.059
you just go to the bottom. Okay. And then if

00:46:21.059 --> 00:46:23.099
you paste that thing that I sent in Discord into

00:46:23.099 --> 00:46:25.860
you. Let me see if I don't have any sensitive

00:46:25.860 --> 00:46:29.440
information here. And I don't, so I don't need

00:46:29.440 --> 00:46:33.530
to edit this. All right, I just pasted it. yeah

00:46:33.530 --> 00:46:36.909
and then escape and then now to load that here's

00:46:36.909 --> 00:46:38.769
the thing about emacs is that you can actually

00:46:38.769 --> 00:46:41.610
load this as soon as you put it into your configuration

00:46:41.610 --> 00:46:46.550
so for doom that's space space r h r r space

00:46:46.550 --> 00:46:51.530
h r r hold on hold on so all of that space space

00:46:51.530 --> 00:46:58.619
what space h uh -huh space h yeah and then you'll

00:46:58.619 --> 00:47:02.199
see that this is your self -documenting uh what

00:47:02.199 --> 00:47:04.739
do they call this again oh yeah that's which

00:47:04.739 --> 00:47:07.760
key this is which key okay yeah so so which key

00:47:07.760 --> 00:47:11.400
will pop up now hit r and what is this one called

00:47:11.400 --> 00:47:14.199
is it also called which key or is it something

00:47:14.199 --> 00:47:17.039
i believe it is which key i want to say i think

00:47:17.039 --> 00:47:20.699
it is still which key yes and then r if for reload

00:47:20.699 --> 00:47:24.300
r okay and then you'll hit and then you'll see

00:47:24.880 --> 00:47:27.219
R again is doom slash reload. That will just

00:47:27.219 --> 00:47:29.900
reload your configuration. Do I type R again?

00:47:30.719 --> 00:47:33.960
Yes. That reloads your configuration. Now, if

00:47:33.960 --> 00:47:38.260
you go into editing mode and hit KJ, it should

00:47:38.260 --> 00:47:42.159
actually escape for you. No, it didn't. Oh, it

00:47:42.159 --> 00:47:45.639
did. But I guess the delay might be too slow.

00:47:46.099 --> 00:47:50.980
Yeah. OK, then you change. You're too slow or

00:47:50.980 --> 00:47:53.519
the delay is too slow. Let me see. Let me see.

00:47:53.949 --> 00:47:58.130
if i type it slower it doesn't work let me try

00:47:58.130 --> 00:48:03.150
it faster well it has to be almost at the same

00:48:03.150 --> 00:48:11.289
time let me see i guess i guess this is too fast

00:48:11.289 --> 00:48:13.650
for me maybe that escape delay would that be

00:48:13.650 --> 00:48:16.650
it okay yeah maybe maybe we take it down to like

00:48:16.650 --> 00:48:23.429
0 .5 let's see okay so it was then Space. Yeah.

00:48:23.449 --> 00:48:29.690
And then HRR. HRR. You got it. Got it. Okay.

00:48:29.769 --> 00:48:33.269
So notice that after reloading that, if I type

00:48:33.269 --> 00:48:36.650
KJ, it doesn't work. Right. But let me show you

00:48:36.650 --> 00:48:39.190
something. Let me show you something. If I type

00:48:39.190 --> 00:48:44.670
JK, it works. And I don't know why. That is weird.

00:48:45.110 --> 00:48:49.909
Okay. Weird. But I can invert these, I guess.

00:48:50.070 --> 00:48:57.440
Right. So. I can put it here as JK. Let me reload

00:48:57.440 --> 00:49:06.920
and see what happens. It's space HRR. Well, that's

00:49:06.920 --> 00:49:12.119
strange. That is so strange. I know that it works

00:49:12.119 --> 00:49:14.360
because I've definitely done it myself. So for

00:49:14.360 --> 00:49:18.539
some reason, that is weird. Yeah, it works if

00:49:18.539 --> 00:49:23.099
I do JK. JK. That's so weird. Yeah, but it doesn't

00:49:23.099 --> 00:49:26.199
matter. I can figure that out in a different

00:49:26.199 --> 00:49:29.719
time. That's fine. But at least they know that

00:49:29.719 --> 00:49:31.599
it's possible. You have done it, you know, so

00:49:31.599 --> 00:49:34.780
that works for me. What else? Oh, totally. Yeah.

00:49:34.880 --> 00:49:37.480
What else should I do? What else do you recommend

00:49:37.480 --> 00:49:41.260
doing here? You want to go to my config? Yep.

00:49:41.280 --> 00:49:44.130
I'll show you. Just go to my screen and I'll

00:49:44.130 --> 00:49:45.969
kind of show you what I've got here. All right.

00:49:45.989 --> 00:49:49.750
Let me switch there. Okay. I mean, you can change

00:49:49.750 --> 00:49:52.750
your fonts. So like if you want to do your, you

00:49:52.750 --> 00:49:56.250
probably use, what do you use? JetBrains Mono.

00:49:57.030 --> 00:49:59.449
Yeah, yeah. Oh, yeah. You can add that here to

00:49:59.449 --> 00:50:03.699
your fonts. Very simple. theming so like if you

00:50:03.699 --> 00:50:05.860
don't like the default theme you can actually

00:50:05.860 --> 00:50:08.739
switch the theme in do me max with i think it's

00:50:08.739 --> 00:50:12.679
space ht i want to say yeah space ht and you

00:50:12.679 --> 00:50:15.000
can literally go through all these built -in

00:50:15.000 --> 00:50:17.579
different themes oh my goodness white you see

00:50:17.579 --> 00:50:20.199
all that i like i like nord nord is kind of my

00:50:20.199 --> 00:50:23.599
like go -to but for other people you can change

00:50:23.599 --> 00:50:26.559
they have like gazillion different built -in

00:50:26.559 --> 00:50:29.199
themes so that's kind of nice and these little

00:50:29.199 --> 00:50:31.760
configs that you're showing there where do you

00:50:31.760 --> 00:50:33.719
add them do you add them in the same file that

00:50:33.719 --> 00:50:36.980
i was working on config config .el you got it

00:50:36.980 --> 00:50:39.900
so you just copy these like code blocks and just

00:50:39.900 --> 00:50:43.340
paste them there you would copy essentially this

00:50:43.340 --> 00:50:46.619
this whole so don't yeah yeah don't copy the

00:50:46.619 --> 00:50:50.739
begin elisp thing but copy the uh copy the the

00:50:50.739 --> 00:50:54.110
lisp inside of it and that would be how you would

00:50:54.110 --> 00:50:56.250
yeah this is on my blog too if you want to link

00:50:56.250 --> 00:50:59.710
to my blog i can yeah i will what's the if you

00:50:59.710 --> 00:51:01.309
can open it since you're sharing your screen

00:51:01.309 --> 00:51:03.829
right now i think it would be easier if you can

00:51:03.829 --> 00:51:07.050
open your blog there and i'm going oh sure um

00:51:07.050 --> 00:51:09.570
leave it in the video description as well if

00:51:09.570 --> 00:51:12.369
you can send it to me as well yep my blog is

00:51:12.369 --> 00:51:15.150
just joshplays .com and then uh one of my more

00:51:15.150 --> 00:51:18.250
recent posts was my literate doom config so i'll

00:51:18.250 --> 00:51:23.119
just send you this link here okay great yep So

00:51:23.119 --> 00:51:25.460
that's what we're looking at in Emacs on your

00:51:25.460 --> 00:51:28.099
screen right now, correct? You got it. Yeah.

00:51:29.099 --> 00:51:31.860
Yeah, we're looking at essentially the configuration

00:51:31.860 --> 00:51:37.440
that I copy pasted to the blog article. Okay,

00:51:37.599 --> 00:51:40.400
great. Yep. So like, I don't want to go through

00:51:40.400 --> 00:51:42.079
the whole configuration because it is probably

00:51:42.079 --> 00:51:46.199
like... yeah it's too much yeah 1700 lines but

00:51:46.199 --> 00:51:48.760
stuff that i would think that are kind of important

00:51:48.760 --> 00:51:51.480
is i mean if you like transparency you can add

00:51:51.480 --> 00:51:55.920
that very easily um you can change the emacs

00:51:55.920 --> 00:51:58.920
application itself so i can see through it you

00:51:58.920 --> 00:52:01.659
got it um because i think in i think in your

00:52:01.659 --> 00:52:04.130
terminal you even have Yeah, you definitely have

00:52:04.130 --> 00:52:06.510
some transparency. So you could add that very

00:52:06.510 --> 00:52:10.449
easily. You can change how lines wrap. This is

00:52:10.449 --> 00:52:12.389
a nice one here is that you can actually change

00:52:12.389 --> 00:52:16.929
how files delete. So if you delete a file, they

00:52:16.929 --> 00:52:18.730
actually go to the trash instead of completely

00:52:18.730 --> 00:52:24.630
gone forever, which is nice. This is some optimization

00:52:24.630 --> 00:52:27.449
stuff. Like obviously this is like a couple of

00:52:27.449 --> 00:52:31.750
years of me using Emacs. You just find this stuff

00:52:31.750 --> 00:52:33.809
on the internet and add it to your configuration.

00:52:35.130 --> 00:52:39.909
You can change your splash screen, how Zen appears.

00:52:40.110 --> 00:52:42.670
So like this right room mode that I'm currently

00:52:42.670 --> 00:52:45.429
in so that you can see my screen better is called

00:52:45.429 --> 00:52:48.730
Zen mode. So you can just go into that. I'm sure

00:52:48.730 --> 00:52:52.909
you're familiar with that for NeoVim if you write

00:52:52.909 --> 00:52:56.230
a lot in it. I don't use Zen mode. I just...

00:52:56.829 --> 00:52:59.050
What I do is that I fold my headings and that's

00:52:59.050 --> 00:53:00.449
what I'm going to ask you. I'm just going to

00:53:00.449 --> 00:53:03.269
add it here so that I don't forget old things.

00:53:04.369 --> 00:53:09.789
Old headings. Okay. Yeah. Go on. Uh, yeah. And

00:53:09.789 --> 00:53:11.750
then the, which key speed up because I like it

00:53:11.750 --> 00:53:13.510
pretty quick. Like I just want to see what stuff

00:53:13.510 --> 00:53:16.010
is coming up. You can change that very easily.

00:53:16.489 --> 00:53:19.010
Uh, completion's a big thing because you obviously

00:53:19.010 --> 00:53:22.809
want to be able to have automated completions

00:53:22.809 --> 00:53:29.389
and how, um, your file like for example i use

00:53:29.389 --> 00:53:32.289
vertigo which is this at the bottom of my screen

00:53:32.289 --> 00:53:35.409
this is uh how i go through my file finder and

00:53:35.409 --> 00:53:38.829
everything and it also like it just kind of limits

00:53:38.829 --> 00:53:43.590
things down when i type them uh this is all essentially

00:53:43.590 --> 00:53:47.369
that file editor setup that i have like all in

00:53:47.369 --> 00:53:52.059
this code block here okay uh company is like

00:53:52.059 --> 00:53:54.219
the completion yes i mentioned that good that

00:53:54.219 --> 00:53:56.159
you mentioned that i noticed that you had some

00:53:56.159 --> 00:53:59.300
words do you have like a dictionary like i guess

00:53:59.300 --> 00:54:02.019
you can add a dictionary since you wrote a book

00:54:02.019 --> 00:54:06.000
with that i guess you do add a dictionary yeah

00:54:06.000 --> 00:54:10.360
so um i believe it's a spell is the package or

00:54:10.360 --> 00:54:15.239
is it uh spelling let me see here and have you

00:54:15.239 --> 00:54:17.900
heard about harper have you heard about harper

00:54:18.239 --> 00:54:20.780
Yeah, it's a language server. It's like a Grammarly

00:54:20.780 --> 00:54:22.800
alternative for Neovim. I don't know if you've

00:54:22.800 --> 00:54:26.639
heard about it. I have not. Well, it's not for

00:54:26.639 --> 00:54:28.619
Neovim only. The good thing is that it's for

00:54:28.619 --> 00:54:33.300
Emacs as well. Okay. Obsidian, a lot of different

00:54:33.300 --> 00:54:38.099
tools, right? VS Code, even. I'll show you around

00:54:38.099 --> 00:54:42.820
in a little while. Oh, no, for sure. In my store,

00:54:42.960 --> 00:54:47.480
for example, I have a dictionary, and it's...

00:54:47.880 --> 00:54:51.280
Like it's fully, I essentially, whenever I'm

00:54:51.280 --> 00:54:54.320
starting a new system, I, I, uh, I bring this

00:54:54.320 --> 00:54:57.199
dictionary over. So it just has all of my default

00:54:57.199 --> 00:55:00.340
dictionary stuff. Um, all of the words that I've

00:55:00.340 --> 00:55:03.360
added. Okay. So that they, they don't come down

00:55:03.360 --> 00:55:08.900
as a misspelled or whatever. Um, org mode set

00:55:08.900 --> 00:55:12.420
up org agenda, the way that you can, so like

00:55:12.420 --> 00:55:15.590
calendar and stuff. Yeah. So there's like just

00:55:15.590 --> 00:55:18.510
a gazillion things you could do with this. I'm

00:55:18.510 --> 00:55:20.469
trying to think, like, is there any like thing

00:55:20.469 --> 00:55:24.190
that comes up that you would want immediately

00:55:24.190 --> 00:55:27.650
in your editor? Yep. Yep. Let me show you what

00:55:27.650 --> 00:55:32.389
I spend most of my time on. Let me switch to

00:55:32.389 --> 00:55:36.690
my screen. Okay. For example, this is my blog

00:55:36.690 --> 00:55:42.440
post. And I love. folding headings right i can

00:55:42.440 --> 00:55:45.440
unfold everything because i cannot do this in

00:55:45.440 --> 00:55:49.639
obsidian so i thought i like navigating my documents

00:55:49.639 --> 00:55:53.840
using this thing here a lot right so yeah let's

00:55:53.840 --> 00:55:55.800
say that it's a big file let's say that this

00:55:55.800 --> 00:56:00.099
glove 80 file right so you know this is nice

00:56:00.099 --> 00:56:03.039
you get this in obsidian i can navigate through

00:56:03.039 --> 00:56:06.179
different headings like this but i just find

00:56:06.179 --> 00:56:09.599
it more effective i got used to it already doing

00:56:09.599 --> 00:56:12.460
it through folds, right? So I can unfold all

00:56:12.460 --> 00:56:15.659
the headings, all the text is there, right? Nowadays,

00:56:15.719 --> 00:56:18.079
you can even view images in U of M. So it's becoming

00:56:18.079 --> 00:56:21.380
like Emacs, sort of. Yeah, yeah, absolutely.

00:56:22.159 --> 00:56:24.739
So this is one of the - That was probably because

00:56:24.739 --> 00:56:27.780
of the, that's because of the terminal you're

00:56:27.780 --> 00:56:30.179
using. Yeah, because of the terminal, I'm using

00:56:30.179 --> 00:56:34.579
Ghosty supported, Kitty, and Western as well,

00:56:34.739 --> 00:56:40.130
right? Yes, yeah. But that's - some of the main

00:56:40.130 --> 00:56:43.250
ones i i just like folding everything and navigating

00:56:43.250 --> 00:56:46.849
my files this way i i just if i want to go into

00:56:46.849 --> 00:56:49.909
a heading i just hit enter or if i hit enter

00:56:49.909 --> 00:56:54.989
again to to fold it fold or unfold right so i

00:56:54.989 --> 00:56:58.429
guess i i don't expect you to have the answer

00:56:58.429 --> 00:57:01.090
for this right now but is it doable can you do

00:57:01.090 --> 00:57:04.809
that in emacs i would assume yes because like

00:57:04.809 --> 00:57:07.829
if you go over to my screen for example in org

00:57:07.829 --> 00:57:10.800
mode I'm sure there's a way to fold headings

00:57:10.800 --> 00:57:13.880
in Markdown as well. But if you look at my screen,

00:57:14.000 --> 00:57:15.820
I'm literally just hitting tab. Hold on. It's

00:57:15.820 --> 00:57:20.360
just folding. Let me go there. Yeah. Okay. There.

00:57:21.159 --> 00:57:23.519
Just like that, right? Like that's just closing

00:57:23.519 --> 00:57:27.519
a heading right there. Okay. With tab, you just

00:57:27.519 --> 00:57:32.239
fold a heading. Yeah. Okay. But I have a key

00:57:32.239 --> 00:57:35.960
map, right? So if I type ZK. it's going to fold

00:57:35.960 --> 00:57:39.719
all my level two headings, right? So if I type

00:57:39.719 --> 00:57:43.340
ZL, it's gonna fold all the level three headings,

00:57:43.480 --> 00:57:45.119
right? So I'm gonna be able to see level two

00:57:45.119 --> 00:57:48.920
and level three headings. I guess that's something

00:57:48.920 --> 00:57:52.340
that could be configured in Emacs, right? Absolutely.

00:57:52.420 --> 00:57:56.619
Oh, totally. Okay. Well, that's - I personally

00:57:56.619 --> 00:57:59.199
don't, yeah, I don't use that as much because

00:57:59.199 --> 00:58:01.420
usually when I'm programming, that's when I would

00:58:01.420 --> 00:58:05.820
fold. They allow that in, in any sort of lsp

00:58:05.820 --> 00:58:08.059
right so like you have a function and you want

00:58:08.059 --> 00:58:09.860
to just fold up the function because you're working

00:58:09.860 --> 00:58:14.400
on a like a thousand line uh programming file

00:58:14.400 --> 00:58:18.079
like a right so you would essentially fold up

00:58:18.079 --> 00:58:21.780
that function you can fold inside the function

00:58:21.780 --> 00:58:25.760
etc okay yeah yeah it's it's all included for

00:58:25.760 --> 00:58:29.500
sure okay great yeah that's i spend most of my

00:58:29.500 --> 00:58:32.539
day in markdown bash scripts you know but i don't

00:58:32.539 --> 00:58:35.650
need too much out of them Markdown is what I

00:58:35.650 --> 00:58:39.750
have specialized my config in, you know, view

00:58:39.750 --> 00:58:43.150
images, folds, and the way that I format them.

00:58:43.269 --> 00:58:45.750
Let me show you Harper real quick so that you

00:58:45.750 --> 00:58:48.150
understand. And maybe, you know, if you could,

00:58:48.309 --> 00:58:50.670
I don't know, maybe a video idea or something

00:58:50.670 --> 00:58:54.329
of you testing out Harper, seeing if you find

00:58:54.329 --> 00:58:56.389
it useful or not. Let me show it to you real

00:58:56.389 --> 00:59:00.110
quick. So you tell me how you do that in Emacs

00:59:00.110 --> 00:59:03.489
at the moment. Or if you maybe don't do it right.

00:59:03.809 --> 00:59:06.550
So I have this file open. Let me show you Harper

00:59:06.550 --> 00:59:08.809
real quick. Let me show you what it does so you

00:59:08.809 --> 00:59:39.900
can just tell me how you do this. Right. So I

00:59:39.900 --> 00:59:44.800
just typed all this text. Right. And notice that

00:59:44.800 --> 00:59:47.800
I get a lot of. Oh, that's kind of cool. A lot

00:59:47.800 --> 00:59:49.739
of warnings there. Let me let me keep typing

00:59:49.739 --> 00:59:53.760
something else. Some more text here and more

00:59:53.760 --> 00:59:57.679
text and more text until it's a run on sentence

00:59:57.679 --> 01:00:00.360
or something. Yeah. So notice that it's telling

01:00:00.360 --> 01:00:04.019
me this sentence is 46 words long. It doesn't

01:00:04.019 --> 01:00:07.119
like that. Right. So let me just fix them real

01:00:07.119 --> 01:00:10.699
quick. I just. fix that capital letter that it

01:00:10.699 --> 01:00:14.440
was talking about if i jump to the next diagnostic

01:00:14.440 --> 01:00:18.440
it tells me try avoid offensive language you

01:00:18.440 --> 01:00:21.599
can configure all these rules of course right

01:00:21.599 --> 01:00:24.300
so that's just cool man i have no idea about

01:00:24.300 --> 01:00:29.579
this yeah i just deleted that and um did you

01:00:29.579 --> 01:00:32.579
mean to spell harper this way it expects it to

01:00:32.579 --> 01:00:36.000
be with capital letter right so i just fixed

01:00:36.000 --> 01:00:40.860
that and um what else 45 words long. Just going

01:00:40.860 --> 01:00:43.400
to put a period there, just a dot. It's going

01:00:43.400 --> 01:00:46.699
to complain about this lowercase letter. And

01:00:46.699 --> 01:00:51.260
there we go. So it helps me write better, right?

01:00:51.340 --> 01:00:56.320
And it's not a NeoVim thing. It's not a Emacs.

01:00:56.539 --> 01:00:59.000
It's just a language server that you can install

01:00:59.000 --> 01:01:04.079
in multiple editors, right? Even in VS Code,

01:01:04.320 --> 01:01:07.769
even in WordPress. Or even in your code, it seems,

01:01:08.030 --> 01:01:11.190
right? So that's very cool. Do you have something

01:01:11.190 --> 01:01:14.210
like this? I haven't done this in the oven before

01:01:14.210 --> 01:01:17.030
till I met Harper. I wanted to do it. I wanted

01:01:17.030 --> 01:01:22.250
to find like a Grammarly alternative, but I didn't

01:01:22.250 --> 01:01:24.769
know about that one till this one. And the good

01:01:24.769 --> 01:01:27.349
thing is that it's for multiple tools. So what

01:01:27.349 --> 01:01:31.769
do you do in that case? I've never wrote like

01:01:31.769 --> 01:01:33.289
that, to be honest with you. I just have like

01:01:33.289 --> 01:01:37.500
essentially a dictionary for... um i have a dictionary

01:01:37.500 --> 01:01:41.920
that will do my spell checking for me um i also

01:01:41.920 --> 01:01:45.480
have like a built -in let me let me go here uh

01:01:45.480 --> 01:01:48.320
i have something built in that'll do like uh

01:01:48.320 --> 01:01:53.400
thesauruses so like if i wanted to um change

01:01:53.400 --> 01:01:58.000
a word at the point that i'm in i can go space

01:01:58.000 --> 01:02:00.239
wt that's just something that i've written and

01:02:00.239 --> 01:02:02.659
it will go through different words that i could

01:02:02.659 --> 01:02:07.440
use um in exchange for that word but no like

01:02:07.440 --> 01:02:10.679
that's that's pretty cool i i've not i've never

01:02:10.679 --> 01:02:14.840
wrote to that like with that much assistance

01:02:14.840 --> 01:02:17.019
that's that's pretty cool because it would actually

01:02:17.019 --> 01:02:20.039
that would be super helpful in a lot of cases

01:02:20.039 --> 01:02:23.699
when you're writing and you're like this actually

01:02:24.570 --> 01:02:28.210
I could format this so much better. No, I'm actually

01:02:28.210 --> 01:02:30.110
going to steal this from you because I'm looking

01:02:30.110 --> 01:02:31.949
at the Harper dictionary, or not the dictionary,

01:02:32.110 --> 01:02:34.329
but the documentation right here. Yeah. And it's

01:02:34.329 --> 01:02:37.489
showing me that all I have to do is have this

01:02:37.489 --> 01:02:43.969
package installed. And then it's an EGLOT plugin,

01:02:44.150 --> 01:02:46.250
looks like. It's using the language server protocol

01:02:46.250 --> 01:02:52.289
through EGLOT. And no, that makes... i'd like

01:02:52.289 --> 01:02:54.630
to see how it works in emacs you know so if you

01:02:54.630 --> 01:02:58.250
can if you're gonna release a video or something

01:02:58.250 --> 01:03:01.969
on that i will for sure check it out okay i'll

01:03:01.969 --> 01:03:03.949
uh i'll make a note of this go to my screen for

01:03:03.949 --> 01:03:05.110
a second i'm going to show you something cool

01:03:05.110 --> 01:03:07.030
yep i'm on your screen right now we're looking

01:03:07.030 --> 01:03:09.789
at your screen okay so i'm going to copy this

01:03:09.789 --> 01:03:13.710
uh url and i'm gonna i have a hot key in my system

01:03:13.710 --> 01:03:16.849
that's actually just going to make a to do for

01:03:16.849 --> 01:03:22.150
that okay so I just pressed control shift C for

01:03:22.150 --> 01:03:24.889
capture. That's going to bring me to a to -do.

01:03:25.409 --> 01:03:29.909
And then I'm going to say, make video about Harper.

01:03:30.710 --> 01:03:34.309
Okay. Okay. And I'm going to paste that URL in

01:03:34.309 --> 01:03:36.610
there. And I'm just going to say, this is a video

01:03:36.610 --> 01:03:41.369
idea. So it's a video tag. Okay. Now you're pressed

01:03:41.369 --> 01:03:43.730
control C, control C. That's going to be captured

01:03:43.730 --> 01:03:47.730
into my to -dos for my project management. So

01:03:47.730 --> 01:03:50.469
if I want to see what I need to do on any daily

01:03:50.469 --> 01:03:55.030
basis, I just go into that file, find that capture

01:03:55.030 --> 01:03:57.369
and start working on it right then and there.

01:03:57.789 --> 01:04:01.250
Oh, so it created a file. It's an org mode file

01:04:01.250 --> 01:04:05.150
that you created? It didn't create the file because

01:04:05.150 --> 01:04:07.349
the file already exists. All it did was append

01:04:07.349 --> 01:04:12.250
that to do to the beginning of that list in the

01:04:12.250 --> 01:04:15.780
file. Okay. And that's how you manage tasks.

01:04:16.079 --> 01:04:19.940
How do you manage tasks? Exactly. Yeah, that's

01:04:19.940 --> 01:04:21.940
exactly how I manage tasks. So every single time

01:04:21.940 --> 01:04:24.019
I have something that comes up that I need to

01:04:24.019 --> 01:04:27.960
do, I just capture it in a buffer. And then I

01:04:27.960 --> 01:04:32.260
go into that file at any given day. I have it

01:04:32.260 --> 01:04:37.739
in my inbox right here. And this is my to -dos.

01:04:38.440 --> 01:04:42.480
Okay, okay. So there you go. So they end up in

01:04:42.480 --> 01:04:47.119
your inbox. Yep. And then if I have like a event,

01:04:47.300 --> 01:04:49.480
right? So I have this podcast right now that

01:04:49.480 --> 01:04:52.960
we're working on right now. That is what's actually

01:04:52.960 --> 01:04:55.619
in progress. There you go. So like these are

01:04:55.619 --> 01:04:58.760
actually all in my calendar because they're events

01:04:58.760 --> 01:05:03.199
that have to be like there's a time specific

01:05:03.199 --> 01:05:07.780
time sensitivity to them. So that goes into my

01:05:07.780 --> 01:05:10.519
calendar. And then my projects, which is like

01:05:10.519 --> 01:05:12.500
everything that I'm working on is in a projects.

01:05:13.210 --> 01:05:15.309
I won't open that because there's just a bunch

01:05:15.309 --> 01:05:18.469
of personal stuff in there. Yeah. So that's how

01:05:18.469 --> 01:05:22.849
I manage most of my to -dos. And it's very easy

01:05:22.849 --> 01:05:25.050
because anywhere on my system, I could be like,

01:05:25.090 --> 01:05:27.389
I need to capture this because this is pertinent,

01:05:27.449 --> 01:05:30.429
this URL. All I do is just control C that and

01:05:30.429 --> 01:05:35.090
then put it into a capture. Okay. And that automatically,

01:05:35.750 --> 01:05:38.489
you can grab all of those on your inbox, right?

01:05:39.369 --> 01:05:42.070
Yes. In your inbox. What is it? Is it just an

01:05:42.070 --> 01:05:47.050
org mode file? You got it. Nice. Nice. Let me

01:05:47.050 --> 01:05:49.730
show you how I do. Well, I'm not organized. You

01:05:49.730 --> 01:05:52.869
know, that's the... Neither am I. I want to say

01:05:52.869 --> 01:05:56.389
I am, but I'm not. Let me show you what I do.

01:05:56.610 --> 01:05:59.150
Let me show you what I do. Go for it. I guess

01:05:59.150 --> 01:06:02.590
you can see my screen, right? Yep. I have a key

01:06:02.590 --> 01:06:06.409
map here. If I type hyper TR, I use key maps

01:06:06.409 --> 01:06:10.880
a lot, man. To navigate TMAX sessions. You know,

01:06:10.880 --> 01:06:13.940
if I need to go to my daily note, I like this

01:06:13.940 --> 01:06:16.099
because it doesn't matter if I'm on the browser,

01:06:16.260 --> 01:06:18.940
right? I'm on your, well, no. Where's your blog?

01:06:19.679 --> 01:06:21.739
That was my blog. Oh, this is your blog. Okay.

01:06:21.800 --> 01:06:25.460
So if I'm there and if I type HyperTR, it doesn't

01:06:25.460 --> 01:06:27.179
matter that I'm there. It's going to take me

01:06:27.179 --> 01:06:29.800
to the terminal and it's going to take me to

01:06:29.800 --> 01:06:33.719
this note. It will create a TMAX session, right?

01:06:33.780 --> 01:06:37.360
So if I look at the sessions here. It doesn't

01:06:37.360 --> 01:06:39.159
matter what day it is. It's going to create the

01:06:39.159 --> 01:06:40.860
team accession, and it's going to create this

01:06:40.860 --> 01:06:43.840
file with the name of the day and the date, of

01:06:43.840 --> 01:06:47.619
course. I can just write stuff here, right? If

01:06:47.619 --> 01:06:50.900
I type alt L, it's going to create a task, right?

01:06:52.300 --> 01:06:57.360
With Josh, for example, right? And that's how

01:06:57.360 --> 01:07:00.059
I usually do it here on this little app that

01:07:00.059 --> 01:07:01.840
I have on the right, which is NeoVim as well,

01:07:02.000 --> 01:07:09.860
right? So I have my to -do. thingy here which

01:07:09.860 --> 01:07:14.300
I never do right I just have them there and I

01:07:14.300 --> 01:07:17.179
never follow through you know I'm not of course

01:07:17.179 --> 01:07:20.739
yeah I just but I just keep them there at least

01:07:20.739 --> 01:07:23.780
I keep them there and I just remember about them

01:07:23.780 --> 01:07:26.929
and if I need to Because they're going to be

01:07:26.929 --> 01:07:29.730
scattered around different daily notes, right?

01:07:29.829 --> 01:07:32.750
So it's difficult to find them, right? So I usually

01:07:32.750 --> 01:07:35.130
keep them here on this little app on the right

01:07:35.130 --> 01:07:38.329
on Skitty Notes. But if I leave some of them

01:07:38.329 --> 01:07:41.650
scattered here around and I need to see them,

01:07:41.710 --> 01:07:45.329
for example, I used Witchkey in the past a lot,

01:07:45.449 --> 01:07:49.409
right? Which is similar to what you have in Emacs.

01:07:50.920 --> 01:07:54.159
Now I just bring up a picker here and I just

01:07:54.159 --> 01:07:58.480
search for tasks, for example, right? So search

01:07:58.480 --> 01:08:01.480
for incomplete tasks, right? So if I execute

01:08:01.480 --> 01:08:04.519
this, it's just going to show me the incomplete

01:08:04.519 --> 01:08:07.119
tasks. This is the only one that I have in this

01:08:07.119 --> 01:08:09.760
file, but I could add more, right? Let's say

01:08:09.760 --> 01:08:12.539
yesterday. I don't have anything yesterday. Good.

01:08:12.760 --> 01:08:17.300
I can create a new task, another task. And if

01:08:17.300 --> 01:08:22.090
I type leader TC, no. Leader TT is going to show

01:08:22.090 --> 01:08:24.210
me. And notice that they're in different files,

01:08:24.449 --> 01:08:28.890
right? These are not completed. So that's kind

01:08:28.890 --> 01:08:31.670
of what I do with tasks. I don't do it too much,

01:08:31.750 --> 01:08:35.189
but I just came up with this solution, you know.

01:08:35.369 --> 01:08:40.390
But I do see the benefit in Emacs, right? Because

01:08:40.390 --> 01:08:45.369
you keep everything in a single place. Well,

01:08:45.449 --> 01:08:48.439
why did you go back? Well, you can. You can do

01:08:48.439 --> 01:08:50.819
that in a single file in Emacs, but you could

01:08:50.819 --> 01:08:53.119
also do it through like a hundred different files.

01:08:53.479 --> 01:08:56.619
And all you have to do is add each of those files

01:08:56.619 --> 01:09:00.039
to your org agenda, they call it. And then in

01:09:00.039 --> 01:09:02.859
your org agenda, you can actually just pop up

01:09:02.859 --> 01:09:07.300
all of your to -dos, right? And that will actually

01:09:07.300 --> 01:09:09.760
show you like everything that you need to do

01:09:09.760 --> 01:09:13.399
for the future or for the past or tasks that

01:09:13.399 --> 01:09:16.140
you've missed and you need to follow up on because

01:09:16.140 --> 01:09:18.779
they're red, for example. These I have to do

01:09:18.779 --> 01:09:22.640
because they're past due, right? Okay. But those

01:09:22.640 --> 01:09:24.739
don't live in the same file. They live in a contacts.

01:09:24.819 --> 01:09:26.760
They live in a projects. They live in a calendar.

01:09:27.020 --> 01:09:29.979
And I also do like the daily journal thing too.

01:09:30.619 --> 01:09:34.199
And I can just add that journal to my org agenda

01:09:34.199 --> 01:09:37.180
and it will take in all of the tasks into that

01:09:37.180 --> 01:09:39.380
centralized place and say, oh, you need to do

01:09:39.380 --> 01:09:42.000
this. Oh, this is missing. I like your system

01:09:42.000 --> 01:09:43.460
though. I think that's a pretty cool system.

01:09:44.079 --> 01:09:46.420
But you don't have to add the file specifically

01:09:46.420 --> 01:09:49.680
to this, what is it, org agenda you said, right?

01:09:49.720 --> 01:09:52.319
You can add a path, right? It doesn't have to

01:09:52.319 --> 01:09:55.399
be specific files. It can be a path. As long

01:09:55.399 --> 01:09:57.319
as it's an org file, you can add it anywhere

01:09:57.319 --> 01:10:00.380
on your file system. Okay, but so that they end

01:10:00.380 --> 01:10:07.949
up in the main inbox? Yes. Not in the inbox,

01:10:08.170 --> 01:10:11.869
but it's something called org agenda. So it ends

01:10:11.869 --> 01:10:15.510
up in your agenda, which is amalgamated. It's

01:10:15.510 --> 01:10:18.989
not a file. It's actually pulling in all of the

01:10:18.989 --> 01:10:22.149
different files. And then you could actually

01:10:22.149 --> 01:10:25.750
go to the to -do or the task or the event or

01:10:25.750 --> 01:10:28.270
whatever. And you could actually hit enter on

01:10:28.270 --> 01:10:30.590
it and it'll take you to the file that's corresponding

01:10:30.590 --> 01:10:33.550
for it. So similar to what you have for a system.

01:10:34.029 --> 01:10:37.569
Okay, okay, I see. But you can add paths to this

01:10:37.569 --> 01:10:40.069
org agenda. It doesn't have to be just files,

01:10:40.189 --> 01:10:42.449
right? So I can add a path in which I have 100

01:10:42.449 --> 01:10:46.390
files, right? You could do that, yeah. Okay.

01:10:47.350 --> 01:10:49.489
Okay, yeah, because that's how my daily notes

01:10:49.489 --> 01:10:52.989
folder works. I have them separated by year,

01:10:53.090 --> 01:10:56.930
right? So I have year 2024, five, and then by

01:10:56.930 --> 01:11:01.829
month. And then inside there, I have each one

01:11:01.829 --> 01:11:04.890
of the files. or the data nodes. Right. Yep.

01:11:04.989 --> 01:11:08.210
You can do it with the file path as well because

01:11:08.210 --> 01:11:13.970
let's say your basic org directory has all of

01:11:13.970 --> 01:11:15.770
the files that you need in it. You can just add

01:11:15.770 --> 01:11:20.050
that file path and all of those files will be

01:11:20.050 --> 01:11:23.329
contained in it. Really, the beauty of it is

01:11:23.329 --> 01:11:28.850
that your work and your workflow, it can be completely

01:11:28.850 --> 01:11:31.880
tailored to what you need. So something that

01:11:31.880 --> 01:11:35.180
makes sense for you, but not for me and vice

01:11:35.180 --> 01:11:37.960
versa, you can integrate that into either of

01:11:37.960 --> 01:11:41.140
these systems and have it so that it's perfectly

01:11:41.140 --> 01:11:46.000
what you need. That's the beauty of using Vim

01:11:46.000 --> 01:11:50.260
or Emacs or whatever, is that it's very flexible,

01:11:50.439 --> 01:11:53.939
right? Yeah, I agree. And if you notice, just

01:11:53.939 --> 01:11:57.020
like you were saying right now. inspiration is

01:11:57.020 --> 01:11:59.859
all you need you know and ideas because notice

01:11:59.859 --> 01:12:03.819
how similar which key is in emacs and in neovim

01:12:03.819 --> 01:12:07.579
right so definitely someone grabbed the inspiration

01:12:07.579 --> 01:12:10.560
from one of the two tools and ported it to the

01:12:10.560 --> 01:12:14.279
other right so yep that's there's actually an

01:12:14.279 --> 01:12:19.500
org mode port in neovim too so like you can actually

01:12:19.500 --> 01:12:23.399
use org mode in neovim because people love it

01:12:23.689 --> 01:12:26.210
So they're like, I want org mode, but I don't

01:12:26.210 --> 01:12:31.729
use Emacs daily. So they ported it over. Now,

01:12:31.789 --> 01:12:35.430
I don't know how good or not good it is comparatively,

01:12:35.630 --> 01:12:39.390
but it is like a full -on port. Okay. We're looking

01:12:39.390 --> 01:12:42.189
at your screen right now, by the way. Yeah, no,

01:12:42.270 --> 01:12:45.310
no. I'm just looking it up for you. Envib org

01:12:45.310 --> 01:12:49.909
mode is the port. Okay, interesting. I've thought

01:12:49.909 --> 01:12:54.340
about org mode in NeoVim, but I'm like... I have

01:12:54.340 --> 01:12:59.220
spent months setting this up, so it would require

01:12:59.220 --> 01:13:05.100
me a lot of time to migrate to org mode. So I'm

01:13:05.100 --> 01:13:09.760
like, could be. I see the benefits of Emacs.

01:13:09.880 --> 01:13:14.039
I'll keep it in mind. I don't know. I don't know

01:13:14.039 --> 01:13:17.119
what I'll do, but it's good to look at how it

01:13:17.119 --> 01:13:20.420
works, what it's capable of. Management of tasks

01:13:20.420 --> 01:13:23.380
is a big one in Emacs, it seems, right? Like

01:13:23.380 --> 01:13:26.520
you can manage your life in Emacs. That's what

01:13:26.520 --> 01:13:29.779
it's designed to do, it seems, right? That's

01:13:29.779 --> 01:13:32.060
one of the killer apps for sure. Org mode is

01:13:32.060 --> 01:13:36.359
like one of the big reasons people start using

01:13:36.359 --> 01:13:39.800
Emacs and then see how Emacs is different and

01:13:39.800 --> 01:13:42.140
they start using it for a lot of different stuff

01:13:42.140 --> 01:13:44.680
too, right? Like you can manage your media, you

01:13:44.680 --> 01:13:49.420
can manage your like... This is my file picker.

01:13:49.420 --> 01:13:52.979
Same thing that you have. You can just go through

01:13:52.979 --> 01:13:55.199
and see files and everything. You can manage

01:13:55.199 --> 01:13:56.939
your files through Emacs. You can manage your

01:13:56.939 --> 01:13:59.159
music. You can play music through Emacs. You

01:13:59.159 --> 01:14:02.739
can do all of these different things. Do you

01:14:02.739 --> 01:14:07.199
do RSS stuff? No. Well, my blog does have an

01:14:07.199 --> 01:14:10.279
RSS, but I don't. Is that what you're talking

01:14:10.279 --> 01:14:14.409
about? yeah but like if you used rss for reading

01:14:14.409 --> 01:14:16.510
all of your feeds you can read all of your feeds

01:14:16.510 --> 01:14:19.310
in emacs you can do max okay okay you can do

01:14:19.310 --> 01:14:22.329
i you can do irc through uh emacs so if you want

01:14:22.329 --> 01:14:25.750
to do in uh if you want to like chat via internet

01:14:25.750 --> 01:14:30.189
relay a chat you can do it in emacs uh all of

01:14:30.189 --> 01:14:33.989
that different stuff interesting great wonderful

01:14:33.989 --> 01:14:39.710
okay so um i think i did have i i asked all the

01:14:39.710 --> 01:14:43.229
questions that i had about Emacs is, you know,

01:14:43.270 --> 01:14:45.350
we cannot cover all of this in a single video,

01:14:45.529 --> 01:14:47.470
but is there anything else that you would like

01:14:47.470 --> 01:14:52.310
to share with someone that is, you know, a NeoVim

01:14:52.310 --> 01:14:55.289
user and is thinking of trying Emacs? Are there

01:14:55.289 --> 01:14:59.329
any other? I would say, I would say just give

01:14:59.329 --> 01:15:02.069
it a shot and play around with it and see how

01:15:02.069 --> 01:15:07.300
you can replicate your workflow in Emacs. Try

01:15:07.300 --> 01:15:09.479
Doom Emacs if you're coming directly from Vim

01:15:09.479 --> 01:15:12.880
because you'll have a lot of the controls and

01:15:12.880 --> 01:15:17.060
everything will be pretty similar. And then you

01:15:17.060 --> 01:15:20.079
can kind of go from there and try to replicate

01:15:20.079 --> 01:15:24.380
your workflow and see where does it differ? Is

01:15:24.380 --> 01:15:26.800
this better? Is this not? And I mean, a lot of

01:15:26.800 --> 01:15:30.550
people use both of these apps a lot. A lot of

01:15:30.550 --> 01:15:32.489
people program in NeoVim and then they use all

01:15:32.489 --> 01:15:34.750
their task management in Emacs, like I was saying.

01:15:34.989 --> 01:15:38.149
So it's not like you have to use one or the other.

01:15:38.210 --> 01:15:40.710
You can use both at the same time and just see

01:15:40.710 --> 01:15:44.289
which one fills the need better for certain tasks.

01:15:45.369 --> 01:15:48.970
I am kind of a purist in that I try to do everything

01:15:48.970 --> 01:15:50.729
in Emacs, but you don't have to be like that.

01:15:50.869 --> 01:15:53.890
Absolutely. You know, I do like that idea because

01:15:53.890 --> 01:15:56.710
I don't think I'm moving away from my Markdown

01:15:56.710 --> 01:16:00.689
workflow, but, you know. If I want to manage

01:16:00.689 --> 01:16:04.649
my life, I would see myself probably doing it

01:16:04.649 --> 01:16:07.569
in Emacs because it's it's designed for that.

01:16:07.689 --> 01:16:12.010
Right. So it doesn't seem I can get started with

01:16:12.010 --> 01:16:14.729
that at least see if I like it or not. I don't

01:16:14.729 --> 01:16:16.989
like the theme, to be honest, but I guess you

01:16:16.989 --> 01:16:18.989
can create your own theme. Right. You can just

01:16:18.989 --> 01:16:22.130
you can. Yeah. Yeah. Your colors. Because I have

01:16:22.130 --> 01:16:24.250
my. Oh, yeah. You can change. Oh, yeah. You can

01:16:24.250 --> 01:16:27.260
change all of that out. Oh, okay. Interesting.

01:16:27.520 --> 01:16:29.520
People don't like my colors because they're too

01:16:29.520 --> 01:16:31.899
bright. They're too shiny and all that stuff.

01:16:32.239 --> 01:16:34.779
People don't like mine because they're too dull.

01:16:35.680 --> 01:16:41.079
Yeah. Yeah. Yeah. It's always that, you know,

01:16:41.119 --> 01:16:44.579
50 -50. 50 of the people are going to agree to

01:16:44.579 --> 01:16:46.840
something and the other half are not. So you

01:16:46.840 --> 01:16:50.640
cannot just please everyone. There's always someone

01:16:50.640 --> 01:16:52.779
that's going to complain about something always.

01:16:52.939 --> 01:16:55.539
But, you know. Oh, yeah. That's the way it is.

01:16:55.619 --> 01:16:58.920
So if everyone's still watching this, just remember

01:16:58.920 --> 01:17:03.000
to go and check out Josh's channel. Subscribe,

01:17:03.359 --> 01:17:07.920
like the video, and that's it. I'll see you in

01:17:07.920 --> 01:17:10.340
the next video. Thanks for having me on, man.

01:17:10.399 --> 01:17:12.520
It was awesome. Yeah, I'll see you.
