RKTK API Docs RKTK Home Repo

rktk_keymanager/keycode/
utils.rs

1//! Utility functions to define keymap.
2
3use super::{modifier::Modifier, KeyAction, KeyCode};
4
5/// Press key with shift
6#[allow(non_snake_case)]
7pub const fn SF(k: KeyAction) -> KeyAction {
8    if let KeyAction::Normal(KeyCode::Key(key)) = k {
9        KeyAction::Normal2(KeyCode::Modifier(Modifier::LShft), KeyCode::Key(key))
10    } else {
11        panic!("Unsupported key type")
12    }
13}
14
15/// Tap dance
16#[allow(non_snake_case)]
17pub const fn TD(id: u8) -> KeyAction {
18    KeyAction::TapDance(id)
19}