Goals (and current progress report), reading layout diagrams, “extra” keys. Do characters in layouts show all right?
Latin: Base layout,
most frequent accented letters, using prefix keys, mogrifiers.
Cyrillic: Base (Russian) layout,
second tier: Slavic,
XIX century Russian, and (some) Kazakh, third tier: (8859-5; base Church Slavonic;
X11-supported: Kazakh/Tatar/Ossetian/Chuvash/Udmurt/Komi/Yakut/Kalmyk/Bashkirian/Mari),
“exotics”: titlo-forms, 10ⁿ-combiners, etc, rest: ԡꙣꙥꚁ
.
Greek: Base layout, monotonic and symbols, polytonic,
numeric, longs and shorts,
Zodiak, Coptic and paleo-Greek.
Hebrew: Base layout, consonants, digraphs,
vowels, layout of the rest of characters,
cantillation, dial-a-niqqud. Difference with math Hebrew-symbols..
Accessing “companion” scripts without changing personality.
Symbols:
most frequent, morth by mogrifiers,
Currencies and Business symbols, fractions,
sub/superscripts,
math symbols with a lot of variants vs. the rest (Blue vs. Green),
arithmetic operations, arrows,
box-drawing characters, dial-a-dash and dial-a-whitespace,
nice dashes, dashes again, IPA/Zhuang tone marks, DOS cp437.
Math flavors of Latin: common, all double-struck/script/fraktur,
and more.
Compose
key: basics, 3 implemented flavors.
Examples.
The diagrams below illustrate the most basic ways to use the izKeys (ee-zee-keys) keyboard layout. How to access the other keys? The info may be extracted from the table summaries of layout of the Latin and Cyrillic personalities (but these tables do not explicitly list the heuristics…). For more information, see this (you may also want to inspect the documentation of the toolset used to generate this layout: here, and here, but they are currently in a complete disarray).
Here, we almost completely ignore the questions how to enter math/IPA/UPA symbols (about a thousand is possible!), and exotic Latin letters (more than a thousand of them) — let us just mention that the concepts/mneumonics helping one remember many of them are “mogrification rules”, “GreenKeys/RipeKeys” and “BlueKeys”. (The reasons for a character to appear on a particular key are listed in the mouse-popups when hovering on characters; these terms appear there. See also the popups for the column headers in this table.) With the exception of the last section, what we discuss here is restricted to the most frequent Latin letters, as well as input of Cyrillic/Greek, and of Business symbols.
When a certain key or key combination is undefined, the keyboard produces the visible bell symbol ♪
.
So one should not be surprised that this is the most frequent character in the diagrams below!
Remember that our keyboard layout are optimized for ease-of-remembering, not for ease-of-finger-movements. (We completely
ignore the “base row” and other terms of mechanics of finger movement. Anyway, it looks like “advantages” of keyboards optimized
for kinesthetic might be exagerrated anyway:
at least, more or less objective research is inconclusive.)
The diagrams are color-coded using outlines, character color, and character background. Outlines relate to mnumonic rules; green and blue outlines indicate that either mneumonics are based on the position of this character, or the characters are otherwise important, thus made easily guessable. On the opposite end, characters with brown outlines are hopeless to guess using heuristics, one must memorize them. The key assignment of characters with yellow outlines cannot be guessed immediately, but there is an approximate heuristic: it assignes a few possible positions to the character, so one can quickly find the needed key using 3–4 experiments; these heuristics are either explicitly mentioned, or related to sound/shape of character w.r.t. the Latin key it is put in.
We use white outline to indicate symbols
„ ‚“ ‘ ” ’« ‹ » ›‐ – — ― ‒ ‑〃 ‵ ‶ ‷ ′ ″ ‴ ⁗ ´ which were replaced by “surrogate” symbols in the typewriter age (sometimes called
the “Great Character Squeeze”; more about this
below).
In all diagrams, yellow characters denote prefix keys; other colors indicate visual bells, and
characters assigned to
AltGr
-keys (when many characters are displayed on the same key). The meaning of background colors is the same as in here
and here. This frame denotes
letters which have 3 case forms (lc/uc/titlecase); and this frame indicates that
the uppercase is encoded as two (or more) Unicode characters. Sometimes the whole key also has a special background color;
this indicates that the positioning heuristic is “based on diagonals” — more details below. Particular maps may also use
other colors — this would be explained near the diagram.
Some prefix characters come in pairs; the secondary one acts as the primary combined with AltGr
-inversion
of the following keypress — so PREFIX2 CHAR
acts as PREFIX1 AltGr-CHAR
. This is indicated by the
extra red outline on a with-Shift
-pair (or on the secondary prefix).
(See base Greek layouts for the examples.)
Trivia: to show this page correctly, one may need to install extra fonts (Deja vu,
junicode, Symbola; the standard release
of unifont
has a very good coverage, but it also [as of 2011] has a special glyph inserted [explicitly — instead of using
.notdef
!] for missing codepoints — and this
severely interacts with a choice of better fonts; use my release instead). Some fonts have some glyphs wrong (I have seen
wrong directions of arrows, wrong choice of OXIA vs VARIA, or DASIA vs PSILI — especially on ρ).
Sometimes one should better zoom in (Control-MouseWheel
, Control-+
, or from menu; Control-0
to return back) in browser to see details/differences of diacritic marks.
If some characters which may be entered with this layout are not included in any of installed fonts, they will be shown as boxes (empty, or with hex code inside). But if you cannot show them, they are probably not very usable to you anyway, right? If you do have fonts on your system which support these characters (put mouse on top of a character, and an explanation will pop up), read instructions how to fix this — at least in Firefox.
Note that each colored letter-diagonal contains exactly one vowel (outlined in blue); the diagonals guide the quick-access to the ¨,´,`-accented vowels (discussed in the next section).
Are the etched symbols on your keys very different? Tough luck… — you will need to mentally rearrange the diagrams
to suit your keyboard. (Keyboard drivers access keyboards
basing on key scancodes, which mostly depend on the position of the key, not on what is drawn on it.) The mneumonics used here
depend a lot on the etchings being as above. Trivia: ASCII encoding has SPACE and 94 other characters defined; this leads to 47 keys on the standard US keyboard
(2 characters per key). The main variation in layout is the position of the \|
key; sometimes
Enter⏎
/←Backspace
keys have a different shape, and this key is moved about to compensate. Trivia: the position of this key differed
on the initial XT/AT/Enhanced keyboards; apparently, keyboard
manufacturers think that this gives them a license to freely move it around…
ISO keyboards have one “extra” key. Above, it is the other key
\|
(shown here to the left of SPACE
). Its position varies a lot between keyboards;
sometimes it is marked as < >
; sometimes it is positioned to the left
of Z
; on many US keyboards it is omitted altogether. These
variations in position and markup do not matter — if the key is present, it behaves
as indicated; we do not put “important” characters at this position. Likewise,
Brazilian ABNT and
Japanese JIS keyboards have
yet another key on alphanumeric rows: on ABNT it is next to the right Shift
, on JIS next to Backspace
.
(Our diagrams do not show this key at all; for this layout, we do not plan to use it other than as a
Compose
key.)
AltGr
is pressed All accented letters in this diagram are also available on easier-to-remember multi-key sequences (starting with prefix keys); so remembering positions of the most of characters in this diagram is not required: they are needed only to speed up the typing.
Pay attention to the difference between letters
and symbols — we call them characters when we do not care about the distinction.
“Letters” are parts of words; all the other characters are “symbols”. Symbols with white outlines denote “no-nonsense variants”
of surrogate typewriter symbols "
, '
, `
, -
etc. (Trivia: With invention of typewriters,
many [tens?] of different symbols where jammed into one “surrogate” symbol to economize on the number of keyboard's keys;
essentially, surrogates make no sense standalone. For decades. we were forced to use surrogates and deduce
what was actually meant basing on context; nowadays, we can do better; see -This-,
“this”,
this′, this ″,
`that´,
‘that’ and T H A T.)
For this particular diagram: characters with green or blue outline are those for which people can immediately guess their position on keyboard. Since easily-guessable, these positions are a very valuable property, and are “set in stone” — they win in conflicts with other positioning heuristics. (Possible exceptions on guessability are ºª§; but if you saw the diagram above once, you have a good chance to guess them anyway. Euro € is at the position which is etched on many keyboards nowaday (compare with this discussion).
Trivia: in earlier versions of this keyboard, ·
and §
were on 7/& key; then I
discovered Blickensderfer No. 5 (1896)….
This was convergence in action! (But now I think that
√ is much too similar to 7 to miss an opportunity….)
On the opposite end of the guessability scale are letters with brown outlines: they take ad hoc positions which must be memorized. In between on the guessability scale are letters on the colored diagonals (two ⤡-diagonal on the left-hand side, and four ⤢-diagonals on the right-hand side) — they may be calculated using a simple rule. Each colored diagonal has one vowel on the “base” layer, and three ¨,´,`-accented variants of this vowel are put on 3 keys on the diagonal — from top to bottom.
Example: observe the red diagonal on the right with ü/ú/ù.
Unfortunately, this diagonal is the only “clean” example: the other diagonals contain letters which are “set in stone”,
so the by-diagonal rule loses. When a very important letter loses in playing chicken, it yellows (look for yellow outlines) and
is “bumped away” one position across the diagonal (preferably down, if possible). (Observe the red arrows!) The extremely rare letters ë
,
ỳ
and ï
are just discarded; the more frequent ì
withers and becomes brown-outlined.
Summary: How to type Blue/Green outlined characters may be guessed immediately. For no-outline characters on colored diagonals there is a very simple rule to locate them. If one also remembers the “bumped away” rule, one can locate 4 letters with yellow outlines. If one wants to quick-type the remaining 3 brown-outline letters (and no-outline symbols), one must memorize them.
Trivia: Did you notice ẞ
= upper-cased ß
? (These are different letters!)
Unicode has many wonders... (this link leads to an
extremely long thread!).
Why ê
is blue? It is the only set-in-stone accented vowel...
A remark on prefix key. The colored outline on the diagram indicates that pressing
AltGr-$
produces a prefix key.
It also shows that this prefix key is denoted as £
; but keep in mind that using the symbol £ here is just
a notational convention!
‘By itself”, a prefix key does not make any sense; so why did we use the “£
”? What is important to know is how to describe
succintly the semantic of “what it does with the following letter/symbol/etc”; one may ask what happens when it is followed by
space; and what happens when it is pressed twice? The answers are: it finds business-symbol/currency-symbol which matches best the given letter,
or modifies the symbol by adding a vertical line; it produces ␠
; it produces £
. Hence denotating
it as “£
” is a good heuristic.
In general, the prefix keys of this layout try to do likewise: when we denote a prefix key by a certain diacritic
mark, we want: prefix + a letter (or AltGr-letter
) produces the letter+diacritic with the diacritic as close
to “this notation” as possible; prefix + a symbol mogrifies the symbol in a way similar to the name of the diacritic
(say, acute
may make “with sharper corners” version of the symbol, and ring-above
may produce a “rounded”
version); following it by SPACE
produces the standalone diacritic character; and typing it twice produces the
corresponding combining character. (Moreover, one can produce more standalone variants by modifying SPACE
by Shift
or AltGr
; one can get more combining variants by prefix + '
— and one can
use Shift
/AltGr
on Shift
or '
.) (See this summary.)
The base layout of Cyrillic personality follows the only phonetic layout which has a remote chance to be called “standard” — one from X11. Letters with brown outline must be memorized. Positions of letters with yellow outline can be guessed with two tries (but if forgotten, they may lead to a [quickly going away] confusion):
The most important other thing to remember is that if a letter (say, Ю
) replaces ASCII
symbols (such as `
and ~
), the symbols are available via combination with AltGr
.
And Ъ
/Ё
are available also by combining AltGr
with Ь
/Е
.
(Compare with AltGr
-combined diagram below, after the next diagram.)
Base Cyrillic layout as visible from Latin personality after AltGr-Space
(so
“RipeKeys” replace shared
symbols; colors as in the previous diagram).
AltGr
Cyrillic layoutIn izKeys
layout, the cyrillic letters are prioritized into classes; the higher the priority, the easier is the
letter to key in. In the top priority class are modern Russian letters; one can enter them using only the Shift
modifier. The second-class citizens may be keyed in using an extra AltGr
-modifier. For third-class citizens,
one uses the AltGr-'
prefix; for the fourth-class citizens, the key after this prefix requires AltGr
-modifier.
Finally, there are certain “exotics”; they are entered with AltGr-^
prefix (possibly with AltGr
-modifier
on the next keypress).
One of the ideas of the izKeys
layout is that when the “priority class” of a letter is known, one should be able
to immediate guess
on which key this letter is present. (There are exceptions, but they are in a very narrow minority.) What remains is
knowing how the priority is assigned to letters; this is explained near the diagram of every class.
Here is the base Cyrillic face (essentially, consisting of Russian letters) with
AltGr
-bindings added in red. These second-class citizens are from the modern Slavic Cyrillic-based languages,
XIX century Russian, and Kazakh:
Color codes are as above; positions of the letters Ѣ,Є,Ә are artificial,
but still may be guessed on the third try, while positions of Ѓ and Ј must be memorized (heuristics:
Ѓ overflows down from Г=G; the position of Ј “is questionable”). For the rest of the letters,
if one knows that they are indeed prioritized to be on AltGr
-bindings, one can immediately guess
on which key. (And to know this is simple: all of the characters described above are present, except for
some Kazakh letters [Ғ Ң Ө Ү Ұ are available on “extras” Cyrillic layout — with Ғ overflowing left to F, and Ұ requiring AltGr
];
the only other characters present are Ԗ Ѡ Ѱ and PALOCHKA Ӏ.)
Prefix keys are in yellow. In addition to £ (which is Business-prefix=AltGr-$
— same as on Latin face), two
Cyrillic-specific prefix keys are: AltGr-'
introduces “extra” Cyrillic letters
(and fractions), and AltGr-^
introduces titlo-forms and “exotic” Cyrillic characters.
As usual, pressing the prefix twice produces the corresponding combining character: the stress mark and titlo.
AltGr-'
in Cyrillic personality; double-AltGr-SPACE
in Latin):
Letters with yellow overline are not in the most obvious positions, but at least there is some hope to remember some heuristics. This includes ҼҾ (Abkhazian CHEs) and ҒӺ (stroked GHE's) which “slided to the left” from Ч and Г, and Komi Ԋ on comma [;-].
This face contains the “leftover” characters of ISO 8859-5, Church Slavonic (except letters-titlo-form and powers-of-10), and the characters in flavors of ru on X11 (Kazakh, Tatar, Ossetian, Chuvash, Udmurt, Komi, Yakut, Kalmyk, Bashkirian, Mari). The iotized letters are of decreased priority; yet more penalized are latinized, with-diaresis, hooked, and stroked variants. (Of two letters competing for the same position, the more penalized one becomes red.)
The rules to enter fractions are very simple: AltGr-' DIGIT
enters a fraction with
the digit in denominator; AltGr-' Shift-DIGIT
does the same for numerator. If another
precomposed fraction with the same denominator/numerator is available in Unicode, add AltGr
modifier to access the other fraction. Example: there are four fractions with denominator 8: ⅛, ⅜, ⅝, ⅞
(in order of numerators). Now AltGr-' 8
accesses the first one, ⅛; pressing AltGr-' AltGr-8
accesses the second one, ⅜. All precomposed fractions can be entered this way (Example: ⅝, ⅞ may be entered via
digit-in-numerator AltGr-' AltGr-%
and AltGr-' &
).
The rule above is for Cyrillic personality. From Latin personality, either prepend switch-to-Cyrillic prefix AltGr-SPACE
, or
replace AltGr-'
with lCtrl-lAlt-:
or Menu-;
or rCtrl-AltGr-:
or lCtrl-Mnu-/
.
(Likewise, for “exotic Cyrillic” from Latin, one may use Menu-:
prefix.)
Trivia: there is another way to enter Unicode fractions: use superscript digits for the
numerator, subscript digits for the denominator, and separate them by FRACTION SLASH available via GreenKey Shift-SPACE /
(as well as on AltGr-/ SPACE
) to get something like ¹²⁄₃₅ (the very narrow “bounding box” of FRACTION SLASH ensures the nice look);
superscript/subscript digits are on Green/Ripe
, hence may be also entered with lCtrl-lAlt/ApplicationMenu
.
Titlo-forms, power-of-10 multipliers, and “exotics” (the prefix is AltGr-^
in Cyrillic personality; triple-AltGr-SPACE
in Latin):
Note the Shift
-trick: since titlo-forms
are not available in upper-case, we hijack the Shift
-position and put the titlo-form of an “extra” letter
(one on AltGr-' LTR
)
to AltGr-^ Shift-LTR
; see keys Ю
and Я
above.
Also, note exceptions: ◌ⷵ on S, titlo-Ꙉ (djerv) ◌ⷸ on D, ᴫ (small capital л) on L, and ᵸ on N (which is a “modifier letter”, not a
“combining letter”). Power-of-10
multipliers are available on the corresponding digit keys 3...8. (Trivia: all multipliers but “thousands” ҂ are combining.)
Ocular О's ꙨꙪꙬꙮ are on digits 1...3 according to their multiplicity (with or without AltGr
; note that here 3
means “many” ;-). In addition to these exceptions, yellow outlines are
on heuristically good ZEMLYA/DZELO Ꙁ/Ꙃ on 0, Ҹ which “slided left”, and Komi letters NJE/ZJE/DZJE on comma ;-) (here — and on the “extra” layer).
Trivia: Many paleo-Slavonic “exotics” were championed into Unicode by Balkan scholars; it is not surprising that the approach of these scholars was different from what was traditional for East and North Slavic studies. Nowadays there is a hope to get a consensus on how to transcribe North Slavic manuscripts into Unicode; see this proposal, its part II, and this page. (There is widespread misunderstanding of how to use еЕ/єЄ for paleo-Slavonic: these are for ”есть узкий/широкий”.)
Base Greek layout as visible from Latin Personality (on GREEN=Shift-SPACE
prefix, so
GreenKeys replace symbols):
Positions of Greek letters with brown outline must be memorized (heuristics: θ and Q are both O with an extra stroke; y is one half of ψ). The rest of base letters is guessable: either phonetically,
or, if conflicts appear, visually (the base letters coincide with the
Galaxy layout). Two green-outline letters pre-combined with diaeresis must also be memorized if one wants to enter
monotonic Greek; ;
and ?
give the Greek flavors (Trivia: the latter is deprecated — use the Latin ;
instead).
Trivia: the mixup of χ/Χ
(chi; on x
) and ξ/Ξ
(xi; on c
) is
unfortunate, but we choose it since it is shared by many other layouts.
Space Cadet and ChiWriter
did it in a more
logical way (see the picture), but it had a splitting of θ/ϑ and
σ/ς (instead of our ϊ/ϋ), and a “wrong” flavor of φ/ϕ.
Polytonic Greek is produced with 3 prefix keys \
, [
and ]
.
Pay attention to vowels (blue outline) above, one on every color-tinted diagonal; compare with this GREEK [
layout
(with AltGr
-bindings added in red):
(For a moment, ignore the key 3#
.) Observe that all characters have aspiration ῾ (visually similar to [
),
that the other accents depend on the row and color (black or red), and the base letter depends on the (colored) diagonal.
The rule: Prefix \
with a key on a “diagonal of a vowel”
produces the accented vowel: the row determines the accent:
the top letter row gives the polytonic variant ´ of acute accent (OXIA), the low letter row gives the grave accent ` (VARIA),
and the number row gives the circumflex accent ῀ (PERISPOMENI). The middle letter
row gives none (of these 3 accents). Combine the letter with AltGr
to obtain the combinations with diaeresis
(DIALYTIKA; applicable only to ι/Ι and υ/Υ) or iotization (YPOGEGRAMMENI=ͺ or PROSGEGRAMMENI=ι — on lower/upper case). To combine with aspiration, replace
\
by one of [
and ]
— depending on the shape of aspiration accent: ῾ (DASIA) and ᾿ (PSILI).
Rho ρ/Ρ takes aspiration signs as if it were a vowel; the corresponding “diagonal” contains the only key `
.
GREEK [ AltGr-@
produces ᾯ (here GREEK
is GREEN=Shift-SPACE
).
And here is why: @
is Shift-2
; due to Shift
, the result is in uppercase;
the key with 2
and
@
is on the green diagonal which contains the vowel ω/Ω; hence one gets an accented Ω. It is iotized (note ι-like diacritic below) since @
was combined with AltGr
;
the key with 2
and @
is on the number row, which adds the circumflex (and in Greek it looks like ~
);
finally, since we used [
“instead of” \
, this adds the aspiration ῾ (DASIA) looking like [
.
Observe the red symbols on the rightmost red diagonal: they
are standalone polytonic diacritics! (The diagram above is as seen from Latin personality; from Cyrillic one there are usual complications related to
many ways to produce ёЁъЪ — for example, the key #
does not
access number-symbol ͵ as it does from the Latin personality.)
Summary for standalone: to enter a standalone polytonic diacritic, pretend that you
put it on (non-existent) OMICRON-DIALYTIKA (in other words, the last key in the sequence should be AltGr-
on
a key in the rightmost red diagonal — the diagonal of .
DOT). What to do with DIALYTIKA/YPOGEGRAMMENI/PROSGEGRAMMENI which would require a “second”
AltGr
modifier? Replace it by Shift
! (Exceptions: removing this Shift
converts
the standalone PROSGEGRAMMENI to (surprise!) YPOGEGRAMMENI; and Shift
converts PSILI to CORONIS. There are
other ways to get combinations like DIALYTIKA AND VARIA: for example, by adding GRAVE to DIAERESIS via
AltGr-` AltGr-;
. Trivia: Note also that there is no standalone DIALYTIKA symbol; use the standalone ¨ DIAERESIS via
AltGr-; SPACE
instead.)
Numeral signs are accessible on keys 3
and #
. On the prefix /
they are “as expected”: 3
gives the lower one, and #
the “normal” one (duplicated on the prefix ]
).
(On the prefix [
this pair is inverted, to fight with ъЪёЁ-confusion in access from the Cyrillic personality.)
To join them, standalone monotonic diacritics ΄,΅ are available on AltGr-3
and AltGr-#
.
Macron and breve: Observe that by the rules above, GREEK \ LTR
with LTR
from
the middle letter row would produce an unaccented vowel. To avoid waste, they instead produce either a vowel with breve (VRACHY)
or with macron (vowels α/υ/ι may take them — the other vowels already have separate forms for shorter/longer variants),
or LUNATE variant symbol ϵ for ε (on d
). To get breve, proceed as if
you want to get unaccented vowel; to get macron, do the same on the next key to the right or left (so a/j/k
produce ᾰ/ῠ/ῐ, s/h/l produce ᾱ/ῡ/ῑ, and d makes ϵ). To clarify, here is the diagram of GREEK \
(observe also Zodiak symbols on Shift-NUMBERS
row):
Trivia: Numeration of Zodiak constellations starts on
the spring equinox; so the first 20 days of N
th month is in
the Zodiak sign number N-3
or N+9
. We put 10th,11th,12th signs on keys 0 )
, - _
and = +
; to get 13 for the price of 12, the sign ⛎ (for the not-Zodiacal but ecliptical constallation
Ophiuchus) is put on ~
.
Monotonic and “special” Greek letters can be accessed on the base face by combining with AltGr
. On vowels, this adds
tonos ΄ (acute accent). On consonants, it produces special forms (final, scientific etc) and archaic letters.
Here is the Greek face with AltGr
-bindings added in red (as seen from Latin, so with Green keys added):
Observe kai ϗ — this is one of exceptional cases when a lower-case letter is put in a Shift
ed position.
(As a case pair, kai is available via the “Coptic prefix” `
.) Note also that red letters with yellow outline
are guessable by simple heuristics (“one of the sounds” for stigma Ϛ, visual for the rest). (Moreover, digamma Ϝ is “on top of”
Ψ which “is a di-Y”, and we use ϔ as “the shifted variant” of ΰ.)
The prefix key `
allows one to enter Coptic (and multitude of others Greek-related symbols).
AltGr-t
, koppa Ϟ/Ϙ on AltGr-Z/C
and sampi Ϡ on
AltGr-x
);
j
,
fay/fai/FEI Ϥ on v
(or AltGr-f
);
AltGr-LTR
where the LTR
is the initial letter of the name on the Wikipedia page of 2012
LTR
is the first letter of the Unicode name for DEI/tee/ti Ⲇ and KHEI/khay/xai Ⲕ.
Here is the AltGr-GREEK `
layout with AltGr
-bindings added in red:
Note the Coptic dash (plus more dashes), DOS' dingbats for Control-range characters (on Shift-DIGIT
s,
and AltGr--
, AltGr-_
), and (obsolete) Zhuang tone marks on AltGr-DIGITS
(from 2 to 6),
and stroked + latinized ι/υ/λ as ᵼ/ᵿ/ƛ. Additional “semi-randomly assigned” AltGr-letters: Bactrian sho Ϸ on b; ½-H heta Ͱ/ͱ on 1;
yot ϳ on j; Pamphylian digamma Ͷ/ͷ
on g; san Ϻ/ϻ on m, ϒ on U, lunate sigmas ϲ/Ϲ on v, reversed lunate sigmas ͻ/Ͻ on o, reversed epsilon ϶
on e, kai's Ϗ/ϗ on q, (reversed) dotted lunate sigmas ͽ/Ͽ ͼ/Ͼ on r and y, and archaic sampi Ͳ/ͳ on n.
(inverted) Ohm Ω/℧ on W/w.
Trivia: Latin variants
of names of Coptic letters are not standartized; so we use 3 names: Unicode name in capital, and two lowercase names
from Wikipedia pages: of 2012/08 and of 2012/01. Since important for finding the positions, the remaining ones are:
SHEI/shy/šai ϣ, HORI/hoori/hori ϩ. (To simplify memorization, SAMPI/none/psis nše Ⳁ is also made available
on AltGr-p
.)
“Business/Currencies/Hooks/Added Vertical Line/Not+mogrify” layout (as visible from Latin personality after AltGr-$
):
Observe that all of ©®℠™℗
“Business” signs are in the obvious locations; so are Vietnamese ơ and ư (heuristic:
the $ sign has a hook on top right). All the currency signs of Unicode 6.2 can be entered by the first
letter of their name or the country name (but one may need to combine with Shift
or AltGr
).
Exceptions are YUAN[s],RIEL,RIAL,LIVRE TOURNOIS which are entered by the second letter. (Trivia: there are 3 signs for YEN (one latin,
and 2 ideographic), and 2 (ideographic) signs for YUAN.) The “principal” sign for both of them is available on y/Y
;
the remaining 2 signs for YEN are on AltGr-y/Y
, and both signs for YUAN are on AltGr-u/U
.
The remaining exceptions are the common currency symbols recognized by the shape, such as $
and £
.
Here is the same layout with AltGr
-bindings added in red (with letters outlined in green,
and business symbols in blue):
Note that zero-vowel Latin letters (schwa) are positioned on Z
. This convention (considering Z
and
0
as siblings) also influences other decisions made in design of this keyboard. Trivia: Do not confuse these Latin
letters between themselves (Azeri əƏ vs. African ǝƎ), or with similarly-shaped Cyrillic letter әӘ, or with IPA symbol
ə for schwa, or with THERE EXISTS
math symbol ∃. As a minimum, they sort differently, have different capitalization
rules, and their surrounding may be typeset differently by a smart enough typesetter. Similarity (or even identity) of glyphs has
very little relationship to “sameness” of Unicode characters.
<{[()]}>
.(As usual, yellow outline means guessable-with-a-few-tries characters, brown outline means that the position must be memorized.)
CONSONANTS are at the corresponding phonetic QWERTY
lower-case positions, except for
HET ח on H
(or slided right to j
)
and visually placed SHIN ש on w
and TET ט on u/T
.
(Trivia: two other “QWERTY” layouts, ZC and
Script, place consonants the same as our — with exceptions of TET and VAV
(one on v
) — and they mismatch at these positions.) If a final form exists, it is put on
Shift
-position; likewise for SIN/SHIN variants (with the corresponding combining dot put in
AltGr
-position). DAGESH/MAPIQ/SHURUQ must be memorized on Y
.
(Additionally, HOLAM FOR VAV is on AltGr-v
.)
The Yiddish digraphs are on AltGr-Shift
of the suitable key. Trivia: Only one of them, ײַ, cannot
be entered using Hebrew letters; it is put on more accessible AltGr-y
. The only other non-Hebrew sign,
JUDEO-SPANISH VARIKA is on AltGr-j
. Dotted versions of BET בּ, KAF כּ/ךּ, PE פּ/ףּ may be entered
with AltGr
(on the left-hand key, if the base letter is on two keys).
VOWELS (niqqud) are positioned phonetically (and according to their — vestigal — duration) on keys with the blue outlines.
Trivia: there are up to 5 durations per sound, ordered in decreasing order: one may consider SHEVA ◌ְ as the 4th form
of e
, and o
has 4 or 5 forms,
וֹ, ◌ֹ, ◌ָ/◌ׇ, ◌ֳ.
The first 3 niqqud are put on Shift/AltGr/Shift-AltGr
-vowel. The remaining (up to 2) are put on
AltGr/Shift-AltGr
of the key below the vowel.
So in the diagram above, it is the longest form which is visible on the Shift-vowel
(except for i
for which we cover one duration ◌ִ only; it is יִ which is put on AltGr-i
).
SLIDED VOWELS: In addition to its AltGr
-position, the secondary vowel point is also put on
Shifted
key below the vowel (observe the colored groups of
keys above). The shva-form of the vowel is (in addition to its Shift-AltGr
-position) on the key above
(or, if not possible, right).
Trivia: For o
, one can go neither above nor right. One tertiary form is already on A
(the ambiguous one); the
disambiguation form can be entered without AltGr
only on keyboards with an ISO key.
Likewise, we slide SHEVA yet more down of e
— to V
.
Except for RAFE, SHIN/SIN DOTS, QAMATS QATAN and HATAF QAMATS, all
niqqud may be entered on Shift-letters
. (Since RAFE may
be quite frequent in certain contexts, RAFE and QAMATS QATAN are made available on the
“102th” ISO key. Trivia:
according to
the stats here, HATAF QAMATS is the rarest of all niqqud.)
The diagram below illustrates the AltGr
-layout. The recipe above positions dotted/niqqud/Yiddish on the letter keys
(outlined in yellow). Additionally, on symbol keys the yellow outline is for characters positioned according to their role:
-, +, comma, dot
.
CANTILLATION MARKS are positioned visually (green outline on
symbol keys), or according to the first letter of Unicode name (blue outline) or the 1st-letter-of-the-2nd-word (green outline
on letter keys; also on SHALSHELET — which is put based on the 1st Hebrew letter, SHIN). If there is no more space for the mark,
the mark migrates along an arrow to the neighbor key (and gets a brown outline; only for GERESH and variants of
<,~
). Trivia: the Unicode names are
mis-transliterated.
DIAL-NIQQUD-BY-NUMBER: On AltGr
-digits, the niqqud is put “visually”, according to its “number of dots”.
Here we count in binary: T
of ◌ָ is counted as if it were
˙ ⁚ ˙; we count — of ◌ַ as merged 8 dots. (And ⋱ is counted as a diagonal in a 3×3 square, giving 9. ;-) Now note that 10
points of —: land it on 0, and that shva of SHEVA is counted both as a Shift
-variant of 2 dots, and — visually — as
=
. (And T
of ◌ׇ counted as 7 is just an exception.)
Annotation marks ◌ׅ, ◌֯, ◌ׄ also have brown outlines (on ?cC
). Punctuation is not specially
highlighted (since the rest is drawn with ◌). All Hebrew cantillation marks, punctuation and annotation marks are
present; those without outlines are duplicates — at more or less random positions. The reorder-control invisible characters are on
AltGr-Shift-6,7,8,9,0
(heuristics: ‸ separates, &
joins, * of CGI, “(” and “)” group and introduce order;
I know no standard way to
visualize them.)
Trivia: Handling of multiple accents on a consonant is not a responsibility of an input method (with exception of providing
CGJ); however, mention
this thread of 2003,
this summary of 2003, and
these experiments of 2012.
Below is a combined diagram of this layout with AltGr
-bindings added in red.
<{[()]}>
.Trivia: note that Unicode names for characters ([{}])
start with LEFT/RIGHT
, but the Unicode
defines their semantic (in BiDi context) to be OPEN/CLOSE
instead. In particular, when in Right-to-Left
context, the CLOSE
characters mutates their shape to ([{
, likewise for OPEN
to
}])
. This is called
BiDi mirroring.
A similar effect happens with < >
, but at least this reflect the names LESS/GREATER THAN
of these characters.
This layout follows the “logical” approach, not the “visual” approach: pressing Shift-9
enters the OPENING PARENTHESIS
, not the “character which looks like (
in Hebrew text”; likewise
for other mirroring characters. So to type “(WORD)” one types Shift-9 W O R D Shift-0
no matter whether
WORD
is in left-to-right or right-to-left script. Similarly, Shift-,
produces LESS THAN
,
and not the character which looks like <
in right-to-left context.
Green/Ripe
access and BlueKeys
In additition to its satellite faces (such as diacritic faces of Latin personality, or “extras” and “bizzare”
Cyrillic faces, or polytonic/Coptic for Greek), each personality has bridges to the other 3 scripts. These bridges
are intended for a quick entering of individual characters from another script; to enter a stretch of text in another
script, it makes much more sense to switch to the personality of that script (how such switching happens is OS-specific).
(For very short stretches, one may also consider the convenience access via keeping down appropriate
modifier keys [Application-Menu
etc]; see below.)
The prefix keys enabling the bridging are codenamed Green
and Ripe
: they are Shift-SPACE
and AltGr-SPACE
(also mneumonic as Left/Right). Pressing these prefixes repeatedly accesses also the “convenience
faces” (MathBlue, Business, negation etc). The personalities are ordered as
Latin, Greek, Cyrillic, Hebrew, and the prefixes
Green
, Ripe
and Ripe×2
accesses 3 “other” personalities in this order.
Repeated Green
accesses: (×2) MathBlue, (×3) Business,
(×4) Coptic. ×3-Repeated Ripe
accesses the “extras” Cyrillic'
-face. As an added convenience, the base layer
of the Green/Ripe
face is
also accessible via combining keyspresses with lCtrl-lAlt/Application-Menu
modifier key(s) (recall that Green
is
base Greek/Latin from Latin/Cyrillic, and Ripe
is Cyrillic/Greek from Latin/Cyrillic). These accessors
lCtrl-lAlt
and Application-Menu
match the mneumonic of Left/Right.
(Unfortunately, only the Base-layer and layers entered with AltGr
or Control-Alt
are controlled
by the CapsLock
; this excludes Ripe
.)
On symbol positions, the Green
and Ripe
faces differ from the scripts personality's faces: the
keys identical to the current script's keys (automatically non-alphabetical!) are replaced by special GreenKeys
and
RipeKeys
. This provides a quick way to enter special symbols.
Another way to access special symbols is via
BlueKeys
(available on 2×Green
). The principal difference between BlueKeys
and the
Green/RipeKeys
is that BlueKeys
are also sources for mogrification: for example, when macron mogrifier prefix is
followed by &
key, it cannot produce any reasonable result; so in addition to trying to mogrify &
, it also
tries to mogrify the corresponding BlueKey
, which is ∩
, producing ⩃
(the alternative
way ⩍
to combine horizontal line with ∩ is available on macron + AltGr-&
).
So the symbols which may be subject to extensive mogrification are put on BlueKeys
; the “unique” symbols
which won't be useful as sources for mogrification are put on GreenKeys
and RipeKeys
. The
heuristic for distinction between GreenKeys
and RipeKeys
is that GreenKeys
are more “mathematical” when RipeKeys
are more “typographical”; for an example, consider ·
and
…
competing for the “.
” position.
See example of GreenKeys
, of RipeKeys
.
Below is the MathBlue
face (which combines BlueKeys
[with blue frames], “operators”, math letters, and a few
“extra” characters) as visible from Latin personality:
Trivia: Note the difference between Hebrew-letter mathematical symbols (ℵ], (ℶ], (ℷ], (ℸ] and the Hebrew letters (א], (ב], (ג], (ד]. As a minimum, they are typeset in different directions (in this file, they are entered in the order (aleph]/(beth]/(gimel]/(dalet] and are surrounded by open-round/close-square parentheses); then this change of direction affects the symbols surrounding them (the parentheses in between Hebrew letters are mirrored, commas in between are typeset in the right-to-left order); and then most probably the application will take them from different fonts — and even if taken from the same font, they may have very different shapes/sizes since symbols are made look good when surrounded by Latin characters. Another comparison: ℵ₀, ℵ₁ vs. א₀, א₁. (Both examples are entered as: ALEPH₀, ALEPH₁.)
Application-Menu
(and other) modifiersFirst of all, the base layer of the Green/Ripe
faces is also
accessible via combining keyspresses with lCtrl-lAlt
or Application-Menu
modifier key (this enters base Greek/Cyrillic
in Latin mode, or Latin/Greek in Cyrillic).
(Unfortunately, CapsLock
is ignored with Application-Menu
.)
Second, arrows may be entered by combining this modifier
with 8 “direction keys” (arrows etc) on the numeric keypad. Shift
makes double-arrows; the wide key and
the high key (0 Ins
and Enter
) make double-sided arrows; the key in between (. Del
)
makes a long right arrow. One can use also “keyboard’s islands” synonims of these keys.
Third, the arithmetic operation keys on the numeric keypad are modified to become “elementary school” variants (÷×), or
with Shift
, “operator” variants (+
has no operator variant, so it becomes ∑). Since
−
and +
have no “elementary school” variants, these keys produce digit-wide dash, and
Hebrew “elementary school” plus ﬩.
Fourth, the numeric keypad with NumLock
enabled and AltGr
modifier produces box-drawing symbols
on digits 1–9, with horizontal line on the “wide” key 0 Ins
, and vertical line on its neighbor . Del
. Combine with
Application-Menu
to get double-lines, or/and with rCtrl
to flip doubling of vertical lines (heuristic:
the right Control-key controls doubling-of-the-symbol to-the-right). Example: with AltGr-rCtrl
the top row 789 produces ╓ ╥ ╖. (Easter eggish: removing AltGr
replaces double lines by bold lines: ┎ ┰ ┒! Currently.
single rCtrl
requires addition of lAlt-rCtrl
; with this prefix: removing NumLock
produces
wide-frame drawings, white/black frame without/with Shift
: ▗ ▄ ▖/▛ ▀ ▜ on 789.)
Fifth, the F
-keys with AltGr
modifier produce dashes (or whitespace when Shift
is added).
The dashes are ordered according to length, so 01234 produce soft hyphen, hyphen, n-dash, m-dash, long-dash ― (HORIZONTAL BAR
U+2015); the sequence is continued by paragraphos, which goes into other
obelism marks ⸏⸓⸎ (here F0
is another name for F10
). Near the right end are also
NON-BREAKING HYPHEN, HYPHEN-BULLET, FIGURE DASH and OVERLINE. The whitespace comes
in decreasing width: the F
-key Fk
produces
the whitespace of width about em/k
; the exception is F9
, which produces the “mathematical” ²⁄₉-em
space (Trivia: it is usually described as ⁴⁄₁₈-em), and F0=F10
, which produces the 0-width space (Trivia:
this is typically has a meaning of “word separator” used to make the line breakable at this place). The “unused” positions
F7
, F11
, F12
keep EM-QUAD, FIGURE SPACE (heuristic: it is near digits), and
PUNCTUATION SPACE. (Trivia: MathML to Unicode mapping
sends ¹⁄₁₈-em space to HAIR SPACE
, but watch what they do with negative spaces! Unicode tables say only that HAIR
SPACE is narrower than ⅙-em. Anyway, we put it on 8.)
Moreover, one can enter Hebrew with modifiers ApplicationMenu-rCtrl
.
Lastly, several multi-character strings may be inserted (the current key assignment is random, and selected
to simplify debugging of keyboard input in applications). Two variants of m-dash surrounded by tiny whitespace
are provided: one with narrow whitespace is on lCtrl-lAlt-comma
, to make whitespace yet more narrow add Shift
.
One-character long Plane1 string is on rCtrl-AltGr-slash
,
and two-character long Plane1 string is on lCtrl-lAlt->
; they enter 𝄞 and 𝄡𝄡 (G clef and doubled C clef).
One can also replace any of these lCtrl-lAlt-
by rCtrl-AltGr-
or by lCtrl-Mnu-
(except for lCtrl-Mnu-/
which conflicts with fractions prefix!).
Trivia: On windows, one cannot use prefix keys to enter mathematical letters (with very few exceptions — all available on
Green×2
— mathematical letters are not in BMP). To compensate, we provide alternative ways to enter them using
multiple modifier keys: AltGr-rCtrl-
enters Double-Struck (𝕢𝕨𝕖𝕣𝕥𝕪/ℚ𝕎𝔼ℝ𝕋𝕐/𝟙𝟚𝟛𝟜),
AltGr-ApplicationMenu-
enters Script (𝓆𝓌ℯ𝓇𝓉𝓎/𝒬𝒲ℰℛ𝒯𝒴), and combining all these modifiers enters Bold-Fraktur (𝖖𝖜𝖊𝖗𝖙𝖞/𝕼𝖂𝕰𝕽𝕿𝖄).
(Heuristic: Bold-Fractur is the more bizarre than either of Double-Struck or Script.)
Another heuristic for these assignment (and assignments below) is that rCtrl
adds (or removes) boldness, and
ApplicationMenu
adds (or removes) italic-ness; call them “B/I modifiers”. Go along these lines: in combination with these keys, AltGr
is
MathBizarre, and Bold/Italic/BoldItalic flavors of MathBizarre are Double-Struck/Script/Bold-Fraktur.
Trivia: Actually, Script and Frakture come in 2 flavors of boldness. Moreover, letter-symbols used
for “ISO-80000-2 tensors” (SansSerif-Bold-Italic) may be considered as “yet bolder” flavor of Double-Struck. To get these extra
flavors, replace AltGr
by lCtrl
. Heuristic: lCtrl
behaves similar to rCtrl
.
Unicode defines also multiple ranges of Latin mathematical letters, with just minor typographical variations. The utility of users entering them directly is questionable (except maybe for letters A,a,I which may appear both in plain English, and as math symbols; so they may win from explicit disambiguation; or — following the sensible practice mandated by ISO-80000-2 — use different symbols for letters d,e,i when they mean variables, and when they mean constants or operators; monospace math?). However, to debug the problems with different applications (not) working with the keyboard, it makes sense to assign distinct characters to as many combinations of modifiers as possible. Moreover, defining extra combinations should have no negative impact on applications and users, and should not have measurable impact on the system memory footprint.
To follow on these lines we define the following mappings; they are made as orthogonal as possible:
AltGr-
+ B/I modifiers: MathBizarre (𝔸/ℬ/𝕮);
lCtrl-
+ B/I modifiers: Bold-flipped flavor of MathBizarre (𝘼/𝓑/𝔔);
lAlt+AltGr-
: Math Latin monospace (𝚀𝚆𝙴𝚁𝚃𝚈);
lAlt+AltGr-
+ B/I modifiers: Bold/Italic variants of Math Latin (𝑞𝑤𝑒𝑟𝑡𝑦𝑄𝑊𝐸𝑅𝑇𝑌|𝐪𝐰𝐞𝐫𝐭𝐲𝐐𝐖𝐄𝐑𝐓𝐘|𝒒𝒘𝒆𝒓𝒕𝒚𝑸𝑾𝑬𝑹𝑻𝒀);
lCtrl+lAlt-
: Greek (θωερτψ);
lCtrl+lAlt-
+ B/I modifiers: Bold/Italic variants of Greek (𝜃𝜔𝜀𝜌𝜏𝜓/𝛉𝛚𝛆𝛒𝛕𝛙/𝜽𝝎𝜺𝝆𝝉𝝍);
lAlt-
+ B/I modifiers: unBold/unItalic variants of tensor = SansSerif-Bold-Italic (𝗾𝘄𝗲𝗿𝘁𝘆/𝘲𝘸𝘦𝘳𝘵𝘺/𝗊𝗐𝖾𝗋𝗍𝗒).
Note: Out of 18 additional Latin/Greek
mathematical alphabets defined by Unicode, this supports all but 2 Greek Sans Serif alphabets. However,
lCtrl+rCtrl-
combinations cause
several problems (likewise for lAlt-rAlt
combinations.
Trivia: The International standard layout rules are
Compose
keyThe idea of Compose
key is that to get a character, you punch this key, then enter a sequence of characters
which is “a natural representation” of the character (or another “natural identifier” of it). In other
words, you “decompose” the character into components, and the keyboard “composes” these components back. For example,
one could decompose á
into ' a
, and ŋ
into e n g
.
Currently, the Compose
key may be entering either using the “second extra key” in
the base region, or (temporarily) as Mnu-F12
, Mnu-Space
, or lCtrl-lAlt-Space
. There are 3 modes depending on how may times you punch
Compose
before typing the decomposition: X11's
standard .Compose
rules,
MathML entities, and RFC 1345 character mneumonics.
Of standard .Compose
rules, we support only those starting with Compose
(denoted as Multi_key
in the reference above), having no dead-keys, and being expanded to one BMP character.
Inspect also the
explanation of the “regular” part of .Compose
rules (look at end for entries with s
).
For entity names: if one is a beginning of another entity name, one must follow the shorter one by SPACE
.
(BTW, it may be
more useful to inspect entity names via the full list.)
The full list of RFC mneumonics is supported, as well as £ on E u
.
(Trivia: this list supports only a repertoir of the very old version of Unicode.)
One can replace Compose Compose Compose
sequence by Shift-Compose
(except for the version
of Compose
on the JIS/ABNT “extra-extra” key). In non-Latin personalities, instead of Latin characters in the compose sequences, one may
use the personality’s characters on the same keys (provided that this sequence is not already used; otherwise, one may need to
use honest Latin characters, entered via the Green modifier lAlt-LCtrl
).
[*] Currently it is unclear if the general rules may be shared by all the “application domains”. For example, to access our layout this way, one needs to know different “handfuls” of allocation rules for Ancient Greek than for Math Symbols.
This were the goals. Currently achieved (ranges as of Unicode v6.2; we do not count characters accessible via Compose
key):
Shift-SPACE
and ApplicationMenu
keys) comparing to US and Russian Phonetic keyboards;MATHEMATICAL SANS-SERIF
, APL DELTA/DEL
symbols (⍢ ⍔ ⍋ ⍒ ⍫), and digraphs not supported);ԡꙣꙥꚁ
[temporarily?] put on free slots in Business map);
from the Latin personality: titlo-chars, 10ⁿ-combiners and most esoteric chars need double-or-"special" prefix keys;Compose
prefix key based on std X11 Compose tables, MathML entity names, and rfc1345 codes;Application-Menu
modifier and Compose
);Not yet implemented, or lost by upgrades to other goals:
Green
keys were implemented);(The explanations below complement the character tables for the Latin and Cyrillic personalities.) The following three are “bridge” prefixes allowing access to other personalities (this list is for Latin personality; “Green/Ripe/Blue” explanations are here):
Shift-Space
Greek (AltGr=tonos/final/symbol etc), Superscript digits/symbols, “Green Keys”AltGr-Space
Cyrillic, “Ripe Keys”, Subscript digits/symbols, dashesAltGr-Space ×2
Hebrew {AND: iconic control-key symbols}
(for sub/superscript letters, follow by Ctrl-(Shift-)letter
— if your app allows this). Multiple presses
access some other useful stuff; we mention only:
Shift-Space ×2
MathBlue (“Blue keys” and common math flavors of letter)
This is for convenience access (if an OS/application does not allow entering AltGr
directly):
Shift-AltGr-Space
AltGr-inverted base face
;
Diaeresis, hook above [+subs-Vietnamese], “Blue Keys”, operators {AND: doubly-mogrified symbols, rotunda/squirrel/hook/curl, dot above+below, etc}"
Diaeresis, double-grave, double-struck capitals {AND: doubly-mogrified symbols, dot above symbols, dot+macron, stroke/swash, paleocontractions, etc}'
Acute [+ on horn], sharpen, add on right {AND: hooks, tail/leg/curl, turned} — overflows to/from the column on right`
Grave, unsharpen, squared, add on left {AND: reversed} — overflows to/from the column on left.
Ring above, dot above/below/dotless, rounded {AND: circled, amplified, insular} — overflows to/from the column on right,
Cedilla, ogonek, comma below {AND: visigothic/greekize/doubled-letters, whited mogrified} — overflows to/from the column on left^
Hat, Amplify, Whiten, Paleo, “other” mogrify {AND: smallcaps, loop/upturn/descender/bar/fishhook/turnaround/inverted-phonetic/dot-reversed} — overflows to/from the column on right6
Caron, breve, quasi-synonyms, n-Ary/Big {AND: arc/loop/check/belt/flourish/tilde-below/left-palatal-hook, insular/epigraphic, etc}~
Tilde [+ subst-Vietnamese] — overflows to/from the column on left̸
Stroke, cut-off, “other” phonetic {AND: Um, doubled letters, ŭ, dot above, double-overbar, but-not, fences}-
Macron, add horizontal line (or double line), phonetic, dashes (on digits etc) {AND: quill, right-hook, inv-breve, paleocontraction}$
Currencies, horn, add-vertical-line(s) {AND: double addleft/addright, “text” control-key symbols, etc}↑
Superscript (and MODIFIER LETTERS), Phonetic↓
Subscript (and MODIFIER LETTERS LOW), Small Caps, Legs→
Turnaround, inverted, reversed, turned, hooks (to the right)←
Hooks to the left (and palatal)
(The last group is also available from other personalities.)
The following four are available after Greek (pre-)prefix (Green
)
or with Green-modifiers (Ctrl-Alt-
); combining them with Shift
is equivalent to combining the
following keypress with AltGr
:
\
Polytonic greek Vowels by vowel-key-column, Rows=Circumflex/Acute/None-or-Vrachi-Macron/Grave, AltGr=iotization {AND: Zodiak, etc}[
As\
, with smooth aspiration]
As\
, with rough aspiration`
Coptic, Archaic Greek, Stroked/Latinized Greek {AND: dashes, cp437 “control-graphic”, Zuang tones}
The following two are available after Cyrillic (pre-)prefix (Ripe
):
'
“Bizarre” Cyrillic, fractions {AND: “other” iconic Control-Key symbols}^
Cyrillic titlo-forms, power-of-10 multipliers {AND: “exotic” Cyrillic}
From non-Latin personalities, use appropriate modifications: for Latin-specific prefixes, use Green prefix (or Green modifiers); prefixes which become “native” drop Green/Ripe pre-prefix; prefixes which remain foreign may use a different pre-prefix.
In the character tables for the personalities (Latin, Cyrillic, Greek and Hebrew), one can hover a mouse over a character, and a popup will explain which of the mogrification rules above was applied to produce this character.
Below, AltGr
is the right Alt
, Menu
is the application menu key (somewhere to the right of AltGr
),
lCtrl/lAlt/rCtrl
are left and right variants of the keys.
Whitespace separates prefix keys from other keys (prefix key should be released
before the next key is pressed); dash -
connects modifier keys
with the base key (modifier keys should be pressed down when the base key is pressed).
Everywhere, the modifier AltGr-
may be replaced by prefix Shift-AltGr-Space
.
On right, parentheses () are used only to indicate the baseline and whitespace.
One possible usage of these example is to get an overview what kind of stuff is accessible from the keyboard, and how (without regards to what is important and what is not). Another usage is to use this as a base to check how well your application supports keyboard input on Windows (e.g., Firefox v22 supports about 38% of these examples). The examples cover the Latin personality of the keyboard only.
AltGr-a ---> æ
Shift-AltGr-Space a ---> æ (Shift-AltGr-Space is a prefix equivalent to using AltGr-)
AltGr-( ---> ‘
AltGr-) ---> ’
AltGr-9 ---> “
AltGr-0 ---> ”
lAlt-lCtrl-a ---> α (Green)
Shift-Space a ---> α (Green)
Shift-Space AltGr-a ---> ά (Green AltGr)
Shift-Space Shift-Space c ---> ℂ (Green × 2 == Blue)
Shift-Space Shift-Space Shift-Space L ---> £ (Green × 3 == Business)
AltGr-$ L ---> £ (Business)
Menu-q ---> я (Ripe)
AltGr-Space q ---> я (Ripe; Or use Shift-AltGr-Space Space q)
AltGr-Space AltGr-Space a ---> א (Ripe × 2; Likewise, one can replace AltGr- as above)
Menu-rCtrl-a ---> א (Ripe²; not in Notepad)
AltGr-Space AltGr-Space AltGr-Space g ---> ӷ (Ripe × 3 == Extra cyrillic)
AltGr-/ = ---> ≠
AltGr-^ = ---> ≝ (Amplified)
AltGr-` * ---> ⋉ (AddLeft)
AltGr-" a ---> ä (Or Shift-AltGr-Space " a)
Shift-Space Shift-Space 2 ---> ∫ (Blue)
AltGr-; 2 ---> ∫ (Blue)
AltGr-^ 2 ---> ∬ (Amplified Blue)
Shift-Space Shift-Space AltGr-2 ---> ∭ (Blue AltGr; same with AltGr-;)
AltGr-^ AltGr-2 ---> ⨌ (Amplified Blue AltGr)
Menu-Right ---> → (Moves position in Notepad)
Menu-Shift-Right ---> ⇒
Menu-Insert ---> ↔
Menu-Delete ---> ⟷
Menu-Enter ---> ↕
AltGr-KeyPad6 ---> ┤ (With NumLock)
AltGr-Menu-KeyPad6 ---> ╣ (With NumLock; Menu=Double)
AltGr-rCtrl-KeyPad6 ---> ╢ (With NumLock; rCtrl=[flip]DoubleToRight)
AltGr-Menu-rCtrl-KeyPad6 ---> ╡ (With NumLock; Double and flip DoubleToRight)
Menu-KeyPad6 ---> ┫ (With NumLock; no-AltGr means Bold)
Menu-rCtrl-KeyPad6 ---> ┥ (With NumLock)
lAlt-rCtrl-KeyPad6 ---> ┨ (With NumLock; lAlt must be added to loner rCtrl)
lAlt-rCtrl-Right ---> (▌) (Draw a frame by whitespace on black background)
lAlt-rCtrl-Right ---> (▐) (Draw a frame by black on white background)
AltGr-F3 ---> — (3rd dash == em; not in Notepad)
AltGr-Shift-F3 ---> ( ) (⅓em whitespace)
Menu-F3 ---> — (3rd dash == em; not in Notepad)
Menu-Shift-F3 ---> ( ) (⅓em whitespace)
AltGr-Right n ---> ɳ (Hook; moves position in Notepad)
AltGr-Left n ---> ɲ (Hook; moves position in Notepad)
AltGr-Up i ---> ⁱ
AltGr-Down i ---> ᵢ
AltGr-Down I ---> ɪ (SmallCaps)
AltGr-Up AltGr-e ---> ə (Upgrade to phonetic)
AltGr-Right u ---> ᴝ (rotate; moves position in Notepad)
AltGr-Right AltGr-u ---> ᴞ (rotate; moves position in Notepad)
Shift-Space 1 ---> (¹) (Green)
Shift-Space Ctrl-(Shift-)i ---> (ⁱ) (Green Ctrl)
Shift-Space Shift-Space Ctrl-(Shift-)i ---> (ᴵ) (Blue Ctrl)
AltGr-Space 1 ---> (₁) (Ripe)
AltGr-Space Ctrl-(Shift-)i ---> (ᵢ) (Ripe Ctrl)
Shift-Space Shift-Space Shift-Space Ctrl-@ ---> ␀
AltGr-Space AltGr-Space Enter ---> ⏎
AltGr-Space AltGr-Space AltGr-Space Enter ---> ↲
Shift-Space Space ---> ␣
Shift-Space AltGr-Space ---> ⍽
Shift-Space Shift-Space Space ---> ␠
Shift-Space Shift-Space AltGr-Space ---> ␢
AltGr-Space Space ---> ( ) (NBSP)
AltGr-Space Shift-Space ---> ( ) (U+202f NNBSP ⅙em thin)
AltGr-Space AltGr-Space Space ---> ( ) (U+2009 ⅙em thin)
AltGr-Space AltGr-Space Shift-Space ---> ( ) (U+200A ⅛em hair)
AltGr-' Space ---> ´ (Spacing diacritic)
e AltGr-' AltGr-' ---> (é) (Combining-´)
AltGr-' Shift-Space ---> ʼ (2nd Spacing diacritic)
AltGr-' AltGr-Space ---> ʾ (3rd Spacing diacritic)
= AltGr-^ ' ---> (=̑) (2nd Combining-^)
= AltGr-^ " ---> (=͒) (3rd Combining-^)
= AltGr-^ AltGr-' ---> (=͡) (4th Combining-^)
= AltGr-^ AltGr-" ---> (=̽) (5th Combining-^)
AltGr-_ ---> — (m-dash)
Shift-Space _ ---> – (n-dash)
Shift-Space Shift-Space _ ---> ― (horizontal dash)
Menu-F12 ' a ---> á (Compose = as X11's .Compose)
Menu-F12 Menu-F12 I n t ---> ∬ (Compose × 2 = as HTML entities [MathML])
Menu-F12 Menu-F12 Menu-F12 D I ---> ∬ (Compose × 3 = as rfc1345 codes)
Menu-Space ' a ---> á (Compose = as X11's .Compose)
Menu-Space Menu-Space I n t ---> ∬ (Compose × 2 = as HTML entities [MathML])
Menu-Space Menu-Space Menu-Space D I ---> ∬ (Compose × 3 = as rfc1345 codes)
AltGr-rCtrl-C ---> ℂ (Double-struck)
AltGr-Menu-C ---> 𝒞 (Script)
AltGr-Menu-rCtrl-C ---> 𝕮 (Bold-Fraktur)
Shift-Space Shift-Space C ---> ℭ (Fraktur; happens to be on Green × 2)
[Using lCtrl instead of AltGr flips “boldness”; lCtrl-rCtrl does not work with some keys]
lCtrl-rCtrl-Q ---> 𝙌 (Tensor=Math Sans Serif Bold Italic)
lCtrl-Menu-Q ---> 𝓠 (Bold Script)
lCtrl-Menu-rCtrl-Q ---> 𝔔 (Fraktur)
lAlt-rAlt-q ---> 𝚚 (Math Monospace)
lAlt-rAlt-Menu-q ---> 𝑞 (Math Italic)
lAlt-rAlt-Menu-rCtrl-q ---> 𝒒 (Math Bold Italic)
lAlt-rAlt-rCtrl-q ---> 𝐪 (Math Bold)
lCtrl-lAlt-q ---> θ (Green=Greek)
lCtrl-lAlt-Menu-q ---> 𝜃 (Math Greek Italic)
lCtrl-lAlt-Menu-rCtrl-q ---> 𝜽 (Math Greek Bold Italic)
lCtrl-lAlt-rCtrl-q ---> 𝛉 (Math Greek Bold)
lAlt-rCtrl-q ---> 𝘲 (Math Sans Serif Italic)
lAlt-Menu-rCtrl-q ---> 𝗊 (Math Sans Serif)
lAlt-Menu-q ---> 𝗾 (Math Sans Serif Bold; not in Notepad)
lCtrl-lAlt-: 3 ---> ⅓ (By denominator via extra cyrillic)
Menu-; 3 ---> ⅓ (Same)
AltGr-Space AltGr-' 3 ---> ⅓ (Same via Ripe=cyrillic)
AltGr-Space AltGr-Space AltGr-Space 3 ---> ⅓ (Same via Ripe × 3)
lCtrl-lAlt-: Shift-3 ---> ¾ (By numerator)
lCtrl-lAlt-: AltGr-3 ---> ⅔ (By denominator, with larger numerator)
lCtrl-lAlt-: AltGr-Shift-3 ---> ⅗ (By numerator, with larger denominator)
Menu-F12 2 5 ---> ⅖ (Compose = as X11's .Compose)
Menu-Space 2 5 ---> ⅖ (Compose = as X11's .Compose)
lCtrl-Menu-/ 3 ---> ⅓ (By denominator; lCtrl-Menu-/ acts the same as lCtrl-lAlt-:)
Shift-Space w ---> ω
Shift-Space \ x ---> ὼ (no aspiration, diagonal of ω, bottom row=`)
Shift-Space \ AltGr-x ---> ῲ (same with iotization)
Shift-Space | x ---> ῲ (same with Shift-\)
Shift-Space [ x ---> ὣ (same as ὼ with aspiration)
Shift-Space [ AltGr-x ---> ᾣ (same with iotization)
Shift-Space { x ---> ᾣ (same with Shift-[)
Shift-Space ` g ---> ⲅ (Coptic γ)
Shift-Space ` AlgGr-g ---> ͷ (Coptic Pamphylian digamma ϝ)
Shift-Space ~ g ---> ͷ (same with ~ [which is Shift-`])
Shift-Space \ Shift-5 ---> ♌ (5th Zodiak)
Shift-Space ` Shift-5 ---> ♣ (0x05 in cp437)
AltGr-Space g AltGr-Space AltGr-^ a ---> гⷶ (Titlo-form of га)
Menu-g Menu-: a ---> гⷶ (Same)
AltGr-Space AltGr-^ 3 ---> ҂ (Cyrillic 10³ prefix — others 10ⁿ are combining marks)
lCtrl-lAlt-, ---> ( — ) (Typographically sound m-dash — surrounded by hair space)
lCtrl-Menu-, ---> ( — ) (Same)
AltGr-rCtrl-, ---> ( — ) (Same)
AltGr-rCtrl-/ ---> ( — ) (Typographically sound m-dash — surrounded by thin space)
lCtrl-lAlt-< ---> (𝄞) (Example string with 1 SMP char)
lCtrl-lAlt-> ---> (𝄡𝄡) (Example string with 2 SMP chars)