From: Grant Shoshin Shangreaux <grant@churls.world>
To: Robert Pluim <rpluim@gmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
Subject: Re: adding Lakota keyboard layouts
Date: Fri, 18 Jun 2021 10:31:21 -0500 [thread overview]
Message-ID: <87eecz42ba.fsf@churls.world> (raw)
In-Reply-To: <87im3743ky.fsf@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1391 bytes --]
Robert Pluim writes:
> Youʼre missing a ChangeLog and a NEWS entry. See commit 229c51afbf for
> an example
Thank you for the review! I finally had a chance to sit down with this
again and I'm attaching an updated patch that also includes one input
mode added to the latin-prefix file.
I added the NEWS entry, but I apologize, I wasn't able to determine
which ChangeLog I should be adding to. I tried to format my commit
message as documented in the CONTRIBUTE file.
>
> Two spaces after '.', here and below
>
Good to know the docstrings still follow two spaces after a period, I
believe I've got them all sorted now
>
> I guess these combine if you use the ? notation, which looks
> terrible. Perhaps a comment to that effect?
>
I added a comment, I'd be glad to know if there was a better way to
insert these combining character literals. This proved to be the best
way I could come up with to keep the input mode simple.
> Also, in the lakota-slo-postfix, you produce eg á, whereas this
> method produces ȧ. Are they intended to represent the same sound? If
> so, could it be confusing to have them represented differently?
>
The White Hat orthography doesn't add diacritics to vowels. I added a
table in the docstring to show the intended use of the combining marks
for the consonants. I hope that makes it a bit clearer.
- Grant
[-- Attachment #2: Lakota input modes --]
[-- Type: text/x-diff, Size: 5510 bytes --]
From 2c5ed933f515d2115f37695e8f1b784e88104127 Mon Sep 17 00:00:00 2001
From: Grant Shangreaux <grant@churls.world>
Date: Sun, 23 May 2021 11:28:25 -0500
Subject: [PATCH] Add: input modes for Lakota orthographies
The White Hat and Suggested Lakota Orthography are represented here
by three different input modes: A prefix and postfix mode for the SLO
and a postfix mode for the White Hat orthography.
* lisp/leim/quail/latin-post.el: lakota-slo-postfix, lakota-white-hat-postfix
* lisp/leim/quail/latin-pre.el: lakota-slo-prefix
* etc/HELLO: a welcome message in Lakota
---
etc/HELLO | 1 +
etc/NEWS | 7 +++++
lisp/leim/quail/latin-post.el | 58 +++++++++++++++++++++++++++++++++++
lisp/leim/quail/latin-pre.el | 29 ++++++++++++++++++
4 files changed, 95 insertions(+)
diff --git a/etc/HELLO b/etc/HELLO
index 0cebb2bb7c..577c2828de 100644
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -59,6 +59,7 @@ Italian (italiano) Ciao / Buon giorno
Javanese (ꦧꦱꦗꦮꦶ) console.log("ꦲꦭꦺꦴ");
Kannada (ಕನ್ನಡ) ನಮಸ್ಕಾರ
Khmer (ភាសាខ្មែរ) ជំរាបសួរ
+Lakota (Lakȟotiyapi) Taŋyáŋ yahí!
Lao (ພາສາລາວ) ສະບາຍດີ / ຂໍໃຫ້ໂຊກດີ
Malayalam (മലയാളം) നമസ്കാരം
Maldivian (ދިވެހި) އައްސަލާމު ޢަލައިކުމް / ކިހިނެހް؟
diff --git a/etc/NEWS b/etc/NEWS
index da1372baf4..551affe234 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1214,6 +1214,13 @@ deprecated. Errors in the Inscript method were corrected.
*** New input method 'cham'.
There's also a Cham greeting in "etc/HELLO".
+---
+*** New input methods for Lakota language orthographies
+Two orthographies are represented here, the Suggested Lakota Orthography
+and what is known as the White Hat Orthography. Input methods lakota-slo-prefix,
+lakota-slo-postfix, and lakota-white-hat-postfix have been added.
+There is also a Lakota greeting in "etc/HELLO".
+
** Ispell
+++
diff --git a/lisp/leim/quail/latin-post.el b/lisp/leim/quail/latin-post.el
index 10408776a2..8329fff82e 100644
--- a/lisp/leim/quail/latin-post.el
+++ b/lisp/leim/quail/latin-post.el
@@ -1298,6 +1298,64 @@
("a__" ["a_"])
)
+;; Input modes of various orthographies for the Lakota language.
+;; I'd like to acknowledge the elders and ancestors who fought
+;; to keep the language and culture alive.
+;; Grant Shangreaux <grant@churls.world> 2021-05-23
+
+(quail-define-package
+ "lakota-white-hat-postfix" "Lakota" "Lak " t
+ "Lakota White Hat orthography input method with postfix modifiers.
+The `f' key produces the nasal ŋ while unused letters `r' and `v' add
+the combining dot above and macron diacritics respectively. This allows
+production of all the consonants:
+
+cv -> c̄ hr -> ḣ pv -> p̄ tv -> t̄
+cr -> ċ kv -> k̄ pr -> ṗ tr -> ṫ
+gr -> ġ kr -> k̇ sr -> ṡ zr -> ż
+
+The glottal stop is produced by repeating the ' character. This orthography
+does not use stress diacritics on vowels. Mit̄ak̄uyep̄i p̄ilamayayap̄ilo."
+nil t nil nil nil nil nil nil nil nil t)
+
+(quail-define-rules
+ ("f" ?ŋ)
+ ("''" ?’)
+ ;; using hex representation as these characters combine with the ? syntax
+ ("r" #x307) ; COMBINING DOT ABOVE
+ ("v" #x304)) ; COMBINING MACRON
+
+
+
+(quail-define-package
+ "lakota-slo-postfix" "Lakota" "SLO " t
+ "Suggested Lakota Orthography input method with postfix modifier.
+To add stress to a vowel, simply type the single quote ' after the vowel.
+The glottal stop is produced by repeating the ' character. All other
+characters are bound to a single key. Mitákuyepi philámayayapi 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 caron
+ ("c" ?č) ("C" ?Č)
+ ("j" ?ȟ) ("J" ?Ȟ)
+ ("q" ?ǧ) ("Q" ?Ǧ)
+ ("x" ?ž) ("X" ?Ž)
+ ("r" ?š) ("R" ?Š)
+
+ ;; velar nasal n
+ ("f" ?ŋ)
+
+ ;; glottal stop
+ ("''" ?’))
+
(quail-define-package
"norwegian-postfix" "Latin-1" "NO<" t
"Norwegian (Norsk) input method (rule: AE->Æ OE->Ø AA->Å E\\='->É
diff --git a/lisp/leim/quail/latin-pre.el b/lisp/leim/quail/latin-pre.el
index b8b0fabfa8..3b9c942a8c 100644
--- a/lisp/leim/quail/latin-pre.el
+++ b/lisp/leim/quail/latin-pre.el
@@ -1337,4 +1337,33 @@
("``" ["`"])
)
+(quail-define-package
+ "lakota-slo-prefix" "Lakota" "SLO " t
+ "Suggested Lakota Orthography input method with prefix modifier.
+To add stress to a vowel, simply type the single quote ' before the vowel.
+The glottal stop is produced by repeating the ' character. All other
+characters are bound to a single key. Mitákuyepi philámayayapi 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 caron
+ ("c" ?č) ("C" ?Č)
+ ("j" ?ȟ) ("J" ?Ȟ)
+ ("q" ?ǧ) ("Q" ?Ǧ)
+ ("x" ?ž) ("X" ?Ž)
+ ("r" ?š) ("R" ?Š)
+
+ ;; velar nasal n
+ ("f" ?ŋ)
+
+ ;; glottal stop
+ ("''" ?’))
+
;;; latin-pre.el ends here
--
2.20.1
next prev parent reply other threads:[~2021-06-18 15:31 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-18 1:29 adding Lakota keyboard layouts Grant Shoshin Shangreaux
2021-05-18 8:51 ` Robert Pluim
2021-05-18 11:24 ` Eli Zaretskii
2021-05-23 16:47 ` Grant Shoshin Shangreaux
2021-05-25 8:31 ` Robert Pluim
2021-06-18 15:31 ` Grant Shoshin Shangreaux [this message]
2021-06-20 11:06 ` Eli Zaretskii
2021-06-20 14:48 ` Robert Pluim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87eecz42ba.fsf@churls.world \
--to=grant@churls.world \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=rpluim@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).