深い階層のディレクトリに移動する際、単純に「cd」していくだけでは時間がかかります。
bashやzshではシェルの補間機能を使うこともできますが、もっと直感的にディレクトリを探す方法があれば便利かもしれません。本日紹介する「broot」はこの機能を実現するオープンソースのファイル管理ツールです。
ディレクトリを「tree」のように階層表示し、ディレクトリを検索、移動することができます。それだけでなくファイルの表示や編集、ペインの分割を利用したファイルのコピーや移動など、ファイルマネージャーのような機能も実装されています。
以下使用方法を説明します。
brootのインストール
brootはRust製のツールです。Rustの開発環境がある場合以下のコマンドでインストールできます。
cargo install broot
もしくはリポジトリをcloneし、以下のコマンドでビルドします。
git clone https://github.com/Canop/broot.git cargo install --path .
macOSの場合、HomebrewやMacPortsでインストールできます。
brew install broot sudo port install broot
LinuxやWindowsの場合GitHubからバイナリをダウンロードすることもできます。
UNIX系の環境の場合ヘルパー関数をインストールすることが推奨されています。
broot --install
これで「br」コマンドが使用可能となり、ディレクトリを移動してbrootを終了する「Alt + Enter(opt + enter)」が使えるようになります。
brootの使用方法
「broot」または「br」コマンドで呼び出します。
▲すると起動ディレクトリ以下のファイル構造が階層表示されます。「/(スラッシュ)」のあとに文字列を入力するとその文字列にマッチするディレクトリやファイルのみが絞り込まれて表示されます。マッチした項目はタブキーで選択していくことができます。
ディレクトリを選択して「Enter」を押すとその内容が表示され、ファイルを選択して「Enter」を押すとデフォルトの開くアプリでそのファイルの内容が表示されます。
絞り込みは「Esc」キーで解除可能です。
「Ctrl + p」を押すとパネルが分割されます。
▲フォーカスのあるパネルは「Ctrl + ←」「Ctrl + →」で変更できます(うまく動かない場合システムショートカットと衝突していないか確認してください)。 ファイルを選択した状態で「:cpp」と打ちこむと選択した項目を別のパネルにコピーする事ができます。
▲操作が分からなくなった場合「?」でヘルプメッセージが表示されます。コマンドを入力するには「:」に続けて名前を入力するか、ショートカットキーを入力します。
まとめ
brootはRustで作られたオープンソースのファイル管理ツールです。ディレクトリを高速に移動できるだけでなく、ファイルの操作も可能な便利なツールとなっています。