WEBVTT
00:00:00.080 --> 00:00:01.680
(Amin: ... for the list of questions in whatever
00:00:01.680 --> 00:00:03.520
order you like.)
00:00:03.520 --> 00:00:06.160
Okay, so I see what package is used,
00:00:06.160 --> 00:00:08.000
probably symex-mode...
00:00:08.000 --> 00:00:10.400
Right. So the main package that was
00:00:10.400 --> 00:00:11.360
being demoed,
00:00:11.360 --> 00:00:14.480
that is not yet on MELPA. In fact, I
00:00:14.480 --> 00:00:16.720
haven't even decided on a name for it.
00:00:16.720 --> 00:00:19.359
I've alternately called
00:00:19.359 --> 00:00:22.080
it epistemic-mode, I've called it
00:00:22.080 --> 00:00:26.000
england, I called it
00:00:26.000 --> 00:00:28.560
all kinds of things, but at the moment
00:00:28.560 --> 00:00:31.439
you can find it on my Github. There's a link
00:00:31.439 --> 00:00:32.960
in the presentation itself, if you go to
00:00:32.960 --> 00:00:35.600
https://github.com/countvajhula, you'll see
00:00:35.600 --> 00:00:38.879
the package there. It's currently
00:00:38.879 --> 00:00:39.840
named Indra, but
00:00:39.840 --> 00:00:42.879
I'm not sure. (Organizer: Package is
called rigpa.)
00:00:42.879 --> 00:00:46.800
Actually, yes, the second one is
00:00:46.800 --> 00:00:49.920
correct. That was the name that I selected
00:00:49.920 --> 00:00:53.280
last night. That's because it...
00:00:53.920 --> 00:00:55.760
There's a concept in Tibetan Buddhism
00:00:55.760 --> 00:00:57.520
that seems like it might have something
00:00:57.520 --> 00:00:58.480
to do with
00:00:58.480 --> 00:00:59.840
the kinds of concepts we're talking
00:00:59.840 --> 00:01:01.600
about with this package, so I just
00:01:01.600 --> 00:01:04.000
thought it would be a good name for it.
00:01:04.000 --> 00:01:05.760
You can look up that concept
00:01:05.760 --> 00:01:09.920
and get a sense of it on Wikipedia.
00:01:09.920 --> 00:01:13.119
Next question is "how to deal with Dvorak
00:01:13.119 --> 00:01:15.759
or however that's pronounced.
00:01:15.759 --> 00:01:16.960
This has always bugged me.
00:01:16.960 --> 00:01:20.400
Is there an Xmodmap mode?" So the thing
00:01:20.400 --> 00:01:22.400
with this is it's kind of surprising, but
00:01:22.400 --> 00:01:23.360
although Vim
00:01:23.360 --> 00:01:26.000
was originally developed
00:01:26.000 --> 00:01:27.200
with the idea of
00:01:27.200 --> 00:01:29.520
the key bindings being on the home row,
00:01:29.520 --> 00:01:32.000
it turns out that that is actually not a
00:01:32.000 --> 00:01:33.119
major aspect
00:01:33.119 --> 00:01:36.400
of the Vim editing experience, so
00:01:36.400 --> 00:01:38.560
people who use the Dvorak layout
00:01:38.560 --> 00:01:40.720
actually end up using the same keys as
00:01:40.720 --> 00:01:42.640
they do on the normal QWERTY layout, so
00:01:42.640 --> 00:01:44.720
they don't remap anything,
00:01:44.720 --> 00:01:48.159
because
00:01:48.159 --> 00:01:51.040
the power that Vim--or the
00:01:51.040 --> 00:01:52.240
flexibility, the
00:01:52.240 --> 00:01:55.600
spiral that Vim enables on QWERTY-layout
00:01:55.600 --> 00:01:56.880
keyboards is exactly
00:01:56.880 --> 00:01:58.719
preserved, even on a Dvorak keyboard,
00:01:58.719 --> 00:01:59.920
even though your
00:01:59.920 --> 00:02:01.920
fingers are not in the same positions.
00:02:01.920 --> 00:02:04.399
It's not a big deal, actually.
00:02:04.399 --> 00:02:09.119
"I mostly use default model
00:02:09.119 --> 00:02:10.879
provided by vanilla Emacs and work and
00:02:10.879 --> 00:02:12.319
Org Mode for text editing. Can you give
00:02:12.319 --> 00:02:13.840
me some examples
00:02:13.840 --> 00:02:15.920
of how the user can use the concept of
00:02:15.920 --> 00:02:17.280
"mode of mode"
00:02:17.280 --> 00:02:20.840
to do some interesting editing?
00:02:20.840 --> 00:02:24.640
Probably the main thing would be
00:02:25.120 --> 00:02:27.920
the keystrokes would be less
00:02:27.920 --> 00:02:28.959
contrived.
00:02:28.959 --> 00:02:32.080
The fewer modes you have,
00:02:32.080 --> 00:02:36.560
the more modifiers you need
00:02:36.560 --> 00:02:39.840
in order to do whatever it is that
00:02:39.840 --> 00:02:41.280
you're trying to do, because you've got,
00:02:41.280 --> 00:02:44.800
essentially, with the Emacs model, you've got
00:02:44.800 --> 00:02:48.080
a completely flat
00:02:48.080 --> 00:02:50.959
keyboard structure. So all of the
00:02:50.959 --> 00:02:52.160
different things that you might
00:02:52.160 --> 00:02:55.680
want to express are all mapped to a flat
00:02:55.680 --> 00:02:58.720
keyboard, a set of keys.
00:02:58.720 --> 00:03:02.840
With this kind of
00:03:02.840 --> 00:03:06.400
modal structure, the more modes you have,
00:03:06.400 --> 00:03:09.200
the more the individual keystrokes
00:03:09.200 --> 00:03:10.400
become
00:03:10.400 --> 00:03:13.200
shorter and shorter. That could be one
00:03:13.200 --> 00:03:14.959
benefit that would be provided.
00:03:14.959 --> 00:03:17.519
With many modes, your keystrokes would
00:03:17.519 --> 00:03:18.000
generally
00:03:18.000 --> 00:03:20.080
be a single keystroke long for even
00:03:20.080 --> 00:03:22.080
relatively complex tasks,
00:03:22.080 --> 00:03:24.159
because you're setting the context
00:03:24.159 --> 00:03:25.440
beforehand.
00:03:25.440 --> 00:03:27.200
So you already say, "Oh, I'm going to be
00:03:27.200 --> 00:03:30.840
talking about this Org buffer
00:03:30.840 --> 00:03:33.440
agenda," and then
00:03:33.440 --> 00:03:36.319
all the keystrokes that you do at
00:03:36.319 --> 00:03:39.599
that point would be in relation to that.
00:03:39.599 --> 00:03:42.159
(Amin: I think we have time for like
00:03:42.159 --> 00:03:44.080
one more short question.)
00:03:44.080 --> 00:03:46.879
One more short question... Okay, let's see.
00:03:46.879 --> 00:03:48.879
"How do new modes come into existence?" You
00:03:48.879 --> 00:03:50.400
can make them yourself,
00:03:50.400 --> 00:03:53.040
and you can specify them in Emacs
00:03:53.040 --> 00:03:53.760
Lisp
00:03:53.760 --> 00:03:56.159
if you like, but there's also a simple way.
00:03:56.159 --> 00:03:59.040
You can also do it visually as we did.
00:03:59.040 --> 00:04:02.720
But yeah, defining them
00:04:02.720 --> 00:04:04.799
is essentially built on top of Hydra, but
00:04:04.799 --> 00:04:07.519
it could also be built on top of Evil or
00:04:07.519 --> 00:04:09.120
any other modal interface provider.
00:04:09.120 --> 00:04:12.840
There's an abstraction layer.
00:04:12.840 --> 00:04:15.920
(Amin: Okay. Thank you so much for your talk and
00:04:15.920 --> 00:04:17.919
for the live Q&A.)
00:04:17.919 --> 00:04:21.440
Sure, thank you. (Amin: Feel free to take
00:04:21.440 --> 00:04:22.880
up the rest of the questions either via
00:04:22.880 --> 00:04:23.759
IRC or
00:04:23.759 --> 00:04:25.680
on the pad on on your own time off the
00:04:25.680 --> 00:04:26.960
stream.)
00:04:26.960 --> 00:04:28.639
Perfect. Yeah, I'll go ahead and put in
00:04:28.639 --> 00:04:30.000
some answers there.
00:04:30.000 --> 00:04:32.240
(Amin: Awesome, thank you.) All right, thank you.
00:04:32.240 --> 00:04:33.120
Have a good one.
00:04:33.120 --> 00:04:36.880
(Amin: Thanks you too)