「Lf」の版間の差分
(他言語へのリンクを修正) |
(→サンドボックス化プレビュー: 翻訳を修正) |
||
| 46行目: | 46行目: | ||
set previewer "~/.config/ranger/scope.sh" |
set previewer "~/.config/ranger/scope.sh" |
||
| − | === サンドボックス化 |
+ | === プレビューアーのサンドボックス化 === |
デフォルトの lf 設定ではテキストファイルのみがプレビューされますが、より複雑なプレビューパーサーを使用するのは多少危険です。pdftotext のようなプレビューパーサーに脆弱性がある場合、この単純なスクリプトを使用して、{{Pkg|bubblewrap}} でプレビューアーをサンドボックス化することができます。 |
デフォルトの lf 設定ではテキストファイルのみがプレビューされますが、より複雑なプレビューパーサーを使用するのは多少危険です。pdftotext のようなプレビューパーサーに脆弱性がある場合、この単純なスクリプトを使用して、{{Pkg|bubblewrap}} でプレビューアーをサンドボックス化することができます。 |
||
2023年8月23日 (水) 14:42時点における版
関連記事
lf (リストファイル) は、ranger から大きなインスピレーションを受けて Go で書かれたターミナルファイルマネージャーです。優れた機能としては、高速起動と低メモリ使用量、サーバー/クライアントアーキテクチャ、高度なカスタマイズです。ranger とは異なり、タブやウィンドウなどの一部の機能は意図的に含まれておらず、代わりにウィンドウマネージャーまたはターミナルマルチプレクサによって処理されます。
インストール
使い方
アプリケーションを起動するには、ターミナル を起動し、lf を実行します。
デフォルトのキーバインドは vim のキーバインドに似ていますが、ranger のデフォルトとはいくつかの違いがあります。
設定
/usr/share/doc/lf/lfrc.example にあるデフォルト設定を ~/.config/lf/lfrc にコピーして、さらにカスタマイズするためのテンプレートとして使用します。いくつかの共通機能は、設定例にコメントとしてすでに含まれています。より広範な設定については、ドキュメント を参照してください。コミュニティからの有用な設定例も [1] で見つけることができます。
ヒントとテクニック
ライフルファイルオープナーの使い方
ranger パッケージに含まれるファイル オープナーライフルを使用できます。
関連アプリケーションでファイルを開くためにライフルを自動的に使用するように環境変数を設定します。
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