Skip to main content

smart_keymap_core/
lib.rs

1#![warn(missing_docs)]
2#![warn(clippy::unwrap_used)]
3#![warn(clippy::expect_used)]
4
5//! Core smart-keymap engine.
6//!
7//! This crate provides the key family implementations
8//!  and the [keymap::Keymap] engine.
9//!
10//! Firmware and other consumers that need a compiled keymap instance
11//!  use the `smart-keymap` facade package,
12//! which re-exports these modules
13//!  and adds `init` / `new_keymap()`
14//!  (via `SMART_KEYMAP_CUSTOM_KEYMAP`).
15
16#![cfg_attr(not(feature = "std"), no_std)]
17
18/// Structs for input to the keymap.
19pub mod input;
20/// Smart key interface and implementations.
21///
22/// The core interface is [key::System], and its associated [key::Context],
23/// `PendingKeyState`, and [key::KeyState] types.
24pub mod key;
25/// Keymap implementation.
26pub mod keymap;
27
28/// Split keyboard support.
29pub mod split;
30
31/// A helper value type for Copy-able slices.
32pub mod slice;