[package]
name = "keybinds2"
version = "0.2.0"
edition = "2021"
authors = ["rhysd <lin90162@yahoo.co.jp>", "vincent-uden <vincentuden@gmail.com>"]
description = "Platform&Framework-agnostic key binding (keyboard shortcut) dispatcher, parser, and generator written in Safe Rust."
license = "MIT"
homepage = "https://github.com/vincent-uden/keybinds-rs#readme"
documentation = "https://docs.rs/keybinds-iced-0-14"
repository = "https://github.com/vincent-uden/keybinds-rs"
keywords = ["key", "bindings", "configuration", "shortcut", "keyboard"]
categories = ["config", "gui"]
include = [
"/src",
"/examples",
"/doc",
"/LICENSE.txt",
"/README.md",
"/CHANGELOG.md",
]
rust-version = "1.80.0"
[[example]]
name = "minimal"
doc-scrape-examples = true
[[example]]
name = "deserialize"
required-features = ["serde"]
doc-scrape-examples = true
[[example]]
name = "serialize"
required-features = ["serde"]
doc-scrape-examples = true
[[example]]
name = "arbitrary"
required-features = ["arbitrary"]
doc-scrape-examples = true
[[example]]
name = "crossterm"
required-features = ["crossterm", "serde"]
doc-scrape-examples = true
[[example]]
name = "termwiz"
required-features = ["termwiz"]
doc-scrape-examples = true
[[example]]
name = "winit"
required-features = ["winit"]
doc-scrape-examples = true
[[example]]
name = "iced"
required-features = ["iced"]
doc-scrape-examples = true
[[example]]
name = "vim"
required-features = ["crossterm"]
doc-scrape-examples = true
[features]
default = []
serde = ["dep:serde", "smallvec/serde"]
crossterm = ["dep:crossterm"]
winit = ["dep:winit"]
termwiz = ["dep:termwiz"]
iced = ["dep:iced"]
arbitrary = ["dep:arbitrary"]
[dependencies]
arbitrary = { version = "1.4.1", features = ["derive"], optional = true }
bitflags = "2.9.1"
crossterm = { version = "0.29.0", optional = true }
iced = { version = "0.14.0", optional = true }
serde = { version = "1.0.219", optional = true }
smallvec = { version = "1.15.0", features = ["const_generics", "union"] }
termwiz = { version = "0.23.3", optional = true }
winit = { version = "0.30.11", optional = true }
[dev-dependencies]
toml = { version = "0.8.22", default-features = false, features = ["parse", "display"] }
serde = { version = "1.0.219", features = ["derive"] }
tui-textarea = "0.7.0"
ratatui = "0.29.0"
[workspace]
members = [".", "bench", "fuzz"]
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu", "aarch64-apple-darwin", "x86_64-pc-windows-msvc"]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]