summaryrefslogtreecommitdiffstats
path: root/2020/subtitles/emacsconf-2020--31-lakota-language-and-emacs--grant-shangreaux-autogen.sbv
blob: 8b6fdc1341735e93f4c259642cf41911c9f342e0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
0:00:10.480,0:00:15.040
hello relatives

0:00:11.519,0:00:18.960
grant shangri is what they call me

0:00:15.040,0:00:22.160
and all of you I gladly take your hand

0:00:18.960,0:00:25.199
and shake it um

0:00:22.160,0:00:25.199
greetings everyone

0:00:26.240,0:00:30.480
today I'm going to talk about lakota

0:00:28.560,0:00:33.680
language and Emacs and how

0:00:30.480,0:00:36.000
free software and Emacs empowered me to

0:00:33.680,0:00:38.960
write on the computer in the language of

0:00:36.000,0:00:38.960
my ancestors

0:00:39.520,0:00:45.760
um start off the look with the story of

0:00:42.640,0:00:48.800
lakotiappi the lakota language

0:00:45.760,0:00:52.160
the lakota dakota dialect area

0:00:48.800,0:00:55.600
for those of you who you don't know

0:00:52.160,0:00:56.840
the lakota dakota people are also known

0:00:55.600,0:00:59.760
as the sioux

0:00:56.840,0:01:03.120
and the tribes cover an

0:00:59.760,0:01:05.199
area of roughly 10 us states and parts

0:01:03.120,0:01:08.479
of canada and so this language is

0:01:05.199,0:01:10.880
spoken over a wide range of of

0:01:08.479,0:01:10.880
area

0:01:11.520,0:01:16.640
however the us government policy

0:01:14.400,0:01:18.640
directly tried to silence this language

0:01:16.640,0:01:20.960
my father was taken to a boarding school

0:01:18.640,0:01:23.280
and was punished for speaking

0:01:20.960,0:01:25.119
his native language and so he didn't

0:01:23.280,0:01:28.880
teach it to his children

0:01:25.119,0:01:29.600
several generations of lakota and dakota

0:01:28.880,0:01:31.600
people

0:01:29.600,0:01:32.640
and other tribes all over the country

0:01:31.600,0:01:34.560
lost

0:01:32.640,0:01:38.320
lost their first language their native

0:01:34.560,0:01:41.040
language so today only around 2000

0:01:38.320,0:01:43.119
first first language native speakers are

0:01:41.040,0:01:44.960
speaking lakota

0:01:43.119,0:01:47.600
however there's language recovery

0:01:44.960,0:01:49.759
projects that are empowering

0:01:47.600,0:01:51.720
second language learners like myself to

0:01:49.759,0:01:54.479
teach it to the new generation of

0:01:51.720,0:01:57.119
children um

0:01:54.479,0:01:58.000
which brings me to my story um I grew up

0:01:57.119,0:02:00.880
without knowing

0:01:58.000,0:02:01.520
my heritage um I didn't know who my

0:02:00.880,0:02:04.719
father was

0:02:01.520,0:02:07.119
both my parents were white um

0:02:04.719,0:02:08.720
I discovered my biological family in

0:02:07.119,0:02:12.160
around 2015

0:02:08.720,0:02:13.840
was kind of a shock to me up until that

0:02:12.160,0:02:15.520
point probably the only time I'd heard

0:02:13.840,0:02:18.720
the lakota language was in

0:02:15.520,0:02:20.720
the movie dances with wolves possibly

0:02:18.720,0:02:24.160
some other times

0:02:20.720,0:02:27.200
around nebraska I'd heard it um but

0:02:24.160,0:02:28.319
even myself growing up you know pretty

0:02:27.200,0:02:30.560
close to

0:02:28.319,0:02:32.239
to lakota people and other native

0:02:30.560,0:02:34.560
american people

0:02:32.239,0:02:36.640
american indian people I kind of thought

0:02:34.560,0:02:39.760
it was just dead I thought the language

0:02:36.640,0:02:42.000
was not alive anymore um

0:02:39.760,0:02:43.920
but in 2016 my daughter began her

0:02:42.000,0:02:46.720
journey into this world and I

0:02:43.920,0:02:48.239
I was doing a lot of searching to find

0:02:46.720,0:02:50.560
out like what could I do

0:02:48.239,0:02:51.920
you know not knowing my family not

0:02:50.560,0:02:54.080
knowing my culture

0:02:51.920,0:02:55.280
what could I do to try to bring that

0:02:54.080,0:02:58.640
into our life

0:02:55.280,0:03:00.720
um and so I found out about these

