Skip to content

Keyboard layouts that include characters needed for typesetting scholarly documents including Persian and/or Arabic according to Deutsche Morgenländische Gesellschaft (DMG)'s transliteration system.

Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


These keyboard layouts were created sometime between 2010 and 2011. The Windows version is unchanged since then but reportedly still works fine even for Windows 10. The Linux version has had to undergo some change, and, for now, consists of a simple Rakefile.

See below for installation instructions. PRs welcome!

How to use

The de_dmg layout began as an Arabic-only layout before some users wished for the ability to type other phonemes (such as the Persian or the Ottoman ) as well. Unfortunately, PC keyboards, even with using all four levels (no modifier key; with Shift; with Alt Gr; with Alt Gr and Shift) don't provide enough keys to accomodate all required combinations of letters and diacritic symbols. Therefore we decided to have a dedicated key for all symbols required for Arabic and combine that with having keys for the diacritic symbols to freely combine them with any desired letter.

This is what the layout looks like:


  • The first level (no modifier) is the default German QWERTZ layout, including all umlauts (ä, ü, ö) as well as ß.
  • The second level (Shift as the modifier) is the same, but with uppercase letters.
  • By using Alt Gr you reach the third level, which retains ¹, ², ³, @, , ~, |, , , ·, and as you might be used to. But it also has all of the Arabic phonemes (see table below) by putting the diacritized latin letters (mostly) to where their non-diacritized version are on the default German layout, (sometimes) on where the corresponding Arabic letter is on the US-based Arabic layout, and (in one case, unfortunately, with š being on the $ key), in a location that at least allows one to form a mnemonic hook.
  • By combining Alt Gr with Shift, you get the same diacritized latin letters, but uppercase versions of them.

Comparison table

From left to right, with one empty column between:

  • Level 1 (no modifier key)
  • Level 2 (with Shift)
  • Level 3 (with Alt Gr)
  • Level 4 (Alt Gr + Shift)
de_dmg de (ara) de_dmg de (ara) de_dmg de (ara) de_dmg de (ara)
^ ^. ذ ° °
' '. ` `. ʿ (ع) ˛.
$ š ¼
empty ½
empty ¬
ʾ (ء) ¸.
empty ł
t ŧ
u ū
i ī Ī
o ō ø Ō
a ā æ
s ſ
d ð
e ē đ
g ġ ◌̄
h ħ
g ǧ ◌̣. (underdot)
◌̇ (overdot) ĸ
l ł
◌̱ (underbar) ˝. ◌̬ (caron below) empty
å ^.
ˇ. (caron above)
empty » empty
x «
◌̄ (macron)
  • Note 1: Some cells show a symbol followed by a dot, for example "^.". Those are so-called "dead" keys where for anything to show up, the spacebar has to be pressed following the key.
  • Note 2: "Ḫ" is a latin letter "h" with a breve, not a caron, below. The diacritic symbol on the "ö" key, on the other hand, is a caron below.
  • Note 3: In order to combine a letter with one of the standalone diacritics provided, type the letter first, then, without hitting any other key, including spacebar, type the diacritic.

How to get


See the release page for installer files or just download the zip file directly, unzip, run setup.exe.

After installation, the DMG layout will be immediately available.


The following steps will all have to be executed in a terminal window. If you don't have experience with that or don't feel comfortable doing it, get a friend to do it. If she's got just a little bit of experience with Linux or another Unix-based operating system, chances are this will be easy for her.

Heads up: de_dmg will only work with Xorg/X11-based Linux distributions, which, as of September of 2021, is still the majority. The author does not yet use a Wayland-based system on a regular basis. If you require support for Wayland, please do open an Issue! Merge Requests are of course also always welcome :-)

1. Prerequisites

Debian-based (including Ubuntu and Linux Mint)

sudo apt install git rake xsltproc bash sed grep coreutils xkb-data

Solus Linux

sudo eopkg it git ruby libxslt bash sed grep coreutils

2. Download

git clone

3. Install

cd de_dmg/linux
sudo rake install
After Installation, the layout (called German (DMG); the name is not l10n'd!) will not yet be available. Logging the user out and back in again should suffice to make it appear, but depending on whether that causes X to restart or not, a reboot might be required.
Heads up: each and every time your system updates the xkb-data package, the files modified by the last of the above commands will have any changes removed from them, and de_dmg will have to be installed anew.


Please see for information on how you can help.


Keyboard layouts that include characters needed for typesetting scholarly documents including Persian and/or Arabic according to Deutsche Morgenländische Gesellschaft (DMG)'s transliteration system.





No packages published