Anymak
Holistic ergonomic keymap: same fingering on laptop and split keyboard, one-shot modifiers, SpaceFN navigation layer, bottom-row mods. Multi-language (EN/NL/DE). Kanata config provided.
Install / Use
/learn @rpnfan/AnymakREADME
| Article Overview | | |------|---------| | 🖮 Core Concept | What makes Anymak different | | ⏱️ Quick Start | Trying without learning | | 🗺️ Layers | Layer overview | | 📊 Analysis | Numerical/graphical evaluation | | ⚙️ Setup | Implementation Options | | 🔗 More | Resources & Related projects |
Anymak is a keyboard layout approach designed to significantly enhance typing comfort and efficiency. By rearranging keys and utilizing one-shot layer access and bottom-row mods, Anymak makes it easier to access common keys like Shift, symbols, and navigation shortcuts, while minimizing finger stretching. A major design goal is that the same comfortable fingering works on both a standard ANSI/ISO keyboard and a split columnar-stagger ergonomic keyboard — so you can use your programmable keyboard at your desk and your laptop on the go, with no meaningful adjustment needed.
Anymak is a versatile concept, compatible to be adapted to any alphanumeric layout. You can continue using QWERTY, Colemak, Graphite, or any other layout you prefer. My own implementation pairs the Anymak layer concept with a fully optimized multi-language alpha layout called "END" — optimized for English, German, and Dutch, with good support for French, Spanish, and Nordic languages. Together these form anymak:END. A ready-to-run Kanata configuration for Windows, Linux, and macOS is available for download here.
What Makes Anymak Different
Most alternative layouts optimize only the alpha keys — treating Shift, symbols, modifiers, and navigation as afterthoughts, if at all. Anymak addresses all of these as a unified system.
<img width="1500" height="1233" alt="anymak-concept_what_others_miss" src="https://github.com/user-attachments/assets/21381176-2fcf-42b6-b2de-806b11ae1e6e" />The following six design decisions characterize the holistic Anymak concept:
-
No held modifiers for text input
Shift and the symbol layer are both accessed via dedicated one-shot keys. You tap the layer key, then tap the character — no holding or hand synchronization is required. Text input is where speed really matters, and held modifiers hurt most. Using one-shot layer switching is less error-prone, more comfortable, and is a little bit faster even. To work seamlessly it is important that both Shift and Symbol layer keys are in easy to reach positions on the keyboard, which Anymak takes care of.
Note: In contrast timed approaches such as auto-shift might seem a good solution and indeed they are comfortable to use. But they disrupt the typing flow, especially for fast typists, and they must be tuned per person and per typing speed.
-
Navigation always within reach
Holding the Space key activates a full navigation and shortcut layer, accessible with either thumb from the natural rest position. No jumping around between small thumb-cluster keys. The layer includes arrow keys, Enter, Backspace, Delete, word-jump, Cut/Copy/Paste, Undo/Redo, tab management, Alt-tab, F-keys, and more. Because navigation is deliberate and slower than text typing by nature, the slight cost of a held key is not relevant here.
A single wide Space bar — present on every keyboard from laptop to split ergonomic — is all that is needed. This avoids overloading the thumb with multiple small 1u keys, which has well-documented ergonomic risks.
-
Modifier and layer keys always on the opposite hand
Shift, the symbol layer key, and the navigation layer on the Space key are each available symmetrically on both sides. This means the modifier key is always pressed by the opposite hand — maximizing hand alternation, eliminating same-hand conflicts, and giving the other hand time to get into position for the next keystroke.
-
Bottom-row mods that actually work
Ctrl, Alt, and Win/OS are on the bottom row as hold-keys. Because these are only triggered deliberately — never during fast text input — the timing conflicts that plague home-row mods simply do not arise. Shift is a dedicated key in the same row, making Shift+Ctrl and similar combos straightforward.
-
Identical fingering on any keyboard
The symmetrical hand position on the bottom row and the deliberate exclusion of the B-key position (in QWERTY) mean that the same comfortable finger positions translate directly between a standard row-stagger keyboard and a columnar-stagger keyboard — without any mental adjustment when switching between laptop and desk setup. A standard 3×6 layout with one main thumb key per side is sufficient; the concept also works on 4×6, split, and standard ANSI/ISO keyboards, and can be adapted to 3×5 with minor changes.
-
Holistic alpha layout optimization
The END alpha layout was developed with Shift and symbol layer key positions included as part of the optimization — something most layout optimizers and layouts do not consider. The result is that the full typing system, including layer access, navigation and modifier keys from the home-row position, is optimized together rather than in isolation.
Trying Out anymak:END Without Learning It
You can test anymak:END interactively by mapping it to your current keyboard layout. This helps you get a feel for the layout before committing to learning it.
Testdrive anymak:END here when you use QWERTY or a layout such as Colemak, Graphite or others. Choose 'Current layout' on the left side then! :-)
For QWERTZ users (German layout): anymak:END
For a more systematic evaluation, a word list and scoring spreadsheet can help you compare anymak:END against your current layout by rating how each word feels to type — a method that works for any two layouts you want to compare.
anymak:END — Multi-Lingual Keyboard Layout
END is my alpha layout developed to integrate into the Anymak concept. END stands for the 3 languages it was designed for ⇒ E = English, N = Nederlands, D = Deutsch.
The name END also hints to marking the final destination of my keyboard layout journey :-)
Note: END works well for English-only use. But derivatives optimized for other language combinations can be created using the tools and approach outlined in this article.
The Four Layers of anymak:END
| Layer | Purpose | Access Method | |-------|---------|---------------| | Base | Alphanumeric input | Direct key press | | Shift | Capital letters and common symbols | One-shot key | | Symbol | Extended symbols and dead keys | One-shot key | | Navigation | Arrows, shortcuts, F-keys, editing | Hold Space |
Diacritics: Umlauts, trema, and accents needed for German and Dutch are easily accessible (two keystrokes for ä). French and Spanish are supported as secondary languages. Other accents (ñ, ~, ', ^) are available as dead keys on the symbol layer (three keystrokes for é).
Layer Visualizations
The layout works identically on both standard ANSI / ISO keyboards and split columnar-stagger keyboards — only the physical key positions differ, not the fingering. Here an overview of the base layer on standard keyboard:
<img width="2332" height="1082" alt="image" src="https://github.com/user-attachments/assets/d051405b-d941-4ace-877c-84e794864eb5" />Note the symmetrical bottom-row positioning. The B-key position is intentionally unused to maintain the same comfortable finger placement on any keyboard type.
For clarity, the complete layer set is shown on a split keyboard layout below:
Numerical Evaluation
The metrics below show anymak:END is a well-balanced layout across multiple criteria. A key design goal was avoiding uncomfortable key positions, resulting in lower overall effort than comparable layouts.
Trade-off: Due to fewer keys being used, the same-finger bigram (SFB) count is slightly higher. However, these are predominantly favorable SFBs: strong fingers (index and middle) moving from top row back to home row — where the finger needs to land anyway.
Note: Color coding (green/red) is relative within each column, not absolute. Colors indicate ranking within the comparison group, not necessarily practical significance.
English
German
Dutch
Spanish
French
Graphical Evaluation
The graphics not only show the movements of fingers on one hand, but also gives numbers of the frequency of the used keys
Related Skills
node-connect
337.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
337.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.2kCommit, push, and open a PR
