A plugin for the Keyboardio Model 01 to ensure proper shifting technique.
Force the user to use both hands while shifting. Typing a capital A, for instance, requires using the right shift. Capital M, meanwhile, necessitates the left shift.
Proper typing technique helps to reduce RSI and other discomforts while spending many hours at the keyboard.
Holding both shift keys behaves like a shift-lock for as long as they're both held. This allows you to type IN ALL CAPS without giving your thumbs an obnoxious workout.
The plugin ignores the shifting rules if other modifiers (Control, Alt, or GUI) are also being held. Additionally, the user may enter a pseudo-shiftlock mode by holding both shifts.
To use the plugin, simply include the header and add it to the list of used plugins.
#include <Kaleidoscope.h>
#include <Kaleidoscope-ProperShifting.h>
KALEIDOSCOPE_INIT_PLUGINS(ProperShifting);
void setup() {
Kaleidoscope.setup();
}
The plugin provides the ProperShifting
object, with the following methods:
Enable the ProperShifting plugin.
The default behavior is
enabled
.
Disable the ProperShifting plugin.
This method returns
true
if ProperShifting is enabled andfalse
if ProperShifting is disabled.
ProperShifting will not work correctly with a plugin that injects shifts, such as SpaceCadet and Qukeys. This is because ProperShifting can only detect if shift has been pressed, not if it's been injected.
Additionally, ProperShifting is only active on layer zero. This is because momentary toggling of an alternate layer in order to input a shifted character (such as a curly brace in the default keymap) will sometimes result in the keyboard becoming locked in that alternate layer.