[package]
edition = "2021"
rust-version = "1.80.0"
name = "keybinds2"
version = "0.2.0"
authors = [
"rhysd <lin90162@yahoo.co.jp>",
"vincent-uden <vincentuden@gmail.com>",
]
build = false
include = [
"/src",
"/examples",
"/doc",
"/LICENSE.txt",
"/README.md",
"/CHANGELOG.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Platform&Framework-agnostic key binding (keyboard shortcut) dispatcher, parser, and generator written in Safe Rust."
homepage = "https://github.com/vincent-uden/keybinds-rs#readme"
documentation = "https://docs.rs/keybinds-iced-0-14"
readme = "README.md"
keywords = [
"key",
"bindings",
"configuration",
"shortcut",
"keyboard",
]
categories = [
"config",
"gui",
]
license = "MIT"
repository = "https://github.com/vincent-uden/keybinds-rs"
[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",
]
[features]
arbitrary = ["dep:arbitrary"]
crossterm = ["dep:crossterm"]
default = []
iced = ["dep:iced"]
serde = [
"dep:serde",
"smallvec/serde",
]
termwiz = ["dep:termwiz"]
winit = ["dep:winit"]
[lib]
name = "keybinds2"
path = "src/lib.rs"
[[example]]
name = "arbitrary"
path = "examples/arbitrary.rs"
doc-scrape-examples = true
required-features = ["arbitrary"]
[[example]]
name = "crossterm"
path = "examples/crossterm.rs"
doc-scrape-examples = true
required-features = [
"crossterm",
"serde",
]
[[example]]
name = "deserialize"
path = "examples/deserialize.rs"
doc-scrape-examples = true
required-features = ["serde"]
[[example]]
name = "iced"
path = "examples/iced.rs"
doc-scrape-examples = true
required-features = ["iced"]
[[example]]
name = "minimal"
path = "examples/minimal.rs"
doc-scrape-examples = true
[[example]]
name = "serialize"
path = "examples/serialize.rs"
doc-scrape-examples = true
required-features = ["serde"]
[[example]]
name = "termwiz"
path = "examples/termwiz.rs"
doc-scrape-examples = true
required-features = ["termwiz"]
[[example]]
name = "vim"
path = "examples/vim.rs"
doc-scrape-examples = true
required-features = ["crossterm"]
[[example]]
name = "winit"
path = "examples/winit.rs"
doc-scrape-examples = true
required-features = ["winit"]
[dependencies.arbitrary]
version = "1.4.1"
features = ["derive"]
optional = true
[dependencies.bitflags]
version = "2.9.1"
[dependencies.crossterm]
version = "0.29.0"
optional = true
[dependencies.iced]
version = "0.14.0"
optional = true
[dependencies.serde]
version = "1.0.219"
optional = true
[dependencies.smallvec]
version = "1.15.0"
features = [
"const_generics",
"union",
]
[dependencies.termwiz]
version = "0.23.3"
optional = true
[dependencies.winit]
version = "0.30.11"
optional = true
[dev-dependencies.ratatui]
version = "0.29.0"
[dev-dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dev-dependencies.toml]
version = "0.8.22"
features = [
"parse",
"display",
]
default-features = false
[dev-dependencies.tui-textarea]
version = "0.7.0"