Skip to content

Latest commit

 

History

History

MSKLC

DreymaR's Big Bag Of Keyboard Tricks - EPKL


Microsoft Keyboard Layout Creator, alias MSKLC

The files in this folder aren't for EPKL but for Microsoft's MSKLC program.

  • MSKLC setup packages is the standard Windows way of implementing and installing system keyboard layouts.
  • I actually use both a MSKLC layout (see the enclosed .KLC file) and EPKL on my computer.
  • This is because EPKL, while very powerful and versatile, doesn't always play well with low-level keyboard things.
    • These include command interpreters such as the WSL Bash one and Windows PowerShell, and many games.
    • EPKL sends state mapped glyphs as Key Down-then-Up events, so repeats will contain Up events which may mess up gaming.
    • To keep things smooth, EPKL can auto-suspend itself whenever these programs are active. See the EPKL_Settings file.

  • MSKLC can be installed from Microsoft's Download Center. With it you can look at existing Win layouts and make new ones.
  • The installer needs the Microsoft .NET Framework v3.5 (not the latest version), so get and install that first.
  • This is Microsoft's own tool for generating installable layouts. It was made chiefly for creating QWERTY locale variants.
  • As such, it's a bit limited and confusing. Actually, the underlying code can do a lot more but the user interface has limits.
  • One such limit is that VK (VirtualKey) codes aren't shown in the GUI. These affect system shortcuts such as Ctrl+<letter>.
  • If you dabble in layout editing with MSKLC, you may have to edit your .klc file directly to get VK codes right.
  • For a good guide to basic and advanced MSKLC usage, see Henri's MSKLC Guide.
    • In Henri's guide you'll also learn to do advanced stuff like swapping system keys (e.g., CapsLock-to-Backspace).
    • If you're eager to map CapsLock to Backspace though, please do consider that EPKL's Extend is a whole lot better!!!

  • NB: RESTART REQUIRED!!!
  • I apologize for shouting, but even though I've mentioned this further down the page, it's still the most common MSKLC beginner's mistake.
  • So please: Before you go and ask what's wrong with your file or something, make sure you did a full system restart after installing.
  • If it still doesn't work after a restart, consult the rest of this page and Henri's guide for more info.

Colemak-eD for MSKLC

Included are MSKLC installs for my Colemak-eD mappings, both for vanilla Colemak and the Cmk-CAWS ergonomic layout variant.

  • What you'll get is Colemak with most of the Colemak[eD] AltGr/deadkey layer mappings.
  • The CAWS variant uses the Curl(DH), AngleWide and Sym ergonomic mods.
  • The Angle mod used is the simple ISO-Angle mod for the ISO install, and the most common ANSI-Angle(Z) mod for the ANSI install.
  • I cannot add all possible ergo mod and variant combinations as easily as with EPKL, since KLC layouts aren't modular in nature.
  • If you wish another variant you could move the keys around in the relevant .klc file and compile it as described above.
    • For that, I'd recommend changing the SC codes at the start of the mapping lines for moving keys around. Avoid duplicates.


Colemak-CurlAWideSym on an ISO board, ground state

Colemak-CurlAngleWideSym layout, alias Cmk-CAWS, on an ISO keyboard.
Ground state. The œ key is ISO-only; on an ANSI board that positions holds Z.


Colemak-CurlAWideSym on an ISO board, AltGr state

Colemak-CurlAngleWideSym layout, alias Cmk-CAWS, on an ISO keyboard.
AltGr state. Dead keys marked in yellow.


Installing a MSKLC Layout

  • To install a layout from a .klc file, it must first be compiled using the Build DLL and Setup Package menu option in MSKLC.
  • First, you may want to set its default folder to something else than the default My Documents (lower right button).
  • To install a compiled layout, run the setup.exe program in its folder. Setup will choose the right .msi and .dll for you.
  • The keyboard verify log may well give a lot of warnings about glyphs being defined twice etc; these don't matter.
  • If you have the layout already on your system – let's say you've edited it a little – you must uninstall it before compiling.
  • NOTE: You have to restart your computer before you can choose the newly installed layout! Really!

  • Now you can select the new layout from Language preferences (in the tray menu if you have the Language Bar active)
  • To see the settings for keyboard layouts in Windows 10, go to the Settings -> Time & Language -> Language settings screen.
    • To activate the language bar: Language -> Keyboard [icon] -> Language bar options (depending on Win version)
    • To see an installed layout: Language -> <your layout's language, such as English (United States)> -> Options -> Keyboards.
  • To easily switch between active layouts: Hit Win+Space.

Uninstalling a MSKLC layout

Sometimes a KLC install can go wrong. That can even mess up your computer, so beware.

  • First of all, to activate an install you need to restart your computer. Do that immediately after installing.
  • Secondly, system updates have been known to mess things up with KLC layouts. Again, various tech problems have been reported.
  • Here's how to uninstall an installed Windows layout in case you should need to do so:
    • First, make sure it isn't added anywhere in the locale settings:
    • Hit the Win key → type Settings → select Time & LanguageLanguageEnglish (US) or whatever it used → Options
    • Under Colemak-Something, press the Remove button. This deactivates the layout but doesn't actually uninstall it.
    • Next, uninstall it as you would any other program:
    • SettingsApps & Features → Colemak-Something → Press Uninstall
  • Restart Windows

Technicalities