Keyman keyboard "Egyptian Hieroglyphs"
Download
Encoding codes
This Keyman keyboard lets you type Egyptian hieroglyphs and their arrangement directly using Unicode (blocks U+13000-U+1342F and the Extended-A block U+13460-U+143FA).
The input method is similar to JSesh: you type a code in Latin letters and confirm it with the [Space bar] to have it converted into the corresponding hieroglyphic sign.
1. Entering individual hieroglyphs
A hieroglyph is always entered as code + [Space]. There are three ways to address a sign:
(a) By Gardiner sign code
Type the Gardiner-like code (letter + number, e.g., A1, D21, N35) and press Space. Upper and lower case both work (A1 and a1 give the same result).
| Input | Result |
|---|---|
A1 + [Space] | 𓀀 (seated man) |
D21 + [Space] | 𓂋 (mouth) |
(b) By transliteration in Manuel de Codage
Instead of the Gardiner-like code you can also type the predominant phonetic reading (transliteration) of a sign, e.g., nfr, anx, nTr, and press [Space]. As in JSesh, transliteration follows the Manuel de Codage convention, where certain letters stand for special transliteration characters, notably: A = ꜣ, a = ꜥ, i = ꞽ, y = ï (or y), H = ḥ, x = ḫ, X = ẖ, S = š, T = ṯ, D = ḏ.
Cycling through signs with the same transliteration
Several Gardiner-like signs can share the same transliteration. Typing the transliteration + [Space] inserts a prioritized (default) sign first. Pressing [Space] again replaces it with the next sign that shares the same reading, and so on, until the cycle returns to the first sign.
Example for the transliteration n:
| Input | Result |
|---|---|
n + [Space] | 𓈖 |
| [Space] again | 𓂜 |
| [Space] again | 𓇑 |
| [Space] again | 𓋔 |
| [Space] again | 𓋕 |
| [Space] again | 𓈖 (wraps back to the start) |
(c) By Unicode codepoint
As a last resort, you can also type a \ (backslash) followed by the last four digits of the hex codepoint of a sign in lower case, e.g., \3f88 for .
For the codepoints, see
- Basic set (U+13000-1342F),
- Expanded set (U+13460-143FA).
Code overview
For an overview of the transliteration and Gardiner-like codes, see the code table.
2. Control characters and special glyphs
Control characters are used to combine, position, and modify individual signs (quadrant placement, joining, enclosures, damage, rotation, etc.), similar to the composition operators in JSesh.
Note that, currently (state of 20 Aug 2026), only a single font supports control characters for the basic set of hieroglyphs only. Another font supports all hieroglyphs but no control characters. See §3 below.
Every control character is entered the same way as a sign: type its code and press [Space] to confirm it.
2.1 Joiners
| Code | Description |
|---|---|
: or vj | Vertical joiner |
* or hj | Horizontal joiner |
2.2 Sign insertion (quadrant position) and stacking
| Code | Description |
|---|---|
&ts or ts | Insert top start |
&bs or bs | Insert bottom start |
&te or te | Insert top end |
&be or be | Insert bottom end |
&mm | Insert middle middle |
&tm | Insert top middle |
&bm | Insert bottom middle |
## or + or om | Overlay middle |
2.3 Code segments
| Code | Description |
|---|---|
( | Begin code segment |
) | End code segment |
2.4 Blank & lost quadrats
| Code | Description |
|---|---|
.. or blf | Blank quadrat |
. or blq | Quarter quadrat |
// | Lost quadrat |
h/ | Half lost quadrat, horizontal |
v/ | Half lost quadrat, vertical |
/ | Quarter lost quadrat |
2.5 Enclosures: cartouche, ḥwt, srḫ, fortified ring, fortified enclosure
| Code | Description |
|---|---|
cb or < or <1 | Cartouche beginning |
ce or > or 2> | Cartouche end |
rcb or <2 | Reversed cartouche beginning |
rce or 1> | Reversed cartouche end |
hwtb or <h or <h0 or <h1 | Ḥwt beginning |
hwtbb or <h2 | Ḥwt beginning, bottom variant |
hwttb or <h3 | Ḥwt beginning, top variant |
hwtte or h3> | Ḥwt end, top variant |
hwtbe or h2> | Ḥwt end, bottom variant |
hwte or h> or h0> or h1> | Ḥwt end |
srxb or <s | Serekh beginning |
srxe or s> | Serekh end |
frb or <fr | Fortified ring beginning |
fre or fr> | Fortified ring end |
feb or <f | Fortified enclosure beginning |
fee or f> | Fortified enclosure end |
Enclosure connection controls
In order to connect the beginning and the end of an enclosure you need to signal the beginning and the end of the connecting lines. For example, type < eb … ee > to create a full cartouche.
| Code | Description |
|---|---|
eb | Beginning of connecting lines |
ee | End of connecting lines |
web | Beginning of walled enclosure lines |
wee | End of walled enclosure lines |
2.6 Damage shading overlays
Digits 1-4 indicate a damaged quarter of a sign: 1 = Top Start, 2 = Top End, 3 = Bottom Start, 4 = Bottom End. Combine digits to mark several damaged quarters at once.
| Code | Description |
|---|---|
#1, #2, #3, #4 | Single quarter damaged |
#12, #13, #14, #23, #24, #34 | Two quarters damaged |
#123, #124, #134, #234 | Three quarters damaged |
# or #1234 | Fully damaged |
Note that damage shading cannot be applied to quadrat groups (as in JSesh) but to signs only in Unicode for conceptual reasons. The codes like #12 effectively are equivalent to \shading12 in JSesh (not to #12 in JSesh).
2.7 Mirroring
| Code | Description |
|---|---|
\ or mir | Mirror horizontally |
2.8 Selected rotations via variation selectors
Caveat: Unlike in JSesh, there is no free rotation applicable to any hieroglyph in Unicode (due to technical restrictions in font implementations, state of early 2020s). Instead, rotated variants are registered for selected signs and selected angles. For a list of registered sign/angle combinations and the corresponding variation selectors, see the Unicode documents L2/22-012, L2/24-238, and StandardizedVariants.txt.
Rotation apart from these predefined cases is not possible.
vs1-vs7 select a predefined rotated variant of a sign. Alternatively, use \r / \R followed by the base angle.
| Code | Description |
|---|---|
vs1 or \r90 or \R90 | 90° |
vs2 or \r180 or \R180 | 180° |
vs3 or \r270 or \R270 | 270° |
vs4 or \r0+ or \R0+ | a single selected angle between 15-75° |
vs5 or \r90+ or \R90+ | between 105-165° |
vs6 or \r180+ or \R180+ | between 195-255° |
vs7 or \r270+ or \R270+ | between 285-345° |
3. Fonts included in the package
Unicode blocks supported by the keyboard are:
- Egyptian Hieroglyphs (basic block) ✓
- Egyptian Hieroglyphs Extended-A ✓
- Egyptian Hieroglyph Format Controls ✓
- Egyptian Hieroglyph Variation Selectors ✓
The following fonts are included in the package:
| Font / Download | Basic set v5.2 | Expanded set v16 | Format controls v12 | Rotations (VS) v15 | Rotations (VS) v16 | Comment |
|---|---|---|---|---|---|---|
| Egyptian Text github.com/microsoft/font-tools/ | ✓ | ✕ | ✓ | ✓ | ✕ | OFL |
| UniHieroglyphica github.com/thesaurus-linguae-aegyptiae | ✓ | ✓ | ✕ | ✕ | ✕ | OFL |
For an up-to-date overview, additional fonts, and possible newer versions, see here.
Credits
Created by Daniel A. Werning (BBAW) on behalf of the Berlin-Brandenburg Academy of Sciences and Humanities with contributions by Corvin Ziegeler (BBAW), based on
- a hieroglyphic keyboard by Andrew Glass (Microsoft, with kind permission)
- the keyboards United States-International Basic and German Basic by SIL International
- code matching table from JSesh project (ManuelDeCodage.java, signs_description.xml, 9 June 2026, with kind permission)
- frequency information from Thesaurus Linguae Aegyptiae project.
© Daniel A. Werning on behalf of the Berlin-Brandenburg Academy of Sciences and Humanities, 2026.
[Text: D.A. Werning]