組み込みコマンドを使用してこれは可能ですか? 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\""