This keyboard layout adds accented letters (à ê ï ō ç ž), punctuation (— “ ”) and more to the standard QUERTY layout. Useful for those who want to shake their typewriter habits.
For those living in New Zealand, you can at last properly type Māori place names.
Unlike the standard international QUERTY layout, it does not do this by binding dead keys to characters like ' and ^. It’s almost impossible to program on such layout. Instead the AltGr modifier is used.
-
Accented letters, typed with the AltGr modifier. This generates precomposed characters.
key Accent ` Grave accent: è Shift + ` Tilde: ñ ^ Circumflex: ê Shift + ^ Caron: ě - Macron: ō o Ring above: å ' Acute accent: é Shift + ' Diaresis: ë , Cedilla: ç . Dot above: ȧ -
Non-ASCII quotes (“, ”, «, ») are mapped to the 3d and 4th positions on the various kinds of brackets.
-
Proper long dashes: use AltGr + -, - and AltGr + -, Shift + -
-
A few other mathematical characters and symbols, like ×, √, ©, etc.
-
Greek letters: Use AltGr + G, followed by a letter. The mapping follows the Symbol font.
-
The - and . dead keys also include a few punctuation characters (en-dash, ellipsis, arrows, …).
-
One of these dead keys followed by Space will produce a spacing mark, similar to what AZERTY does. I use the combining variants but that would be weird because they must appear after the letter.
See the list of all dead key combinations.
This layout uses a few combinations of AltGr + Letter, which may interfere with applications which use keyboard shortcuts of the form Ctrl + Alt + Letter, because of the quirky way AltGr is implemented in Windows.
- Setup full.zip contains the package generated by MKLC.
- Setup noG.zip contains the same layout, but without the dead keys on
G
andO
, in case these cause problems with hotkeys in applications.
To build yourself:
-
Get Microsoft Keyboard Layout Creator 1.4 (aka MKLC --- requires .NET 3.5). Although not updated anymore, and it still works on Windows 10. The generated installers sometimes crash after finishing installation but for now this doesn’t seem to have bad consequences.
-
Run the python script to generate the
.klc
files and matchingkeys.md
file. -
Open the
.klc
file of choice in MKLC and create a “DLL and Setup Package”. (qucmf
orqucms
prefix)
There are a few things to watch out for when modifying layouts:
-
A dead key plus Space should produce that dead key itself. Eg. AltGr + G is assigned to
γ
, andγ
, Space producesγ
. -
A dead key plus that same character should not be assigned. Pressing the dead key twice will normally produce that character twice. Or maybe I should just avoid assigning the same character as both normal key and dead key.
For this reason AltGr + G is not assigned to
g
: then we would haveg
,g
→γ
.The layout will not work properly with GTK+ applications if such combinations are there.
-
Some characters just don’t seem to work as dead keys. Noted so far:
–
(en dash). -
MKLC will not load your layout if a dead key is defined, but the DEADKEY section is missing.
-
MKLC will refuse to generate a setup package if your layout (with the same name) is currently in use. So go to settings and remove it first. And carefully keep the version string and description strings in sync, otherwise things will get very confusing in the control panel.
-
In general developing this thing is a PITA because Windows doesn’t handle updates to layouts well (in their defence it is a very unusual thing to do). To install a new version:
- uninstall current version
- reboot
- install new version
- reboot and cross your fingers
The layout itself (the Python source code and the input text files) is released to the public domain. The ZIP files contain the installer generated by Microsoft Keyboard Layout Creator. This program comes with its own license, but to the best of my knowledge distribution of the generated installer is allowed.