Module key

Source
Expand description

Smart key interface and implementations.

The core interface for the smart keymap library is key::System, and its associated key::Context, PendingKeyState, and key::KeyState types. Together, these are used to define smart key behaviour.

Modules§

automation
Automation (macro) keys.
callback
Keymap Callback keys
caps_word
CapsWord key(s).
chorded
Chorded keys. (Chording functionality).
composite
“Composite” keys; an aggregate type used for a common context and event. This module aggregates various crate::key::System implementations.
consumer
Consumer keys.
custom
Custom keys.
keyboard
HID Keyboard keys.
layered
Layered keys. (Layering functionality).
mouse
Mouse keys.
sticky
Sticky Modifier keys.
tap_dance
Tap-Dance keys.
tap_hold
Tap-Hold keys.

Structs§

KeyEvents
Events emitted when a key is pressed.
KeyOutput
Struct for the output from KeyState.
KeyboardModifiers
Bool flags for each of the modifier keys (left ctrl, etc.).
MouseOutput
Struct for the mouse output.
NoOpKeyState
A NoOp key state, for keys which do nothing when pressed.
ScheduledEvent
Schedules a given T with Event, for some Schedule.

Enums§

Event
Events which are either input, or for a particular System::Event.
EventError
Errors for TryFrom implementations.
KeyUsage
Enum for the different types of key codes.
NewPressedKey
Newtype for invoking new_pressed_key on the key for the given ref.
PressedKeyResult
Pressed Key which may be pending, or a resolved key state.
Schedule
Schedule for a ScheduledEvent.

Constants§

MAX_KEY_EVENTS
The maximum number of key events that are emitted by crate::key::System implementations.

Traits§

Context
Used to provide state that may affect behaviour when pressing the key.
KeyState
Implements functionality for the pressed key.
System
The interface for key System behaviour.