lf
lf ("list files") は、ranger から 大きなインスピレーション を受け Go で書かれたターミナルファイルマネージャーです。
優れた機能としては、高速起動と低メモリ使用量、サーバー/クライアントアーキテクチャ、高度なカスタマイズです。
ranger とは異なり、タブやウィンドウなどの一部の機能は 意図的 に含まれておらず、代わりに ウィンドウマネージャ または ターミナルマルチプレクサ によって処理されます。
目次
インストール
lf パッケージ、または開発バージョンの lf-gitAUR を インストール して下さい。
使い方
アプリケーションを起動するには、ターミナル を起動し、lf
を実行します。
デフォルトのキーバインドは vim のキーバインドに似ていますが、ranger のデフォルトとはいくつかの違いがあります。
設定
/usr/share/doc/lf/lfrc.example
にあるデフォルト設定を ~/.config/lf/lfrc
にコピーして、さらにカスタマイズするためのテンプレートとして使用します。いくつかの共通機能は、設定例にコメントとしてすでに含まれています。より広範な設定については、ドキュメント を参照してください。コミュニティからの有用な設定例も [1] で見つけることができます。
ヒントとテクニック
移行ガイド (ranger から lf へ)
すでにファイルマネージャーとして Ranger に慣れているユーザーにとって、lf への移行は、デフォルトの機能が減り、動作が若干異なることを意味します。 lf プロジェクト wiki には、ranger からデフォルト機能を追加するために lf を設定する方法に関するステップバイステップの guide が含まれています。
rifle ファイルオープナーの使い方
ranger パッケージに含まれるファイルオープナー rifle を使用できます。
関連アプリケーションでファイルを開くために rifle を自動的に使用するように環境変数を設定します。
export OPENER='rifle'
ファイルを編集する場合、デフォルトのエディターを設定することもできます。
export EDITOR='vim'
ファイルのプレビュー
現在選択されているファイルの内容を自動的にプレビューするには、lfrc でカスタムプレビューアスクリプトを設定します。
ranger の scope.sh
スクリプトを簡単に使用でき、カスタマイズの優れたテンプレートとして機能します。
set previewer "~/.config/ranger/scope.sh"
プレビューアーのサンドボックス化
デフォルトの lf 設定ではテキストファイルのみがプレビューされますが、より複雑なプレビューパーサーを使用するのは多少危険です。pdftotext のようなプレビューパーサーに脆弱性がある場合、この単純なスクリプトを使用して、bubblewrap でプレビューアーをサンドボックス化することができます。
~/.config/lf/previewSandbox.sh
#!/bin/bash set -euo pipefail ( exec bwrap \ --ro-bind /usr/bin /usr/bin \ --ro-bind /usr/share/ /usr/share/ \ --ro-bind /usr/lib /usr/lib \ --ro-bind /usr/lib64 /usr/lib64 \ --symlink /usr/bin /bin \ --symlink /usr/bin /sbin \ --symlink /usr/lib /lib \ --symlink /usr/lib64 /lib64 \ --proc /proc \ --dev /dev \ --ro-bind /etc /etc \ --ro-bind ~/.config ~/.config \ --ro-bind ~/.cache ~/.cache \ --ro-bind "$PWD" "$PWD" \ --unshare-all \ --new-session \ bash ~/.config/lf/preview.sh "$@" )
プレビューアをサンドボックススクリプトに設定し、実際のプレビュースクリプトを ~/.config/lf/preview.sh
に置きます。
set previewer ~/.config/lf/previewSandbox.sh