television 0.14.5

A very fast, portable and hackable fuzzy finder for the terminal
Documentation
[[bench]]
harness = false
name = "main"
path = "benches/main.rs"

[[bin]]
bench = false
name = "tv"
path = "television/main.rs"

[build-dependencies.clap]
features = ["derive", "cargo"]
version = "4.5"

[build-dependencies.clap_mangen]
version = "0.2.26"

[dependencies.ansi-to-tui]
version = "8.0"

[dependencies.anyhow]
version = "1.0"

[dependencies.base64]
version = "0.22"

[dependencies.better-panic]
version = "0.3"

[dependencies.clap]
features = ["derive", "cargo", "string"]
version = "4.5"

[dependencies.clap_complete]
version = "4.5"

[dependencies.colored]
version = "3.0"

[dependencies.devicons]
version = "0.6"

[dependencies.directories]
version = "6.0"

[dependencies.fast-strip-ansi]
version = "0.13"

[dependencies.human-panic]
version = "2.0"

[dependencies.lazy-regex]
default-features = false
features = ["lite"]
version = "3.4"

[dependencies.nucleo]
version = "0.5"

[dependencies.parking_lot]
version = "0.12"

[dependencies.ratatui]
features = ["serde", "macros"]
version = "0.30"

[dependencies.rayon]
version = "1.11"

[dependencies.rustc-hash]
version = "2.1"

[dependencies.serde]
features = ["derive"]
version = "1.0"

[dependencies.serde_json]
version = "1.0"

[dependencies.serde_with]
version = "3.13"

[dependencies.signal-hook]
version = "0.4"

[dependencies.smallvec]
version = "1.15"

[dependencies.string_pipeline]
version = "0.13"

[dependencies.tokio]
features = ["full"]
version = "1.48"

[dependencies.toml]
version = "0.9"

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
features = ["env-filter"]
version = "0.3"

[dependencies.unicode-width]
version = "0.2"

[dependencies.ureq]
version = "3.0"

[dependencies.walkdir]
version = "2.5"

[dependencies.which]
version = "8.0"

[dev-dependencies.criterion]
features = ["async_tokio"]
version = "0.8"

[dev-dependencies.portable-pty]
version = "0.9.0"

[dev-dependencies.tempfile]
version = "3.16.0"

[dev-dependencies.vt100]
version = "0.16"

[lib]
name = "television"
path = "television/lib.rs"

[lints.clippy]
cast_precision_loss = "allow"
float_cmp = "allow"
from_iter_instead_of_collect = "allow"
implicit_hasher = "allow"
map_unwrap_or = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
return_self_not_must_use = "allow"
similar_names = "allow"
too_many_lines = "allow"
uninlined_format_args = "allow"
wildcard_imports = "allow"

[lints.clippy.pedantic]
level = "warn"
priority = -1

[package]
authors = ["Alexandre Pasmantier <alex.pasmant@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["command-line-utilities", "command-line-interface", "concurrency", "development-tools"]
description = "A very fast, portable and hackable fuzzy finder for the terminal"
edition = "2024"
exclude = ["website", ".github", "apt", "website", "assets"]
homepage = "https://github.com/alexpasmantier/television"
keywords = ["search", "fuzzy", "preview", "tui", "terminal"]
license = "MIT"
name = "television"
readme = "README.md"
repository = "https://github.com/alexpasmantier/television"
rust-version = "1.90"
version = "0.14.5"

[package.metadata.deb]
assets = [["target/release/tv", "usr/bin/", "755"], { dest = "usr/share/man/man1/", mode = "644", source = "man/tv.1" }]
copyright = "Copyright 2025 Alexandre Pasmantier <alex.pasmant@gmail.com>"
depends = "$auto"
extended-description = """
Television is a portable and hackable fuzzy finder for the terminal.

It lets you search in real time through any kind of data source (called "channels") such as:

    files and directories
    code
    notes
    processes
    git repositories
    environment variables
    docker containers
    ...and much more


with support for previewing results, customizable actions and keybindings, and integration with your favorite
shell and editor.
"""
maintainer = "Alexandre Pasmantier <alex.pasmant@gmail.com>"
priority = "optional"
section = "utils"

[profile.deb]
debug = 0
inherits = "release"

[profile.profiling]
debug = 2
inherits = "release"

[profile.release]
codegen-units = 1
lto = "fat"

[profile.staging]
inherits = "release"
lto = false
opt-level = 3

[target.'cfg(not(target_os = "macos"))'.dependencies.crossterm]
features = ["serde"]
version = "0.28"

[target.'cfg(target_os = "macos")'.dependencies.crossterm]
features = ["serde", "use-dev-tty"]
version = "0.28.1"

[target."cfg(windows)".dependencies.clipboard-win]
version = "5.4.0"

[target."cfg(windows)".dependencies.winapi-util]
version = "0.1.9"

[[test]]
name = "app"
path = "tests/app.rs"

[[test]]
name = "channels"
path = "tests/channels.rs"

[[test]]
name = "command_line"
path = "tests/command_line.rs"

[[test]]
name = "configuration"
path = "tests/configuration.rs"

[[test]]
name = "remote_control"
path = "tests/remote_control.rs"

[[test]]
name = "subcommands"
path = "tests/subcommands.rs"