Pen laying on keyboard

The inadequate Windows keyboard layout

Your keyboard layout (“keymap”) is the map between your thoughts and the physical movements of your hands and fingers — whether it be on a touch screen or actual keycap-buttons — to the symbols, letters, and words you write out in digital formats. I’d like to discuss the shortcomings of the default keyboard layouts in Windows compared to Linux and macOS. It’s something you use everyday but you rarely think about.

The default US English keyboard layout on macOS can produce 213 different symbols compared to just 105 symbols on Windows. The layout on Windows doesn’t have any diacritical marks and is limited to ASCII punctuation marks. The alternative US International (Int’l) keyboard layout is better with 206 different characters including a wide range of diacritical marks and some additional punctuation marks. On Linux, there are a lot of different keyboard layouts with varying capabilities to choose from.

You can’t easily type dashes of varying lengths or typographic quotation marks with the US English keyboard layout. The US Int’l keyboard lets you type double angled quotation marks and single curved quotation marks, but not single angled- or double curved quotation marks. The US-Int’l layout is a great improvement over the default keyboard layout, but it’s full of compromises and omissions. The default layout on macOS and many layouts installed by default in most Linux distributions let you type out half a dozen different types of quotation marks, horizontal ellipsis, and dashes and a myriad of other punctuation marks.

The tools we have available to us for writing makes a difference in how we express ourselves. Rich punctuation may not ever have been important to the masses, but we’re all exposed to it every day through everything we read that has a little more thought put into it than a quick personal message. E.g. longer dashes are called “Gedankenstrich” (a though-stroke) in German and North Germanic languages. It’s used to mark a thought break or a subordinate clause in a sentence, in addition to the uses it has in English. Neither the German nor US-Int’l keyboard layouts include any dashes other than the hyphen-minus (or ASCII hyphen) on Windows, but there are at least two more dashes available on macOS and Linux layouts.

I sometimes feel like signing off on whatever message I’m typing to someone with “Sent from Windows” — drawing on the association from default mobile email client signatures, who all implicitly also apologize for and excuses typos and brevity. However, that wouldn’t actually be entirely fair. Windows 10 Mobile and Windows 10 shell on PC in tablet mode has an excellent touch keyboard which is as capable as the iOS and Android keyboards.

Native input methods

Even when the symbols aren’t available right there on your keyboard layout, you still have some other tools available for inputting symbols that are missing from your keyboard layout.

The Windows software/touch keyboard layout is much better than its physical counterparts when it comes to the availability of rich punctuation marks. I’m a slow typer with software keyboards, and I find it uncomfortable to repeatedly tap on glass surfaces to type out a long text. I just can’t seem to get touch-typing right without the physical knobs denoting the touch-typing starting positions. I much prefer typing on my mechanical Logitech G810 with actual tactile feedback. It’s a fairly quiet mechanical keyboard with some shiny rainbow light-effects, and I can type fast and accurate on it.

I’ve enabled the Touch keyboard button on the Windows taskbar, and sometimes use it to access punctuation marks using the mouse. It’s inefficient, but it’s a portable skill; that is to say: a tool I can get to quickly on all Windows computers without administrative privileges and installing additional software.

The only other built-in option is to use Unicode composition mode. This mode only works in some programs and it doesn’t even work reliably in Microsoft’s own programs. You can hold the Alt key pressed, and type out the four-character UTF-16 hexadecimal sequences representing the various characters you need. I’ve tried using this method but had trouble memorizing which letter–number combinations produced which symbols. I also got frustrated with how unreliably it works across first-party and third-party programs.

You can technically rely on Smart Quotes and other assistive typing technologies that substitutes your ASCII quotation marks and ASCII hyphens with quotation marks and hyphens where it thinks it’s appropriate. These tools aren’t universally available in all programs and different implementations behave quite differently from program to program. They’re also mostly limited to dealing with quotation marks and dashes. I personally find these “smart” assistive tools to be so dumb as to be nothing but a distraction.

Third-party keyboard layouts

You can create custom keyboard layouts for Windows using the Microsoft Keyboard Layout Creator tool. It’s a legacy program that “works” on modern day Windows as long as you don’t install it too deeply nested in your directory structure or include a space in its installation path. These issues aren’t really signs of low quality but rather emphasizes the tool’s advanced age.

Smashing Magazine commissioned Russian designer Ilya Birman to create a typography-friendly keyboard layout for Windows in . Since then others have attempted to recreate the macOS keyboard layout for Windows but only for English layouts.

I’m using a Norwegian keyboard with extra keys for some extra vowels, so none of the US-centric keyboard layouts work well for me. I’ve created my own Norwegian extended keyboard layout which has all the vowels, accent marks, and punctuation I need. It’s a cross between the two macOS and Linux keyboard layouts I use the most.

However, you can’t install third-party keyboard layouts in Windows 10 S edition. You also can’t persistently set a third-party keyboard layout as the default if you synchronize your Windows settings with other Windows PCs using OneDrive and Microsoft Account. The keyboard layout isn’t in the default list of available keyboards, so Windows will unset your custom keyboard and use another keyboard layout instead. You can work around the issue, but it adds up to extra work. You also can’t use a custom or even choose the keyboard layout used in BitLocker. These problems just highlight how little Microsoft cares about third-party keyboard layouts.

An interesting aside is that I found several more alternative keyboard layouts on the web for macOS than Windows. Even though the macOS layout offers more options by default than the Windows keyboard. I believe that having more symbols on the keyboard means macOS users are more aware of alternative keyboard layouts. It also raises questions about what the lack of exposure to rich sets of symbols does to how Windows users express themselves through their keyboards.

Conclusions

I don’t expect that Microsoft will make any changes to their keyboard layouts any time soon. Doing so would could change behavior and expectations regarding how and when keyboard shortcuts are triggered. Microsoft really doesn’t like disrupting their ecosystem of or compatibility with legacy programs.

That all being said, I still wish that Windows would include extended keyboard layouts with more compositing and punctuation options available. They don’t need to be the default to preserve compatibility with long-since discontinued software, but these writing tools shouldn’t be limited to people who use touch-based keyboards only.

This text was typed out as-is on a keyboard with the actual characters you see on screen. No assistive writing or typing tool — besides spelling and grammar aids — were used to produce this text. The ability to do just that was also what this whole text was all about. I couldn’t have written this text on Windows without third-party software or specialist touch-friendly hardware; whereas both macOS and Linux include all the symbols and punctuation marks used in this text by default.