Compare commits
2 Commits
643f75cf0a
...
727e0bbd72
| Author | SHA1 | Date | |
|---|---|---|---|
|
727e0bbd72
|
|||
|
903f880c73
|
@ -22,13 +22,16 @@ impl From<Modifier> for u8 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)]
|
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||||
|
#[non_exhaustive]
|
||||||
pub enum Button {
|
pub enum Button {
|
||||||
Mod(Modifier),
|
Mod(Modifier),
|
||||||
Key(Key),
|
Key(Key),
|
||||||
ModTap(Key, Modifier),
|
ModTap(Key, Modifier),
|
||||||
|
Compose(Key, Key, Option<Key>),
|
||||||
NextLayer,
|
NextLayer,
|
||||||
PrevLayer,
|
PrevLayer,
|
||||||
|
HoldLayer(u16),
|
||||||
None,
|
None,
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,8 +41,11 @@ impl Display for Button {
|
|||||||
Button::Mod(modifier) => Debug::fmt(&modifier, f),
|
Button::Mod(modifier) => Debug::fmt(&modifier, f),
|
||||||
Button::Key(key) => write!(f, "{key:?}"),
|
Button::Key(key) => write!(f, "{key:?}"),
|
||||||
Button::ModTap(key, modifier) => write!(f, "{key:?}/{modifier}"),
|
Button::ModTap(key, modifier) => write!(f, "{key:?}/{modifier}"),
|
||||||
|
Button::Compose(k1, k2, None) => write!(f, "⎄ {k1:?} {k2:?}"),
|
||||||
|
Button::Compose(k1, k2, Some(k3)) => write!(f, "⎄ {k1:?} {k2:?} {k3:?}"),
|
||||||
Button::NextLayer => write!(f, "↘"),
|
Button::NextLayer => write!(f, "↘"),
|
||||||
Button::PrevLayer => write!(f, "↖"),
|
Button::PrevLayer => write!(f, "↖"),
|
||||||
|
Button::HoldLayer(layer) => write!(f, "HL{layer}"),
|
||||||
Button::None => write!(f, "Ø"),
|
Button::None => write!(f, "Ø"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,6 +2,7 @@ use serde::{Deserialize, Serialize};
|
|||||||
|
|
||||||
#[repr(u8)]
|
#[repr(u8)]
|
||||||
#[derive(Clone, Copy, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
#[derive(Clone, Copy, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||||
|
#[non_exhaustive]
|
||||||
// https://usb.org/sites/default/files/hut1_3_0.pdf
|
// https://usb.org/sites/default/files/hut1_3_0.pdf
|
||||||
pub enum Key {
|
pub enum Key {
|
||||||
A = 0x04,
|
A = 0x04,
|
||||||
|
|||||||
Reference in New Issue
Block a user