previewing image file with ranger on foot ― 2023年05月06日 10:19
はじめに
alpine linux on ideapad miix320 に、sway を入れています。 sway では、footを使用しており、 foot 上で動くファイルマネージャを探しています。
ranger の画像ファイルプレビュー
nnnや、vifm等も試しましたが、rangerが良さそうです。 ただ画像のプレビューが、うまく動作しません。
- set preview_images true
- set preview_images_method w3m
apk で w3mと、w3m-image をインストールし、 /usr/lib/w3m/w3mimgdisplayがあっても、動作しません。
どうやら 「w3mimagedisplayは、X Serverとやりとりして WINDOWID環境変数で指定されたウィンドウに直接画像を表示する。」 ようで、Wayland環境のswayではうまく行かないのかもしれません。
Sway_Wallpaper_Blue_1136x640.png の画像サイズを w3mimdgisplay で取得はできますが、表示はできませんでした。
v1.9.3の ranger の preview_images_method は、以下のどれかです。
- w3m
- terminology
- urxvt
- urxvt-full
- kitty
- ueberzug
ueberzugは、 現在メンテナンスされていません。
apk で kitty をインストールし、kitty上で rangerを使用すると プレビューが表示されます。terminology, urxvt, urxvt-fullも、 未確認ですが、それぞれのterminal上で動作すると思います。
ただ、terminalを増やしたくなく、 foot上で動作できればと思っています。
sixel 対応
footは、Sixel Image をサポートしています。 rangerのrc.confの変更履歴を見ると 2023/4/16に、sixel機能のブランチがマージされていました。
alpine linux v3.17の rangerは、1.9.3-r3で、2021-12-15のビルドです。2023/05/06現在、edgeのrangerは、1.9.3-r6で、2023-04-22のビルドです。
edgeのビルドログと、ranger/APKBUILDをみると、githubのv1.9.3.tar.gzをダウンロードして、ビルドしているようです。
その v1.9.3.tar.gzは、2023/4/16のsixel機能を取り込んだものではありません。
そこで、github の ranger/ranger の masterを取得し、foot上の rangerで、sixel機能を用いてプレビュー画像が表示されるかを、仮想マシン上で試してみました。
- ~/tmp 配下に、ranger-master.zip をダウンロード
- ranger-master.zip を展開
- sudo apk add py3-setuptools
- sudo apk add py3-pytest
- sudo apk add py3-astroid
- sudo apk add py3-pylint
- python3 ./setup.py build
- pytest-3 tests
pytest-3 tests を実行した際に、 py3-pytest だけでは、エラーになったので、 py3-astroid, py3-pylintを追加しました。
パッケージビルドや、インストールとしては python3 setup.py installなどを実行する必要がありますが、今回は検証なので buildまでとしています。
buildのあと、./ranger.py を実行すると、 foot上でrangerを使用して、画像のプレビューを表示できました。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。