television/Cargo.toml
Aiden Scandella 83f29f7418
feat(zsh): add tv cli options/arguments/subcommands autocompletion (#665)
## 📺 PR Description

update `init` shell generation to include autocompleting options for
`tv` itself.

<img width="817" height="497" alt="image"
src="https://github.com/user-attachments/assets/e65bc0aa-410e-43ef-86a5-2d6e01c6c1df"
/>

<img width="837" height="186" alt="image"
src="https://github.com/user-attachments/assets/6d9665f6-0664-4e6e-bce3-e6a970c79524"
/>

I've only tested this on macOS (arm64) with `zsh` and `bash` so far:

<img width="893" height="349" alt="image"
src="https://github.com/user-attachments/assets/dd66ecec-fee3-4713-a68c-f69e961a4ba6"
/>



## Checklist

<!-- a quick pass through the following items to make sure you haven't
forgotten anything -->

- [x] my commits **and PR title** follow the [conventional
commits](https://www.conventionalcommits.org/en/v1.0.0/#summary) format
- [x] if this is a new feature, I have added tests to consolidate the
feature and prevent regressions
- [ ] if this is a bug fix, I have added a test that reproduces the bug
(if applicable)
- [ ] I have added a reasonable amount of documentation to the code
where appropriate

---------

Co-authored-by: Alex Pasmantier <47638216+alexpasmantier@users.noreply.github.com>
2025-07-25 22:34:06 +02:00

148 lines
3.5 KiB
TOML

[package]
name = "television"
version = "0.12.5"
edition = "2024"
description = "Cross-platform, fast and extensible general purpose fuzzy finder TUI."
license = "MIT"
authors = ["Alexandre Pasmantier <alex.pasmant@gmail.com>"]
repository = "https://github.com/alexpasmantier/television"
homepage = "https://github.com/alexpasmantier/television"
keywords = ["search", "fuzzy", "preview", "tui", "terminal"]
categories = [
"command-line-utilities",
"command-line-interface",
"concurrency",
"development-tools",
]
exclude = ["website", ".github", "apt", "website"]
rust-version = "1.87"
build = "build.rs"
[lib]
path = "television/lib.rs"
[dependencies]
anyhow = "1.0"
base64 = "0.22.1"
directories = "6.0"
devicons = "0.6"
tokio = { version = "1.44", features = ["full"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
rustc-hash = "2.1"
unicode-width = "0.2"
clap = { version = "4.5", features = ["derive", "cargo", "string"] }
serde = { version = "1.0", features = ["derive"] }
ratatui = { version = "0.29", features = ["serde", "macros"] }
better-panic = "0.3"
signal-hook = "0.3"
human-panic = "2.0"
parking_lot = "0.12"
nucleo = "0.5"
toml = "0.8"
lazy-regex = { version = "3.4.1", features = [
"lite",
], default-features = false }
ansi-to-tui = "7.0.0"
walkdir = "2.5.0"
string_pipeline = "0.12.0"
ureq = "3.0.11"
serde_json = "1.0.140"
colored = "3.0.0"
serde_with = "3.13.0"
which = "8.0.0"
clap_complete = "4.5.55"
# target specific dependencies
[target.'cfg(target_os = "macos")'.dependencies]
crossterm = { version = "0.28.1", features = ["serde", "use-dev-tty"] }
[target.'cfg(not(target_os = "macos"))'.dependencies]
crossterm = { version = "0.28", features = ["serde"] }
[target.'cfg(windows)'.dependencies]
winapi-util = "0.1.9"
clipboard-win = "5.4.0"
[dev-dependencies]
criterion = { version = "0.5", features = ["async_tokio"] }
tempfile = "3.16.0"
portable-pty = "0.9.0"
vt100 = "0.15"
[build-dependencies]
clap = { version = "4.5", features = ["derive", "cargo"] }
clap_mangen = "0.2.26"
[[bin]]
bench = false
path = "television/main.rs"
name = "tv"
[[bench]]
name = "main"
harness = false
[profile.staging]
inherits = "dev"
opt-level = 3
debug = true
lto = false
[profile.profiling]
inherits = "release"
debug = true
[profile.release]
codegen-units = 1
lto = "fat"
[profile.deb]
inherits = "release"
debug = false
[lints]
workspace = true
[workspace.lints.clippy]
pedantic = { level = "warn", priority = -1 }
must_use_candidate = "allow"
too_many_lines = "allow"
missing_panics_doc = "allow"
missing_errors_doc = "allow"
module_name_repetitions = "allow"
cast_precision_loss = "allow"
map_unwrap_or = "allow"
return_self_not_must_use = "allow"
uninlined_format_args = "allow"
similar_names = "allow"
float_cmp = "allow"
implicit_hasher = "allow"
wildcard_imports = "allow"
from_iter_instead_of_collect = "allow"
[package.metadata.deb]
maintainer = "Alexandre Pasmantier <alex.pasmant@gmail.com>"
copyright = "Copyright 2025 Alexandre Pasmantier <alex.pasmant@gmail.com>"
extended-description = """\
Television is a cross-platform, fast and extensible fuzzy finder TUI.
It integrates with your shell and lets you quickly search through any kind of data source (files, git repositories, environment variables, docker images, you name it) using a fuzzy matching algorithm and is designed to be easily extensible."""
section = "utils"
priority = "optional"
depends = "$auto"
assets = [
[
"target/release/tv",
"usr/bin/",
"755",
],
{ source = "man/tv.1", dest = "usr/share/man/man1/", mode = "644" },
]