Television とは
Television(コマンドは tv)はチャンネルを中心に据えたファジーファインダーです。チャンネルとは、独自のプレビューコマンド、キーバインド、アクションを持つ名前付きのデータソースのこと。ファイル、ファイルの中身、ディレクトリ、git リポジトリ、環境変数、プロセス、docker コンテナ、そして数行の TOML で書けるものなら何でもです。打つそばから検索し、選んだものをプレビューし、結果をシェルやエディタ、自分のコマンドに渡します。
tv update-channels は上流から最新のチャンネル定義を取ってきますが、それは対応するバイナリを前提にしています。Debian も Ubuntu もパッケージ化していないので、ここでは最新ビルドは贅沢ではなく、手に入れる唯一の方法です。
⚡ Television の主な機能
🔎 ファイルだけでなくチャンネルも
ファイル、テキスト、ディレクトリ、git リポジトリ、環境変数、プロセス、コンテナ、すべてがチャンネルです。tv list-channels でこのビルドに入っているものが分かります。
👁️ プレビューを内蔵
どのチャンネルもプレビューコマンドを定義できるので、結果一覧の隣にファイルやログ、差分、コンテナの詳細が表示されます。
🧵 TOML でいじれる
チャンネルは、入力元コマンド・プレビュー・キーバインド・アクションを書いた小さな TOML ファイルです。新しいワークフローは ~/.config/television/cable/ にファイルを 1 枚置くだけ。
⌨️ シェル連携
tv init が bash、zsh、fish で Ctrl+T に賢い補完を、Ctrl+R に履歴検索を割り当てます。
🚀 設計からして速い
非同期・並列のマッチャーにより、巨大な入力元でも入力が引っかかりません。プレビューは遅延評価で、キャッシュもできます。
🧰 アドホックモード
--source-command と --preview-command を使えば、チャンネルを書かなくても任意のシェルコマンド 2 つが使い捨てのファインダーになります。
apt upgrade を実行するだけで、常に最新版を使い続けられます。
📦 deb.griffo.io からインストールする
ステップ 1: リポジトリを追加する
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update🆓 ずっと無料のミラーがあります。 deb-free.griffo.io は、アカウントもサブスクリプションもなしでパッケージをずっと無料で配布しています。上流より最大2か月遅れ、セキュリティ修正は即座に公開されます。現在収録しているのは cliamp、Ghostty、lazydocker、Oh My Posh と Zed です。Television は含まれていないため、今日入手する方法は上のリポジトリだけですが、ご要望があれば追加できます。
ステップ 2: Television をインストールする
# 最新の Television をインストール
sudo apt install television
# インストールを確認
tv --version# 最新の Television をインストール
apt install television
# インストールを確認
tv --versionステップ 3: 初回起動とシェル連携
# このビルドに入っているチャンネルを見る
tv list-channels
# カレントディレクトリ以下のファイルを検索
tv files
# シェル連携: Ctrl+T で補完、Ctrl+R で履歴
echo 'eval "$(tv init bash)"' >> ~/.bashrc
# man ページと bash・zsh・fish の補完はパッケージに同梱されています
man tv🎯 基本的な使い方
日常的な検索:
# 既定のチャンネル
tv
# いちばんよく使うチャンネル
tv files
tv text
tv dirs
tv git-repos
# カレントディレクトリ以外の場所から始める
tv files ~/src
# 上流から最新のチャンネル定義を取得
tv update-channels任意のコマンドから、その場でチャンネルを作る:
# 任意のコマンドをファジーファインダーに変える
tv --source-command "fd -t f -H"
# 選んだ項目からプレビューを作って
tv --source-command "git branch --format='%(refname:short)'" \
--preview-command "git log -20 --oneline {}"
# 入力元コマンドが出す色をそのまま保つ
tv --source-command "rg --color=always -n TODO" --ansi
# 一致順ではなく、入力元の並び順を保つ
tv --source-command "ls -t" --no-sortシェル、補完、独自チャンネル:
# このシェルで Ctrl+T と Ctrl+R を有効にする
eval "$(tv init zsh)"
# tv 自身のサブコマンドの補完
tv completions fish > ~/.config/fish/completions/tv.fish
# 独自チャンネルは cable ディレクトリに置きます
mkdir -p ~/.config/television/cable
$EDITOR ~/.config/television/cable/tldr.toml
# アップグレード後、機械が書いた既定値を設定から削る
tv migrate-config🔧 ツール連携
Television は、環境の他の部分に貼り付けて使うように作られています:
- 使っているシェル:
tv init bash、zsh、fishで賢い補完と履歴検索が入り、どのチャンネルもコマンドラインに直接出力できます - エディタ: Neovim、Vim、VS Code、JetBrains IDE、Zed 向けのコミュニティ連携があり、どれも同じバイナリを呼びます
- ripgrep など: チャンネルはシェルコマンドなので、
rg、fd、git、docker、自作スクリプトを入力元にできます - 設定: 既定値とキーバインドは
~/.config/television/config.toml、チャンネル自体はcable/*.toml - それ以外: 選んだ項目は標準出力に出るので、
tvはパイプやエイリアス、スクリプトとほかのコマンドと同じように組み合わせられます
🚀 deb.griffo.io を選ぶ理由
- 公式 Ubuntu: Television をパッケージ化していないので、素のシステムでは
apt install televisionが失敗します - cargo install television: 最新ではありますが、マシンごとに Rust のコンパイルが要り、apt の外に置かれ、man ページも補完も付きません
- 上流のインストールスクリプト: 手軽ですが、パッケージマネージャの知らないところでシステムを書き換え、独自のタイミングで自分を更新します
- deb.griffo.io: 最新版を自動更新でお届け
- ✅ チャンネルがバイナリと揃う: チャンネル定義はツールとともに進むので、最新ビルドでこそ
tv update-channelsが混乱ではなく役に立ちます - ✅ apt で入る唯一の場所: Television は Debian にも Ubuntu にも収録されていません。このリポジトリが上流公式のビルドをパッケージ化しています
- ✅ 自動更新: 上流のリリースから数時間以内にパッケージを更新
- ✅ 全部入り: 上流のバイナリを
/usr/bin/tvとして、tv.1man ページと bash・zsh・fish の補完付きで - ✅ 3 つのアーキテクチャと、宣言されたひとつの衝突: amd64、arm64、i386。同じ
/usr/bin/tvを持つtreeviewxとの衝突を宣言しているので、2 つのパッケージが取り合う代わりに apt が教えてくれます - ✅ マルチディストリビューション: Ubuntu 22.04、24.04、25.10、26.04 で動作
- ✅ 手間のかからない運用: 更新は通常の apt コマンドだけ
📦 パッケージのビルドリポジトリ
Ubuntu パッケージは、この GitHub リポジトリで自動的にビルド・管理されています:
- 📼 television-debian - 最新リリースのビルド
🔗 関連パッケージ
deb.griffo.io では、こちらも配布しています:
- fzf - その流儀が好みなら、定番のファジーファインダーを
- ripgrep - チャンネルの入力元にできる高速な再帰検索
- zoxide - tv dirs と相性のいいディレクトリ移動
- Yazi - 見つけたものを見て回るためのターミナルファイルマネージャ