Zathuraの履歴からファイルを開く

Zathuraの履歴からファイルを開く

組み込みコマンドを使用してこれは可能ですか? AFAIK、そうではないので、execこれを達成するためにZathuraコマンドを使用するマッピングを定義してみました。存在するbash

cat ~/.local/share/zathura/history | grep -Po "\[\K[^\]]*" | dmenu | xargs zathura

exec操作は完了しましたが、Zathuraで使用したときにコマンドが正しく機能することができませんでした。実際、次のような簡単なもの

:exec ls | dmenu

ls | dmenu周囲に引用符を付けても機能しません。したがって、より一般的な質問は次のとおりです。 Zathuraのパイプを使ってコマンドを実行するには?

答え1

#!/bin/sh

options='-columns 6 -width 100 -lines 15 -bw 2 -yoffset -2 -location 1'

selected=$(\
        cat ~/.local/share/zathura/history | grep -Po '\[\K[^\]]*' \
        | rofi -dmenu -i -markup-rows \
        ${options} 
        )

# exit if nothing is selected
[[ -z $selected ]] && exit

zathura "$selected"

exit 0

答え2

私の場合、最近のファイルは組み込みの「open」コマンドを使用して機能します。

:open /Tabキーを入力して押してみてください。 「最近のファイル」とマークする必要があります。

答え3

次のようなことはトリックを行います<cr>

map H feedkeys ":exec sh -c \"cat ~/.local/share/zathura/history | grep -Po '\[\K[^\]]*' | dmenu | xargs zathura\""

関連情報