0:02:58.640,0:03:02.720
lakota classes that were happening I

0:03:00.720,0:03:04.560
went up to standing rock

0:03:02.720,0:03:06.640
in north dakota and attended the lakota

0:03:04.560,0:03:08.480
summer institute for three weeks

0:03:06.640,0:03:09.680
and began my journey to learn the

0:03:08.480,0:03:13.120
language so I can

0:03:09.680,0:03:16.400
try to pass it on so

0:03:13.120,0:03:16.400
this brings us to Emacs

0:03:16.560,0:03:20.959
I could talk a lot more about my story

0:03:19.200,0:03:24.640
I'm sure there's a lot to say

0:03:20.959,0:03:26.319
but we're here to talk about Emacs um

0:03:24.640,0:03:29.040
I was already a free software user at

0:03:26.319,0:03:31.440
the time and at the lakota language

0:03:29.040,0:03:33.280
uh institute they they were they're

0:03:31.440,0:03:34.879
giving us software there's a dictionary

0:03:33.280,0:03:37.360
you could get on android

0:03:34.879,0:03:38.560
um there was a keyboard for android that

0:03:37.360,0:03:41.760
you could type with

0:03:38.560,0:03:44.959
they had keyboard input methods for mac

0:03:41.760,0:03:46.720
and windows but I'm a linux user free

0:03:44.959,0:03:49.280
software user

0:03:46.720,0:03:49.760
so I didn't have access to those things

0:03:49.280,0:03:53.120
as

0:03:49.760,0:03:55.280
as easily as I could and I do a lot of

0:03:53.120,0:03:57.280
my thinking and note taking in Emacs and

0:03:55.280,0:04:01.200
in org mode

0:03:57.280,0:04:04.640
and so being able to to write this

0:04:01.200,0:04:07.680
to to um to write things down to type

0:04:04.640,0:04:08.720
on my own computer uh was was pretty

0:04:07.680,0:04:11.360
important to me

0:04:08.720,0:04:12.799
and I wasn't much of an emax hacker yet

0:04:11.360,0:04:15.519
at the time I had

0:04:12.799,0:04:16.720
barely done anything mostly just you

0:04:15.519,0:04:20.479
know hacked on my

0:04:16.720,0:04:23.600
config file but this was a real

0:04:20.479,0:04:27.280
chance for me to experience

0:04:23.600,0:04:30.400
the the benefits of free software first

0:04:27.280,0:04:33.680
hand and not just to benefit myself but

0:04:30.400,0:04:33.680
to potentially benefit

0:04:34.080,0:04:38.800
everyone anyone interested in learning

0:04:36.080,0:04:38.800
this language

0:04:39.120,0:04:44.880
so Emacs and

0:04:42.880,0:04:47.520
that free software philosophy really

0:04:44.880,0:04:49.840
empowered me so I began digging in

0:04:47.520,0:04:51.520
um I looked I began reading the the

0:04:49.840,0:04:53.680
manual more closely

0:04:51.520,0:04:55.440
as an american I'm I'm sad to say

0:04:53.680,0:04:58.479
there's not a lot of

0:04:55.440,0:05:00.160
other languages spoken or written where

0:04:58.479,0:05:02.240
I'm from

0:05:00.160,0:05:04.720
so it's not common that I that I have to

0:05:02.240,0:05:07.600
think about this with computers

0:05:04.720,0:05:09.120
I know international people you know

0:05:07.600,0:05:11.280
have had to come up with

0:05:09.120,0:05:12.160
with interesting ways to to enter their

0:05:11.280,0:05:14.800
text

0:05:12.160,0:05:16.320
and Emacs is probably a pioneer in that

0:05:14.800,0:05:17.520
I I'd like to know more about the

0:05:16.320,0:05:19.840
history of this but

0:05:17.520,0:05:22.160
there's a whole section in the manual on

0:05:19.840,0:05:23.840
international Emacs

0:05:22.160,0:05:25.440
and I began reading this and I was

0:05:23.840,0:05:28.000
talking about

0:05:25.440,0:05:29.759
different input methods and and how many

0:05:28.000,0:05:31.680
different languages were supported and

0:05:29.759,0:05:33.680
how you could enter the text and how it

0:05:31.680,0:05:34.560
supports the different characters and so

0:05:33.680,0:05:36.639
on

0:05:34.560,0:05:38.880
um I even noticed a few languages

0:05:36.639,0:05:41.840
support several input methods

0:05:38.880,0:05:43.440
that became important for me later on as

0:05:41.840,0:05:45.280
I was working on this

