I call this layout "colemak but it destroys your left pinky"
]]>#!/bin/sed -f
s/AC04/AD03/;t # E>F
s/AD05/AC04/;t # F>T
s/AC05/AD05/;t # T>G
s/AC03/AC05/;t # G>D
s/AC02/AC03/;t # D>S
s/AD04/AC02/;t # S>R
s/AD10/AD04/;t # R>P
s/AC10/AD10/;t # P>;
s/AD09/AC10/;t # ;>O
s/AD06/AD09/;t # O>Y
s/AC07/AD06/;t # Y>J
s/AB06/AC07/;t # J>N
s/AC08/AB06/;t # N>K
s/AD03/AC08/;t # K>E
s/AC09/AD07/;t # U>L
s/AD08/AC09/;t # L>I
s/AD07/AD08/;t # I>Y
This can be applied to the layout to be shuffled from within vim: use "v" to visually select the layout section and pipe it through the script: "! sed -f colemakize.sed | sort -k 2r,2.4", and save the result as a new colemak layout. Voila. :-)
]]>ქ წ ფ პ გ ჯ ლ უ ყ ; [ ]
ა რ ს ტ დ ჰ ნ ე ი ო '
ზ ხ ც ვ ბ კ მ , . /
I don't know the Georgian language at all, so this is just a theoretical exercise, but in xkb it would look like this:
partial alphanumeric_keys
xkb_symbols "colemak" {
include "ge(basic)"
name[Group1]= "Georgian (Colemak)";
key <AD01> { [ Georgian_khar, Q ] };
key <AD02> { [ Georgian_cil, Georgian_char ] };
key <AD03> { [ Georgian_phar, F, Georgian_fi ] };
key <AD04> { [ Georgian_par, P ] };
key <AD05> { [ Georgian_gan, G, 0x010010f9 ] };
key <AD06> { [ Georgian_jhan, Georgian_zhar, 0x010010f7 ] };
key <AD07> { [ Georgian_las, L ] };
key <AD08> { [ Georgian_un, U ] };
key <AD09> { [ Georgian_qar, Y, 0x010010f8 ] };
key <AD10> { [ semicolon, colon ] };
key <AC01> { [ Georgian_an, A, 0x010010fa ] };
key <AC02> { [ Georgian_rae, Georgian_ghan, 0x010000ae ] };
key <AC03> { [ Georgian_san, Georgian_shin ] };
key <AC04> { [ Georgian_tar, Georgian_tan ] };
key <AC05> { [ Georgian_don, D ] };
key <AC06> { [ Georgian_hae, H, Georgian_hoe ] };
key <AC07> { [ Georgian_nar, N, 0x010010fc ] };
key <AC08> { [ Georgian_en, E, Georgian_he ] };
key <AC09> { [ Georgian_in, I, Georgian_hie ] };
key <AC10> { [ Georgian_on, O ] };
key <AB01> { [ Georgian_zen, Georgian_jil ] };
key <AB02> { [ Georgian_xan, X, Georgian_har ] };
key <AB03> { [ Georgian_can, Georgian_chin, 0x010000a9 ] };
key <AB04> { [ Georgian_vin, V, Georgian_we ] };
key <AB05> { [ Georgian_ban, B ] };
key <AB06> { [ Georgian_kan, K ] };
key <AB07> { [ Georgian_man, M ] };
include "capslock(backspace)"
include "level3(ralt_switch)"
include "space(level4)"
};
This layout, the same as proposed by DreymaR above, has been included in xkeyboard-config as gr(colemak).
AltGr combinations, mostly alternative or archaic letters and some symbols, moved together with the corresponding main letters.
]]>In Classical Arabic, a long vowel was lengthened even more before permanently geminate consonants.
Whoa. :-o
I feel we're getting somewhere. This is going to be good, I know it! :-)
The best indication of what should and what doesn't need to be in the main layout (but can still be in the "enhanced" one without latin letters) may be the Israel layout itself. Our layout should have the same symbols as that, for sure.
]]>No, sure, I'm all behind shin on W now. It's in line with the KU phonetic layout, and it's nice. What I do suggest though, is sin (shin with left dot) on shift+S and shin-dot on shift+W. That makes sense phonetically, and makes the W key less crowded.
Exactly what are these "ten or so Niqqud", please? I haven't studied this well enough yet. As you can see, I know of the five vowels now; what is the function of the five (or so) others you say?
Is there a hataf variant for each vowel, that need to be included? If so, they should likely be on AltGr+vowels then. Unless it can be done with a combining key? How common are they?
It seems that some of these niqqud aren't commonly in use now?
What I'm thinking right now, is that it might be nice to do what the Israel layout does: Keep latin letters on AltGr! Because when typing Hebrew most people will often need to type a latin word now and then I guess?
Then, it'd be possible to have another variant with the same first two layers but with more advanced glyphs needed for biblical Hebrew and suchlike, on the AltGr layers. All the niqqud you can dream of, ligatures etc etc.
We'll also need the RLM (right-left-marker) and LRM (left-right-marker) if you didn't already include them.
]]>• The principle of this layout will be to provide a mostly phonetic translation of Colemak to the Hebrew script.
• For some letters that's simple enough, for others design choices have to be made.
• We've looked to other phonetic Hebrew layouts as well as common transliteration practice.
• Final forms are found on Shift mappings as is common in other phonetic layouts. Also on dead keys?
• Dagesh/mapiq/hazaq dot forms are also placed on Shift mappings. Dagesh forms with final forms are on separate keys.
• Thus, the plain/dagesh pairs fe/pe and chaf/kaf are (semi-)phonetically distributed on F/P and J/K, respectivly.
• Samekh/sin are on s/S and shin/shin-dot on w/W, by form and precedence.
• Alef on A and ayin on E. An extra alef on Shift+ayin for convenience.
• Tet is on U, similar to Theta in the Greek phonetic layout. Also by its shape; others use V/Y/T so there aren't good precedents.
• Vav/waw is on V, with a spare on Shift+U.
• The O and Y keys are special dead keys for niqqud and other signs. Not everyone need these; feel free to map them to something else then.
– Short vowels are on the Y key and long ones on the O key. For convenience, also on their mirrored counterparts (U-F, Y-W etc).
– The DKs also let you type the combining diacritics: D/M = dagesh/mapiq, period = shva, comma = meteg, hyphen = rafe etc.
– With AltGr+Letter from the short vowel DK, you get the ultrashort (shva) forms.
Table of proposed and discussed Hebrew Colemak mappings:
(based on my findings and opinions after some Wikipedia studies etc)
The "BKSW TI" mappings mean: Biblical-SIL, Kansas-Uni, Slackware & Wrapman's Hebmak phonetic layouts; Wikipedia & IPA common translit.
Final forms and dagesh/mapiq forms are shown when applicable; geresh forms in comments
A א name fin. BKSW TI dag·map • comments, [IPA]
--------------------------------------------------------------
Proposed:
A א alef/aleph .aaa '. אּ • [ʔ] ʾ stop (see ayin; in non-oriental Heb., א = ע); on Shift+Y w/ ayin?
B ב bet/vet bbbb bb בּ·[b] • ב vet [v]; בּ = U+FB31 bet dagesh [b]
C צ tsade/tzadi ץ cccc ** - • [ts]; צ׳ ץ׳ [tʃ] č/ch; kyrillic tse; latin 'ts'
D ד dalet dddd dd דּ [dd] • ד׳ [ð] ḏ/dh
E ע ayin ,eyy 'ʔ • ʿ stop (latin O); [ʕ/ʢ] g/ʁ [ancient ghayin was for that too]; on Shift+A?
F פ fe(i)? ף • pe w/o dagesh [f] on F and w/ [p] on P, phonetically
G ג gimel gggg gg גּ [gg] • ג׳ [dʒ] ǧ/j; נג [ŋ] ng
H ה he(i) hhhh hh הּ [h] • He w/ mapiq
I י yod/yud yiii ij יּ [jj] • i after vowel & before consonant/break, j otherwise
J כ chaf ך • ?? kaf w/ dagesh [k] on K and w/o [χ] on J, semi-phonetically
K כּ kaf/chaf ךּ kkkk ck ךּ·[k] • [χ] x/ch/kh/ḵ (see chet); כּ = U+FB3B
L ל lamed llll ll לּ [ll] •
M מ mem ם mmmm mm מּ [mm] •
N נ nun ן nnnn nn נּ [nn] •
O • Special dead key (long vowels++)
P פּ pe(i)/fei ףּ pppp pp ףּ·[p] • ףפ [f], פּ = U+FB44 w/ dagesh [p]; but fei = p in all modern Hebrew!)
Q ק qof/kuf qqqq qk קּ [kk] •
R ר re(i)sh rrrr rʁ - • [ʁ] [ʀ]
S ס samekh ssos ss סּ [ss] • (but see sin/shin)
T ת tav tttt tt תּ [tt] • ת׳ [θ] th
U ט tet vy_u tt • טּ [tt]; u by shape; related to theta; Greek CmkPhon (IPA /θ/ [tˤ]); Shift+T? (Montdor)
V ו vav/waw wvvv vv וּ [vv] • וו or ו׳ [w]; [v/w] native/loanwords; Latin U/V/W/Y/O; Gr. F/υ
W ש shin Owsw *ʃ • w by shape; kyrillic Ш is LBr in Rulemak; AltGr+j is ʃ in Cmk[eD]
X ח chet/ḥet xxxx hχ - • [χ] x/ħ; (Gr. eta); sounds like chaf
Y • Special dead key (short vowels++)
Z ז zayin zzzz zz זּ [zz] • ז׳ [ʒ] ž
Final forms (often on Shift+letter; Wrapman uses separate keys):
C ץ tsadi fin. (צ) CCCj • U+05e5
M ם mem fin. (מ) MMMo • U+05dd Hebrew(il) uses o
N ן nun fin. (נ) NNNe • U+05df KU uses both N and o
K ך kaf fin. (כ) KKK; • U+05da
P ף pe fin. (פ) PPPf • U+05e3
Niqqud vowels (on AltGr/Shift+vowel? DKs? BiblicalHebrew-SIL mappings shown.):
a ַ a pata(c)h • U+05b7 ֲ U+05b2 hataf (reduced) patah – SIL AltGr+A
A ָ A kamatz/qamats • U+05b8 ֳ U+05b3 hataf kamatz – SIL AltGr+O
e ֶ e seg(g)ol (short e) • U+05b6 ֱ U+05b1 hataf segol – SIL AltGr+E
E ֵ E tsere/tzere haser (long e) • U+05b5 tzere male w/ yod or alef is the same sound
i ִ i hiriq • U+05b4 ִי w/ yod is hiriq male/yud (long).
o ֹ o (c)holam (male) • U+05b9
O וֹ O (c)holam (haser) • U+05ba וֹ used only with vav in combining ( ֺ) or combined (וֹ) form
u ֻ u kubuts/qubutz (short u) • U+05bb
U ּ = shuruk (long u) • U+05bc the same symbol as combining dagesh/mappiq! Used with vav.
; ְ ; sh(e)va/shewa/schwa • U+05b0 diacritic for fleeting/reduced (hataf) vowel; ultrashort when doubled; also [ə] or no vowel (Ø)
- ֿ _ rafe • U+05bf Yiddish/Ladino; used to be the opposite of dagesh
Interesting:
V? וו double-waw/VavVav • [w]; ו׳ (vav geresh) is also used; Yiddish; AltGr+V/W?; DK?
I? ײ yud-yud/YodYod • AltGr+yud; Yiddish; YodYod(Patah) on AltGr(Shift)+I; DK?
X? ױ vav-yud/VavYod • AltGr+chet; Yiddish; on AltGr+Shift+V?; lig. DK?
+S שׂ sin fW_W ss • sin/shin are the same w/ L/R upper dots/niqqud [on shift+S?]
+W שׁ shindot j?_W *ʃ • [ʃ] when using diacritics (on Shift+W?)
' ׳ / geresh ---' ' • U+05f3 ' by shape; also cantillation/chanting mark ֜ or ֝
" ״ : gershayim ---" " • U+05f4 " by shape; also cantillation/chanting mark ֞ (AltGr+", or DK)
@m ּ = dagesh (kal)/map(p)iq • U+05bc On bet/kaf/pe, but also gimel/dalet/tav in dialects; mappiq on alef/he used as consonants
@h ּ = dagesh hazaq/hazak • U+05bc Turns single consonant into double; gimel/dalet/vav etc.
4 ₪ NewSheqel • U+20aa On AltGr+4; also AltGr+S? (Euro on AltGr+e?)
- ־ - maqaf (hyphen) • U+05be hyphen by shape; same function as Latin hyphen
+ ﬩ alternative plus • to avoid writing a cross :-o
** LRM & RLM • U+200e/U+200f directional marks; Ctrl+[] are used elsewhere
. ̣ punctum (low) • U+0323 period
' punctum (high) • U+05c4
_ ‗ Hebrew double low line • U+2017 ??
Old:
, ֽ meteg • U+05bd comma by shape; long/short vowels in biblical Hebrew; stress marker
| ׀ paseq (separator) • U+05c0 not on modern keyboard so | is often used; old separator
: ׃ : sof pasuq (period) • U+05c3 not on modern keyboard so : is often used; old period sign
[ ׆ nun hafukha (punctuation) • U+05c6 [ by shape; a rare glyph from Classical Hebrew
Same in modern Hebrew as Latin: ,.?!()[]{}-= but periods may look like diamond 'punctum' in typefaces; U+0323 low or U+5c4 high; em-dash.
Do we need ’” right quote? Should parentheses be swapped due to RLM/LRM?
U+25CC mark base, U+200c zero-width non-joiner, U+200d zero-width joiner and U+034f character grapheme joiner are on the SIL layout
Also see the Colemak-eD-Heb EPKL layout which is where development of the HebMak layout is accomplished. The base layout file holds many informative comments.
The Biblical Hebrew SIL US Standard layout (version 1.5):
I like how this board makes room for the vowel niqqud, but for modern Hebrew they're at too common keys. There are four state layers!
https://studylib.net/doc/18565650/%D7%9 … ard-manual
The Kansas University Hebrew KU Homophonic layout:
"The KU homophonic keyboard attempts to reflect sound correspondences when possible"
https://egarc.ku.edu/installing-hebrew- … -windows-7
Linux XKB 'phonetic' layout (from Slackware il.map):
As done in Montdor's "Hebmak": https://github.com/DreymaR/BigBagKbdTrixXKB/pull/13
Final letters (e.g. kaph, nun, etc.) are typed by 'shift+<letter>'.
A [ hebrew_aleph , hebrew_aleph ]
B [ hebrew_bet , hebrew_bet ]
C [ hebrew_zade , hebrew_finalzade ]
D [ hebrew_dalet , hebrew_dalet ]
EY [ hebrew_ayin , hebrew_ayin ]
FP [ hebrew_pe , hebrew_finalpe ]
G [ hebrew_gimel , hebrew_gimel ]
H [ hebrew_he , hebrew_he ]
IJ [ hebrew_yod , hebrew_yod ]
K [ hebrew_kaph , hebrew_finalkaph ]
L [ hebrew_lamed , hebrew_lamed ]
M [ hebrew_mem , hebrew_finalmem ]
N [ hebrew_nun , hebrew_finalnun ]
Q [ hebrew_qoph , hebrew_qoph ]
R [ hebrew_resh , hebrew_resh ]
S [ hebrew_samech , hebrew_samech ]
T [ hebrew_taw , hebrew_tet ] // Tav/Tet
UVO [ hebrew_waw , hebrew_waw ]
W [ hebrew_shin , hebrew_shin ]
X [ hebrew_chet , hebrew_chet ]
Z [ hebrew_zain , hebrew_zain ]
= [ equal, plus, hebrew_doublelowline, hebrew_doublelowline ]
Reference chart of the Niqqud vowels (minus rafe). Note how they figure in their own names.
https://en.wikipedia.org/wiki/Hebrew_keyboard (in particular, look at the niqqud layout based on Linux Lyx?)
https://en.wikipedia.org/wiki/Romanization_of_Hebrew
https://en.wikipedia.org/wiki/Unicode_a … w_alphabet
https://en.wikipedia.org/wiki/Hebrew_punctuation
https://en.wikipedia.org/wiki/Niqqud
Some more thoughts and additions:
• The most frequent letters in modern Hebrew, according to https://www.sttmedia.com/characterfrequency-hebrew are:
– י (yod 11%), ה (he), ו (vav 10%), ל (lamed 7%), א (alef 6%), ר (resh), ת (tav 5%), ב (bet), מ (mem), ש (shin 4.4%).
– Then, ע (ayin 3.2%), ם(m) נ(g) כ(k) ד(d) ח(x) ק(q) פ(p) ס(samekh 2.1%) ז ג צ ט ן ך (0.8%).
• Neqqudot is the name of niqqud as used in poetry and children's books; includes sheva, rafe etc etc.
– There's a short and long version of each vowel, more or less (A/E/I/O/U)
– Chatufot/(c)hataf niqqud: With a shva, patach/segol(/hiriq)/kamatz (A/E/I/O) become fleeting/reduced, ultrashort w/ two schwa
– Map double-shva to Shift+shva, it's recommended
– There could be two DKs for these on vowel keys (E and O?), for short and long vowels. They could release each other's vowels.
– The Heb DKs could release other stuff too with consonants and symbols, making for a very powerful set.
• One reason to use Latin vowel keys for final forms, is that niqqud aren't always used and these keys are well placed.
– The final-form placements suggested are based on physical closeness on QWERTY boards though?
– Also, most phonetic boards seem to use Shift+letter for final forms. Taking it further, hazaq/dagesh forms can also go there!
• Place sin on Shift+S: It belongs there phonetically, and Shift+W can then be shindot.
• Use brackets for geresh and dagesh (and maqaf?)? These are common accents.
• Given vav's frequency it might actually merit two keys (VU). The same would ideally be true for yod/he/lamed/alef...
• Wrapman: Is there a rationale for your placements of sh'va and the hataf niqqud – and others?
– Would be nice w/ shva etc on the ISO key, but most Israeli keyboards are ANSI.
• https://jcuenod.github.io/bibletech/201 … rd-layout/ says hatef (short) vowels are nice to include!
• In the XKB Biblical SIL, there are many other glyphs. Ancient symbols and cantillation marks for singing Torah aren't needed for most.
• Wikipedia has this for cantillation(!):
Sof passuk ׃ paseq ׀ etnachta ֑ segol ֒ shalshelet ֓ zaqef qatan ֔ zaqef gadol ֕ tifcha ֖ rivia ֗ zarqa ֘ pashta ֙ yetiv ֚
tevir ֛ geresh ֜ geresh muqdam [de] ֝ gershayim ֞ qarney para ֟ telisha gedola ֠ pazer ֡ atnah hafukh [de] ֢ munach ֣
mahapakh ֤ merkha ֥ merkha kefula ֦ darga ֧ qadma ֨ telisha qetana ֩ yerah ben yomo ֪ ole ֫ illuy ֬ dehi [de] ֭ zinor ֮
• The XKB Biblical SIL number row:
<AE01> [ 1 , U0021, U05BD, U0597 ] //1, exclamation meteg revia
<AE02> [ 2 , U0598, U05A2, U05AE ] //2, zarqa atn. hafukh zinor
<AE03> [ 3 , U05A8, U0596, U0599 ] //3, qadma tipeha pashta
<AE04> [ 4 , U059C, U05A5, U05A0 ] //4, geresh merkha tel. gedola
<AE05> [ 5 , U059E, U05A6, U05A9 ] //5, gershayim mer. kefula tel qetana
<AE06> [ 6 , -- , U05AD, U059F ] //6, - dehi qar. para
<AE07> [ 7 , U05AC, U05A3, U05A1 ] //7, iluy munah pazer
<AE08> [ 8 , U059D, U059B, U0595 ] //8, g. muqdam tevir zaq. gadol
<AE09> [ 9 , U0029, U05A7, U0593 ] //9, parenth.R darqa shalshelet
<AE10> [ 0 , U0028, U05AA, U05AF ] //0, paren.L yer. ben yomo masora c.
<AE11> [ U05BE, U2013, U2014, U05BF ] //Maqaf, en dash em dash rafe
<AE12> [ U05BC, -- , U0591, U25CC ] //Dagesh - etnahta mark base
• When you speak of "most phonetic layouts" which ones do you mean besides the two I've looked at? Any that are in common use?
• Ideally, one should be able to glance at both modern, older and dialect Hebrew, while keeping Greek, Arabic, Syriac, Kyrillic etc in the side mirror.
• We should include dialect and other forms like dagesh/mappiq A/D/G/H/T; not sure what to do about dagesh hazak – go all out? As long as positions are empty...
• I might feel the need to continue this work with an Arabic and possibly other Aramæic Colemak variants later on. Consistency would help.
• Ergonomics does matter even for a phonetic layout. If it's horrible then people won't use it.
• Of course, phonetics go first but we have many choices to make too. So putting shin on J would probably be a bad idea. I'd actually like it on S but that's taken (B+K).
• I see, dagesh should only need to be on shift+B/K/P for instance then. This conflicts with the end forms of K/P. I actually suggest demoting the end forms to AltGr.
• Kaf needs both dagesh and the end form, so it could benefit from the end form on a separate key (and on AltGr of the main one) with dagesh on shift+keys.
• Your shift layer isn't altogether clear or obvious?
• Why not alternative plus on plus, that colon-looking thing on colon etc?
• Shouldn't double vav be on shift+V etc? I think that sounds more logical. More of a toss-up with the mixed forms; maybe AltGr for those?
• I'd put sin on Shift+w and shindot on AltGr+w in concordance with the KU layout which has sin on W from the looks of it.
]]>