Personalized Keyboards
How to Customize Ergonomic Keyboards

Why you might want a customized keyboard, and what you can change.
Ergonomic keyboards can relieve much of the physical stress of long hours on the computer. However, that is only one of the reasons why this niche market has blossomed in the past decade. Much of their appeal can be attributed to the ability to not only customize every key but also to create multiple layouts for different apps, including for different applications, keyboard layouts, and languages. This previously unheard of degree of customization aids both ergonomics and efficiency, and tends to appeal deeply to open source users –who usually appreciate the ability to work in their own way. It also means that each person who uses a keyboard can have their own key map. Most companies have an online configurator, such as ZSA Technology Labs’ Oryx or Dygma's Bazecor, and the firmware can often also be customized in a text editor, or, in Keyboardio's case, in the Arduino IDE (Figures 1,2,3). But where to start the customization? Here are a few suggestions.


The first thing to remember is to make only a few changes at a time. Both two-fingered and touch typists are conditioned by hours at a keyboard. At the most, only a handful might use Dvorak or Colemak key layouts rather than the standard QWERTY. If you make too many changes at the same time, the effort to retrain can end in confusion. In fact, the confusion can be all the greater because a customized key might have a no longer have an accurate keycap or might be replaced by a blank. Customized keycaps are widely available online, and pictorial ones might help you remember them better. Just make sure that they fit your keyboard. Alternatively, you might keep a printout from a configurator next to your computer until you adjust or keep the configurator’s web page open.
A good place to start customizing is with the hardware keys. Most ergonomic boards have a layer from which you can move a mouse, set LEDs, and adjust sound. LED options are often plentiful, and many boards can set the lighting colors for individual keys or entire layers, both of which are another way to remember your changes. On many keyboards, entire light shows can be programmed. Dygma’s keyboards even have an underglow – dozens of LEDs that surround the bottom of the casing mainly for show. Because the LEDs have little effect on functionality, they are a safe place to begin your customization.
From hardware keys, you might move on to modifiers. For general editing you might want dedicated keys for opening and saving files. For applications, you might have an entire layer with keyboard functions for a commonly used application such as LibreOffice or GIMP. Such customizations keep your hands on the keyboard, and while saving one or two keystrokes may not seem like much, over a day’s work, you can save hundreds of keystrokes. Frequently used keys can be assigned to the thumb, the strongest digit, while less common ones can be assigned to the little finger, the weakest one. Other key assignments may be a matter of personal preference. On ZSA's Voyager, Moonlander, or ErgoDox EZ, a useful tool for planning is Heatmap (Figure 4), which records how often each key is pressed. From there, you can move on to macros.

Commonly Used Macros
Keyboard macros are simple scripts that offer more sophisticated functions. Because ergonomic keyboards run on open source software, keyboard manufacturers tend to borrow macros from each other, or at least their basic ideas. Dozens if not hundreds of macros exist, some with a variety of names.
Macros can be as simple as a string of characters and modifiers. Like AutoText in LibreOffice Writer, such macros are typically used to save commonly used snippets as such as an email address, phone number, or street address in order to minimize tedious typing. However, be warned: Keyboard macros are not encrypted, so they should not be used to store information such as credit card numbers. To prevent such usage, ZSA Technology Labs limits the length of character macros, but other manufacturers do not. Keyboards from other companies may be less restricted
Here are a few of the most useful macros to show what can be done with them:
- A combo configures two keys so that when they are pressed one after another, a third character or function is activated. For example, pressing the A key followed by the B key could be set to result in Page Down or Caps Lock, freeing up a key rather than assigning it to a relatively unused key. Other combos are possible but could become awkward. Similarly, combos that are common in spelling, such as L+Y are poor choices, because you might activate them accidentally.
- Space Cadet uses the left and right Shift keys to insert different kinds of parentheses – that is, regular, curly, and square brackets. For many users, Space Cadet combines three keys on an ordinary keyboard into one. However, the macro is specifically intended as a convenience for writers of code, who often use these characters to organize their code.
- Layer switching macros are needed to move back and forth between multiple layers. On many boards, three default layers are already set up and you can learn from them. Because layers are numbered, a useful place for them is the number keys or as the output of a Combo. You can either shift to another layer while a key is pressed on another layer or switch entirely to another layer. If you discover that you trapped yourself on a layer while you were customizing, unplug the keyboard and it will restart using the default 0 layer.
- Tap Dance (or Tapping or Super Keys) is likely the most useful keyboard macro of them all (Figure 5). In fact, ZSA Technology Labs’ graphical configurator makes it available on every key. Tap Dance defines the timeout for a tap on a key, after which the key is considered held. Using these definitions, different combinations of taps and holds can produce character or function. For example, one tap might be defined as Ctrl+C (Copy), a hold as Ctrl+V (Paste), and a tap plus a hold a Ctrl+X (Cut). By using Tap Dance, users keep their hands on the keyboard and potentially free up other keys for other purposes. One advanced use of this macro is to place the Shift, Ctrl, and Alt modifiers on keys in the home row: the A, S, and D keys on the left, and the J, K, and L keys on the right. This modification takes some adjustment, but has several advantages. To start with, it frees up the usual keys for these modifiers for other functions. Just as importantly, it reduces the movement of fingers and keeps them on the home rows, which considerably reduces the strain of typing. And because the fingers move less, it increases your typing speed once you adjust to it.

Most macros have four main goals: to increase users’ efficiency, to keep users’ hands on the keyboard, to minimize finger movement, and to free up as many keys as possible. However, how well a macro does any of these things depends on intelligent planning. One particular concern is which customized keys are next to another. For instance, if the Space key is placed next to a key for the Spell Check, a slip of a finger may open a dialogue window that needs to be closed before you can continue, interrupting your chain of thought. Fortunately, editing the firmware takes only a couple of minutes.
An Addictive Process
To those used to a standard keyboard, the idea that you can customize a keyboard takes some getting used to. Many begin by wondering why they should bother. But when they start to realize the comfort and efficiency of customizable keyboards, many change their minds. Even if they do not care to edit their keyboard themselves, they may want to hunt down others’ layouts that are available online. Moreover, once they make their first customization, a cascade of others is likely to follow.
For example, I started with separate keys to Cut, Copy, and Paste. After a few months, I added Undo and Redo on a single key, and Save and Save As on another. As the years went by, I switched another few keys about for convenience. Numerous keys specific to LibreOffice Writer followed: Find, Replace, Page Break, Navigate, Preview, Spelling, and others. The only reason I did not add more was that every item in the Writer menus has a key combination – although some day I might add them in Writer. Meanwhile, a few weeks ago, I shifted all my modifiers to the home row of keys, which gave me more keys to add Writer functions to. As I type on a ZSA Moonlander, 30 of its 70 keys are customized on the default layer. Obviously, that’s obsessive, yet to return to an unmodified QWERTY layout would feel like a hindrance now.
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

News
-
AerynOS Alpha Release Available
With a choice of several desktop environments, AerynOS 2025.08 is almost ready to be your next operating system.
-
AUR Repository Still Under DDoS Attack
Arch User Repository continues to be under a DDoS attack that has been going on for more than two weeks.
-
RingReaper Malware Poses Danger to Linux Systems
A new kind of malware exploits modern Linux kernels for I/O operations.
-
Happy Birthday, Linux
On August 25, Linux officially turns 34.
-
VirtualBox 7.2 Has Arrived
With early support for Linux kernel 6.17 and other new additions, VirtualBox 7.2 is a must-update for users.
-
Linux Mint 22.2 Beta Available for Testing
Some interesting new additions and improvements are coming to Linux Mint. Check out the Linux Mint 22.2 Beta to give it a test run.
-
Debian 13.0 Officially Released
After two years of development, the latest iteration of Debian is now available with plenty of under-the-hood improvements.
-
Upcoming Changes for MXLinux
MXLinux 25 has plenty in store to please all types of users.
-
A New Linux AI Assistant in Town
Newelle, a Linux AI assistant, works with different LLMs and includes document parsing and profiles.
-
Linux Kernel 6.16 Released with Minor Fixes
The latest Linux kernel doesn't really include any big-ticket features, just a lot of lines of code.