The revolution will (not) be televised 📺
  • Rust 92.3%
  • Shell 3.3%
  • TypeScript 1.6%
  • PowerShell 0.7%
  • CSS 0.6%
  • Other 1.5%
Find a file
github-actions[bot] c29ef8a9bc
chore(changelog): update changelog (auto) (#1064)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2026-05-12 23:55:44 +02:00
.config feat(config): add git switch to git-branch channel default shell integration triggers (#1019) 2026-04-15 00:39:20 +02:00
.github chore(deps): bump webiny/action-conventional-commits from 1.3.1 to 1.4.2 (#1053) 2026-05-12 00:53:12 +02:00
assets feat(cable): add aerospace-windows channel (#1031) 2026-05-12 23:32:44 +02:00
benches feat: add custom source command names for multi-source channels (#1028) 2026-05-12 23:01:33 +02:00
cable feat(cable): add aerospace-windows channel (#1031) 2026-05-12 23:32:44 +02:00
docs chore(changelog): update changelog (auto) (#1064) 2026-05-12 23:55:44 +02:00
man chore: release version 0.15.7 2026-05-12 23:44:46 +02:00
scripts ci(cable_docs): fix generate_cable_docs workflow 2026-04-15 00:39:19 +02:00
television fix(cable): skip unreadable entries when walking cable dir 2026-05-12 23:36:04 +02:00
tests feat: add custom source command names for multi-source channels (#1028) 2026-05-12 23:01:33 +02:00
themes feat(themes): add cyberdream themes (#975) 2026-04-15 00:39:20 +02:00
website fix(website): unbreak docusaurus build on 3.10.x (#1062) 2026-05-12 00:12:28 +02:00
.envrc chore(nix): nix flake shell + rust-toolchain.toml setup (#14) 2024-11-11 22:37:21 +01:00
.gitignore feat(prototypes): enable using a custom shell for source, preview and action commands (#875) 2026-04-15 00:39:19 +02:00
build.rs chore: bump to 0.10.10 2026-04-15 00:39:12 +02:00
Cargo.lock chore: release version 0.15.7 2026-05-12 23:44:46 +02:00
Cargo.toml chore: release version 0.15.7 2026-05-12 23:44:46 +02:00
CHANGELOG.md chore(changelog): update changelog (auto) (#1064) 2026-05-12 23:55:44 +02:00
cliff.toml chore(changelog): update changelog (auto) 2026-04-15 00:39:20 +02:00
CODE_OF_CONDUCT.md chore(coc): create CODE_OF_CONDUCT.md (#7) 2024-11-11 11:39:17 +01:00
CONTRIBUTING.md docs(tests): add zig version troubleshooting section to contributing docs (#1061) 2026-05-12 00:14:22 +02:00
default.nix refactor(nix): flake using flake-parts, crane, and rust-overlay (#846) 2026-04-15 00:39:18 +02:00
flake.lock chore(nix): update flake.lock (#1045) 2026-04-16 10:05:36 +02:00
flake.nix refactor(nix): flake using flake-parts, crane, and rust-overlay (#846) 2026-04-15 00:39:18 +02:00
install.sh refactor: remove redundant install dir branch (#941) 2026-04-15 00:39:20 +02:00
justfile chore(just): cap integration test parallelism at 4 2026-04-15 02:43:45 +02:00
LICENSE setup 2024-09-15 21:57:36 +02:00
mise.toml docs(tests): add zig version troubleshooting section to contributing docs (#1061) 2026-05-12 00:14:22 +02:00
README.md docs: add JetBrains IDE plugin link in readme (#1056) 2026-05-12 23:24:20 +02:00
rust-toolchain.toml test: migrate integration tests from PtyTester to phantom-test 2026-04-15 02:43:45 +02:00
rustfmt.toml chore(rustfmt): update rustfmt.toml (#42) 2024-11-19 00:11:50 +01:00
shell.nix refactor(nix): flake using flake-parts, crane, and rust-overlay (#846) 2026-04-15 00:39:18 +02:00

Television (tv)

A very fast, portable and hackable fuzzy finder.

GitHub Release docs.rs GitHub branch check runs GitHub License Discord

image

About

Television is a fast, portable fuzzy finder for the terminal. It lets you search in real-time through any kind of data source such as files, text, git repositories, environment variables, docker containers, and more.

Read the documentation

Quick Start

tv              # Search files (default channel)
tv text         # Search file contents
tv git-repos    # Find git repositories
tv --help       # See all options

For a complete introduction, see the Quickstart Guide.

Installation

curl -fsSL https://alexpasmantier.github.io/television/install.sh | bash

Package Managers

Platform Command
Arch Linux pacman -S television
Homebrew brew install television
Cargo cargo install television
Scoop scoop bucket add extras && scoop install television
WinGet winget install --exact --id alexpasmantier.television
Nix nix run nixpkgs#television

For more installation options, see Installation.

Custom Channels

Create custom channels for any workflow. Here's an example TLDR channel:

# ~/.config/television/cable/tldr.toml
[metadata]
name = "tldr"
description = "Browse TLDR pages"

[source]
command = "tldr --list"

[preview]
command = "tldr '{}'"

[keybindings]
ctrl-e = "actions:open"

[actions.open]
command = "tldr '{}'"
mode = "execute"

Learn more about creating channels.

Shell Integration

Enable smart autocomplete (Ctrl+T) and history search (Ctrl+R):

# Zsh
echo 'eval "$(tv init zsh)"' >> ~/.zshrc

# Bash
echo 'eval "$(tv init bash)"' >> ~/.bashrc

See Shell Integration for more shells.

Editor Integration

Documentation

Credits

Inspired by telescope.nvim. Built with nucleo (fuzzy matching), tokio (async runtime), and ratatui (TUI framework).

Thanks to all contributors: