YAZI入門:Rust製の高速ターミナルファイルマネージャー
この記事はZennでも公開しています。
YAZI入門:Rust製の高速ターミナルファイルマネージャー
YAZIロゴ(出典)
はじめに
YAZIは、Rustで書かれた高速なターミナルファイルマネージャーです。非同期I/Oをベースにした設計により、非常に高速なファイル操作が可能です。この記事では、YAZIの基本的な使い方から、実践的な活用方法まで詳しく解説します。
YAZIとは
YAZI(「アヒル」の意味)は、Rustで書かれた非同期I/Oベースのターミナルファイルマネージャーです。従来のファイルマネージャーと比較して、以下の特徴があります:
主な特徴
- 🚀 完全な非同期サポート: すべてのI/O操作が非同期で、CPUタスクは複数のスレッドに分散
- 💪 強力な非同期タスクスケジューリング: リアルタイムの進捗更新、タスクのキャンセル、内部タスクの優先順位付け
- 🖼️ 複数の画像プロトコル対応: Überzug++とChafaの統合により、ほぼすべてのターミナルをサポート
- 🌟 コードハイライトと画像デコード: プリロードメカニズムと組み合わせて、画像と通常ファイルの読み込みを高速化
- 🔌 並行プラグインシステム: UIプラグイン、機能プラグイン、カスタムプレビュー/プリロード/スポッター/フェッチャー
- 📡 データ配信サービス: クライアント-サーバーアーキテクチャをベースに、Luaベースのpub/subモデルを統合
インストール方法
macOSの場合
1
brew install yazi
Linuxの場合
1
2
3
4
5
# Arch Linux
yay -S yazi
# Ubuntu/Debian
sudo apt install yazi
手動インストール
1
cargo install yazi
基本的な使い方
1. 起動
1
yazi
2. 基本的なキーバインド
2.1 ナビゲーション
j/k
: 上下に移動h/l
: 親ディレクトリ/子ディレクトリに移動gg/G
: 最初/最後のファイルに移動Ctrl+u/d
: 半画面上下に移動
2.2 ファイル操作
Space
: ファイルを選択y
: 選択したファイルをコピーd
: 選択したファイルを削除r
: ファイル名を変更Enter
: ファイルを開く
2.3 プレビュー
p
: プレビューパネルを表示/非表示Tab
: プレビューパネルにフォーカスShift+Tab
: メインパネルにフォーカス
実践的な活用方法
1. カスタマイズ
1.1 設定ファイル
~/.config/yazi/keymap.toml
に以下のような設定を追加:
1
2
3
4
5
6
[keymap]
# カスタムキーバインド
"g" = "go_to_top"
"G" = "go_to_bottom"
"Ctrl+f" = "search"
"Ctrl+r" = "refresh"
1.2 テーマのカスタマイズ
~/.config/yazi/theme.toml
でテーマをカスタマイズ:
1
2
3
4
5
6
[theme]
# カラーテーマの設定
primary = "#61AFEF"
secondary = "#C678DD"
background = "#282C34"
foreground = "#ABB2BF"
2. プラグインの活用
2.1 プラグインのインストール
1
2
3
4
5
# プラグインマネージャーのインストール
cargo install yazi-plugin-manager
# プラグインのインストール
yazi-plugin install <plugin-name>
2.2 おすすめプラグイン
yazi-fzf
: ファジーファインダー統合yazi-preview
: 拡張プレビュー機能yazi-git
: Git統合
トラブルシューティング
1. よくある問題と解決方法
- 画像プレビューが表示されない場合
- Überzug++またはChafaがインストールされているか確認
- ターミナルの画像サポートを確認
- キーバインドが効かない場合
- 設定ファイルの構文を確認
- キーの競合がないか確認
- パフォーマンスの問題
- 非同期I/Oの設定を確認
- システムリソースの使用状況を確認
まとめ
YAZIは、Rustの非同期I/Oを活用した高速なファイルマネージャーです。その柔軟なカスタマイズ性と豊富な機能により、効率的なファイル操作が可能です。
参考リンク
This post is licensed under CC BY 4.0 by the author.