Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/TyberiusPrime/KeyToKey
/ types & classes
Types & classes
53 in github.com/TyberiusPrime/KeyToKey
⨍
Functions
160
◇
Types & classes
53
Interface
AcceptsKeycode
Trait for things that can be converted to a u32 keycode ie. various integers and (usb) KeyCodes themselves
src/key_codes.rs:345
Interface
Action
A callback used when one single action is needed examples: Leader invocations. Notably implemented on &str, so you can just pass in a &str to be sen
src/handlers/mod.rs:58
Class
ActionAbort
src/premade.rs:288
Class
ActionHandler
Enable/disable handler (layer) on activation/deactivation for use with PressRelease, StickyKeys, OneShot, SpaceCadet Can also be used with Modifier::
src/premade.rs:89
Class
ActionNone
Abort all event handling, throw away remaining events, unset all modifiers and enable/disable handers as requested by handler_overwrite
src/premade.rs:283
Class
ActionToggleHandler
toggle a handler on activate do noting on deactivate probably only usefull with PressReleaseMacro used by toggle_handler()
src/premade.rs:12
Enum
AutoOff
src/handlers/layer.rs:20
Class
AutoShift
Shift keys if they're pressend beyond threshold_ms supposedly for RSI sufferers - this implementation has not been used in daily usage yet.
src/handlers/autoshift.rs:11
Interface
Checks
src/test_helpers.rs:169
Class
CopyPaste
Handler for turing Copy/Paste/Cut Keycodes into 'universal' Ctrl-Insert, Shift-insert, shift-delete keystrokes for dedicated copy paste keys 0
src/premade.rs:238
Class
DebugStream
Debug a keystream at any point in the handling by adding a DebugStream with a callback that knows how to write something. Omits Timeout Events, does
src/handlers/debug_handlers.rs:81
Class
Debugger
src/test_helpers.rs:147
Enum
Event
src/key_stream.rs:26
Enum
EventStatus
src/key_stream.rs:32
Enum
HandlerResult
src/handlers/mod.rs:45
Class
InverseActionHandler
Disable/enable handler (layer) on activation/deactivation for use with PressRelease, StickyKeys, OneShot, SpaceCadet Can also be used with Modifier::
src/premade.rs:111
Class
Key
src/key_stream.rs:3
Enum
KeyCode
src/key_codes.rs:10
Interface
KeyCodeInfo
src/key_codes.rs:382
Class
KeyOutCatcher
src/test_helpers.rs:11
Class
Keyboard
the main keyboard struct add handlers wit add_handler, then call add_keypress/add_key_release/add_timeout to start processing keys.
src/lib.rs:105
Class
KeyboardState
src/lib.rs:39
Class
Layer
A layer either rewrites a key to another one or outputs a string upon key release. It does this for multiple mappings at once, and it can consider th
src/handlers/layer.rs:46
Enum
LayerAction
src/handlers/layer.rs:9
Class
Long
src/handlers/longtap.rs:85
Class
LongTap
Handler that does one thing on a short tab, and another on a long tab with a configurable threshold Action happens on release Note that this is a si
src/handlers/longtap.rs:16
Enum
Modifier
src/lib.rs:28
Class
MyAction
src/handlers/oneshot.rs:386
Interface
NonLayerAction
an Action For example by a leader sequence or a tap dance. Contrast with LayerAction which is a superset of Action Notably implemented on &str, so y
src/handlers/mod.rs:106
Interface
OnOff
A trait for callbacks when an on/off action is needed Used by PressReleaseMacros, StickyMacros, OneShots see PressReleaseMacro, StickyMacro
src/handlers/mod.rs:92
Class
OneShot
A OneShot key. Press it, on_activate will be called. on_deactivate will be called after the next non-oneshot key release or if the OneShot trigger is
src/handlers/oneshot.rs:39
Enum
OneShotStatus
src/handlers/oneshot.rs:10
Class
PressCounter
src/test_helpers.rs:122
Class
PressMacro
The simplest callback - call on_trigger on press, nothing on release trigger may be any keycode, but consider using the constants in UserKey:: which i
src/handlers/macros.rs:13
Class
PressReleaseMacro
A simple callback - call on_press(output: impl USBKeyOut) on key press and on_release(output) on release)) trigger may be any keycode, but consider us
src/handlers/macros.rs:56
Interface
ProcessKeys
Handlers are defined by this trait they process the events, set their status to either Handled or Ignored (if more data is necessary), and send input
src/handlers/mod.rs:36
Class
RewriteLayer
A layer that *only* supports replacing key codes with other key codes. The advantage of this is that you can/must use it with a const array (slice),
src/handlers/rewrite_layer.rs:14
Class
Sequence
A sequence is a series of keystrokes (press and release) that upon finish (ie. the release of the last key) sends first a (configurable) number of bac
src/handlers/sequence.rs:25
Class
Short
src/handlers/longtap.rs:84
Class
SpaceCadet
SpaceCadet Keys are keys that do one Action on tap, and an OnOff if depressed while the next key is pressed. There is a minimum time the key needs to
src/handlers/spacecadet.rs:37
Enum
SpaceCadetState
src/handlers/spacecadet.rs:9
Class
StickyMacro
a macro that is called 'on' on the the first keypress and off on the second keyrelease. Using this you can implement e.g. sticky modifiers
src/handlers/macros.rs:95
Class
TapDance
Depending on how often a key has ben pressed repeatedly (within a timeout), do different things. You will need to implement a TapDanceAction
src/handlers/tapdance.rs:22
Interface
TapDanceAction
call backs for completed tap dances
src/handlers/tapdance.rs:13
Enum
TapDanceEnd
src/handlers/tapdance.rs:7
Class
TapDanceLogger
src/handlers/tapdance.rs:90
Class
TimeoutLogger
send a key whenever a time out occurs
src/test_helpers.rs:93
Class
TranslationHelper
this handler helps you build a translation table for MatrixToStream by outputing the keycode observed as .into()<Enter>Hex-Keycode\tKeyCode:: so you c
src/handlers/debug_handlers.rs:50
Interface
USBKeyOut
the handlers use this trait to generate their output
src/lib.rs:298
Class
USBKeyboard
src/handlers/usbkeyboard.rs:18
Class
UnicodeKeyboard
src/handlers/unicodekeyboard.rs:14
Enum
UnicodeSendMode
src/lib.rs:233
Enum
UserKey
src/key_codes.rs:233