0:05:43.440,0:05:46.720
many many languages are already

0:05:45.280,0:05:48.479
supported so

0:05:46.720,0:05:50.080
those of you who haven't looked into

0:05:48.479,0:05:52.639
this yet if you press

0:05:50.080,0:05:53.680
control backslash it will open up a

0:05:52.639,0:05:57.039
selection menu

0:05:53.680,0:05:59.120
for you to to select um

0:05:57.039,0:06:01.440
your input method and you can there's

0:05:59.120,0:06:03.120
207 listed here

0:06:01.440,0:06:04.639
that's including the two that I've

0:06:03.120,0:06:09.199
contributed

0:06:04.639,0:06:11.120
um so 205 on on a vanilla Emacs

0:06:09.199,0:06:13.840
so that's a lot of languages supported

0:06:11.120,0:06:17.440
by emac Emacs but there's so many more

0:06:13.840,0:06:19.280
that could be um and since Emacs is free

0:06:17.440,0:06:20.000
software and it is what it is I knew

0:06:19.280,0:06:22.639
that defining

0:06:20.000,0:06:23.039
a new input method was surely possible

0:06:22.639,0:06:25.440
um

0:06:23.039,0:06:27.120
unfortunately the the manual didn't

0:06:25.440,0:06:28.800
describe it directly or at least I

0:06:27.120,0:06:30.960
didn't pick it up so

0:06:28.800,0:06:32.319
um you know the new emax hacker that I

0:06:30.960,0:06:34.880
was I

0:06:32.319,0:06:37.360
I timidly dove down into the source code

0:06:34.880,0:06:40.479
and discovered the quail package

0:06:37.360,0:06:40.960
um so back in the day apparently there

0:06:40.479,0:06:44.240
was

0:06:40.960,0:06:44.240
mule which is like the

0:06:44.560,0:06:48.000
multi I don't I don't know it stood for

0:06:47.360,0:06:50.160
something about

0:06:48.000,0:06:51.759
language environments and and it has

0:06:50.160,0:06:54.960
evolved

0:06:51.759,0:06:58.000
and at some point um some japanese

0:06:54.960,0:06:59.039
uh coders created an input method called

0:06:58.000,0:07:03.599
tamago

0:06:59.039,0:07:06.720
which means egg in japanese and uh

0:07:03.599,0:07:08.800
tamago evolved into quail and they

0:07:06.720,0:07:10.720
in the comments you can see they talk

0:07:08.800,0:07:12.800
about how the quail egg is eaten in

0:07:10.720,0:07:15.280
japan it's a smaller thing and

0:07:12.800,0:07:16.960
the quail mode is like a nicer version

0:07:15.280,0:07:19.039
of tamago I guess and

0:07:16.960,0:07:22.639
there's a pun saying they hoped it would

0:07:19.039,0:07:26.240
egg people on to create more input modes

0:07:22.639,0:07:28.479
and quail is quite nice I looked into it

0:07:26.240,0:07:30.720
and there's basically two things you use

0:07:28.479,0:07:32.240
quail defined package and quail define

0:07:30.720,0:07:35.759
rules

0:07:32.240,0:07:35.759
so quail defined package

0:07:36.080,0:07:41.759
you can see here is a function it's

0:07:38.960,0:07:43.599
probably a macro that takes a name

0:07:41.759,0:07:44.879
a language a title and some optional

0:07:43.599,0:07:48.080
stuff which

0:07:44.879,0:07:48.080
I didn't really have to deal with

0:07:48.319,0:07:52.400
define name is a new quail package for

0:07:50.479,0:07:52.879
input language title is a string to be

0:07:52.400,0:07:54.400
split

0:07:52.879,0:07:56.800
at the mode line to indicate this

0:07:54.400,0:07:56.800
package

0:07:57.120,0:08:03.039
so I began trying to do lakota input now

0:08:00.879,0:08:04.240
this is a whole thing on its own because

0:08:03.039,0:08:07.680
the lakota language

0:08:04.240,0:08:10.800
was never written um

0:08:07.680,0:08:12.879
pre-contact and post contact

0:08:10.800,0:08:14.800
like there's several attempts at writing

0:08:12.879,0:08:16.960
it and different orthographies

0:08:14.800,0:08:19.199
and there's drama around all of this

0:08:16.960,0:08:19.199
stuff

0:08:19.360,0:08:24.160
it's pretty common to have drama going

0:08:21.120,0:08:26.560
on in any american indian stuff

0:08:24.160,0:08:28.479
going on so as I was doing this I

0:08:26.560,0:08:29.680
started with the suggested lakota

