#+TITLE: Lakota Language and Emacs
#+AUTHOR: Grant Shoshin Shangreaux

* Introduction

               Mit̄ak̄uyep̄i Grant Shangreaux emac̄iyap̄i 
               nahaŋ iyuha ċaŋt̄e waṡt̄eya nap̄e ċiyuzap̄elo.

               Mitákuyepi Grant Shangreaux emáčiyapi
               nahaŋ iyúha čhaŋtéwašteya napé čhiyúzape ló.

** Story of Lakȟótiyapi

  - Lakota/Dakota dialect area covers roughly 10 US states and parts of Canada
  - US govt policy directly tried to silence the language
  - Several generations lost it as their first language
  - Only around 2,000 native speakers today
  - Language recovery projects are empowering second language 
     learners to teach it to the new generation of children

** My story

  - Grew up without knowing my heritage
  - Discovered my biological family ~2015
  - 2016 my daughter began her journey into this world
  - That summer I attended the Lakota Summer Institute

* Emacs' Freedom and Empowerment
** International Emacs

  - Section 22 of the Emacs manual
  - /A few languages support several input methods/ !!
  - Many, many languages are already supported
  - Defining a new Input Method surely must be possible!

** Quail

   - There was an input method for Mule 2.3 called `Tamago'
   - In Quail minor mode, you can input multilingual text easily
   - ~quail-define-package~
   - ~quail-define-rules~

#+begin_quote
(quail-define-package NAME LANGUAGE TITLE &optional ...)

Define NAME as a new Quail package for input LANGUAGE.
TITLE is a string to be displayed at mode-line to indicate this package.
#+end_quote

** Lakota Input
*** White Hat Orthography
#+BEGIN_SRC emacs-lisp
  (quail-define-package
  "white-hat" "Lakota" "Lak " t
  "Input method for the White Hat orthography."
  nil t nil nil nil nil nil nil nil nil t)

  (quail-define-rules
   ("f" ?Å‹)
   ("r" #x307)                            ; COMBINING DOT ABOVE
   ("v" #x304)                            ; COMBINING MACRON
   )

#+END_SRC

Siċaŋġu  It̄azipċo

*** Suggested Lakota Orthography
#+BEGIN_SRC emacs-lisp
  (quail-define-package
   "lakota-slo" "Lakota" "Lak " t
   "Input method for the Suggested Lakota Orthography.
  Uses a postfix modifier key for adding accent diacritics. To add stress
  to a vowel, simply type the single quote ' after the vowel. All other characters
  are bound to a single key. Mitákuyepi philámayaye ló. "
  nil t nil nil nil nil nil nil nil nil t)

  (quail-define-rules
   ;; accented vowels
   ("a'" ?á) ("A'" ?Á)
   ("e'" ?é) ("E'" ?É)
   ("i'" ?í) ("I'" ?Í)
   ("o'" ?ó) ("O'" ?Ó)
   ("u'" ?ú) ("U'" ?Ú)
   ;; consonants with hacek (wedges)
   ("c" ?č) ("C" ?Č)
   ("j" ?ÈŸ) ("J" ?Èž)
   ("q" ?ǧ) ("Q" ?Ǧ)
   ("x" ?ž) ("X" ?Ž)
   ("r" ?Å¡) ("R" ?Å )
   ;; velar nasal n
   ("f" ?Å‹))
#+END_SRC

** Publishing

  - first round on MELPA, hosted on sr.ht
  - bandali helping me through the process of committing to Emacs