* Update macros and keycode handling - Update NUBS_Z macro so it repeats when held down - Number row now uses numpad keycodes if Right Alt is being held - coding conventions and formatting update - switched to four-space indent - reformatted a block comment * Update readme files
2.3 KiB
@noroadsleft's KC60 keymap
- Table of Contents
- Base Layers
- OS Overlays
- Quake 2 Overlays
- Function Layers
- Other Layers
Layers 4, 5 and 6: Quake 2 _Q2
, Quake 2 Dvorak _QD
, and Quake 2 Console _QC
Accessed by holding either Fn
key and tapping the /?
key, then tapping 4$
These layers were born out of the confusion I have had trying to use the in-game chat and the console in Quake 2. When Quake 2 came out, alternate keyboard layouts weren't really a thing. As a result, all in-game text input is hard-locked to US QWERTY, regardless of what the operating system is using for its input method.
I'm attempting to solve this by some creative use of QMK's macro feature. The keycode in the System layer that enables these layers, GO_Q2
, is a macro that sets the default layer to the QWERTY layer, then turns the Quake 2 layer _Q2
on. The result is a partially-overwritten QWERTY layer, that has some keycodes with some creative layer switching.
When I hit the Enter
key (bound in-game to text chat), the macro keycode I've created sends the keycode for Enter
, then follows with enabling the Hardware Dvorak layer and its corresponding overlay. Now the game is in text chat mode, and my keyboard is in Dvorak. When I hit Enter
again, another Enter
keycode macro is sent, which sends the message, then the macro brings me back to the standard QWERTY+Quake 2 setup. Hitting Escape
instead runs a macro that cancels the sending of the message, and undoes the layers.
I have been testing this configuration for a few months. Sometimes I end up still in Dvorak mode without any text input systems (in-game chat or the console) running, but it pretty much always happens when I'm focused on the game, so I don't know the cause yet.
Layer 4: Quake 2
Layer 5: Quake 2 Dvorak
Layer 6: Quake 2 Console
Next Chapter: Function Layers