0:08:28.479,0:08:32.880
orthography which

0:08:29.680,0:08:35.680
is actually called by its authors the

0:08:32.880,0:08:36.959
the standard lakota orthography but its

0:08:35.680,0:08:40.880
authors are

0:08:36.959,0:08:43.039
um are european

0:08:40.880,0:08:45.040
um the main author is a man named jan

0:08:43.039,0:08:46.160
ulrich and I appreciate all his work and

0:08:45.040,0:08:49.360
I'm grateful for

0:08:46.160,0:08:51.040
the materials he's made available but um

0:08:49.360,0:08:54.160
it's a little bit problematic because

0:08:51.040,0:08:56.720
it's not an orthography created by

0:08:54.160,0:08:57.920
our people by lakota people so there's

0:08:56.720,0:09:00.080
another one called the white hat

0:08:57.920,0:09:01.839
orthography which is created by albert

0:09:00.080,0:09:04.480
whitehat who's a teacher

0:09:01.839,0:09:05.360
um from the chichanguk tribe so I

0:09:04.480,0:09:08.640
created two

0:09:05.360,0:09:10.720
and thankfully emax lets me do that so

0:09:08.640,0:09:11.680
it's pretty simple quail defined package

0:09:10.720,0:09:13.279
I just

0:09:11.680,0:09:15.360
say the package I want and then all

0:09:13.279,0:09:16.480
these nils and t's for options I don't

0:09:15.360,0:09:18.240
actually know what they mean but it

0:09:16.480,0:09:20.240
works

0:09:18.240,0:09:22.640
I could look it up and then quail define

0:09:20.240,0:09:23.600
rules just defines mappings from ascii

0:09:22.640,0:09:26.640
keys to

0:09:23.600,0:09:29.680
the the text you want to put in so

0:09:26.640,0:09:33.600
for this one there's a nasal n and then

0:09:29.680,0:09:36.640
a dot and a macron like a wedge shape

0:09:33.600,0:09:39.839
for marking up the consonants

0:09:36.640,0:09:41.760
so that one's pretty easy and then the

0:09:39.839,0:09:43.040
suggested lakota orthography is a little

0:09:41.760,0:09:45.600
bit more difficult

0:09:43.040,0:09:46.800
but still pretty easy I just map a

0:09:45.600,0:09:49.760
sequence of keys

0:09:46.800,0:09:51.760
a followed by the apostrophe makes the

0:09:49.760,0:09:53.519
accented vowels so all of those

0:09:51.760,0:09:55.839
and then again we have the hot checks

0:09:53.519,0:09:58.399
for the guttural sounds of the language

0:09:55.839,0:09:59.120
and the nasal end so that's it basically

0:09:58.399,0:10:02.480
these two

0:09:59.120,0:10:06.560
definitions allow me to type

0:10:02.480,0:10:09.279
lakota language in Emacs um

0:10:06.560,0:10:09.920
and it's great it works great publishing

0:10:09.279,0:10:11.760
it

0:10:09.920,0:10:13.839
is another problematic thing I wanted to

0:10:11.760,0:10:16.079
use free software to do that

0:10:13.839,0:10:17.600
so the first thing I did was I I posted

0:10:16.079,0:10:19.440
on sourcehut

0:10:17.600,0:10:20.959
which is great it's a good alternative

0:10:19.440,0:10:22.880
for a git forge

0:10:20.959,0:10:24.000
and I got it published on melba so the

0:10:22.880,0:10:25.760
lakota input

0:10:24.000,0:10:27.760
package is available if you'd like to

0:10:25.760,0:10:29.839
try it out

0:10:27.760,0:10:31.680
and bandali one of our hosts for the

0:10:29.839,0:10:33.200
conference is helping me now

0:10:31.680,0:10:35.279
through the process of committing the

0:10:33.200,0:10:37.120
code to Emacs

0:10:35.279,0:10:39.279
because I would like to do that I would

0:10:37.120,0:10:41.680
like it to be available to everyone

0:10:39.279,0:10:43.279
through Emacs itself so that anyone who

0:10:41.680,0:10:43.920
wants to use it just has to download

0:10:43.279,0:10:46.240
Emacs

0:10:43.920,0:10:47.120
and there you go you can type lakota

0:10:46.240,0:10:50.160
language

0:10:47.120,0:10:53.279
so uh pila maya thank you

0:10:50.160,0:10:55.920
all for listening and

0:10:53.279,0:10:58.320
I hope to see you around in our Emacs

0:10:55.920,0:11:04.720
community

0:10:58.320,0:11:04.720
uh day