我喜欢用 zathura 阅读我的 PDF,但我缺少一个重要的功能。
如何打开当前文件的副本(在 zathura 的另一个实例中)?
感谢您的帮助!
更新(解决方案): 对于我的 zathura 版本(zathura 0.5.2),我只需要添加以下行
map <C-o> exec "zathura $FILE"
在 .config/zathura/zathurarc 中
我感谢 renzev,他的评论对我找到这个解决方案帮助很大!
答案1
我也喜欢扎图拉!我最近才开始使用它,所以我不确定这是否是完成你想要的事情的最佳方法,但尝试添加以下内容~/.config/zathura/zathurarc
(如果文件不存在,则创建文件):
map <C-o> feedkeys ":exec zathura $FILE<Return>"
这将映射CTRL
+o
以使用当前文件生成 Zathura 的新实例。
如果你真的想复制您的文件并打开副本,而不是打开同一个文件两次,那么您可以使用一些内联脚本:
map <C-o> feedkeys ":exec sh -c 'NEW=$(zenity --file-selection --save --filename $FILE) && cp $FILE $NEW && zathura $NEW'<Return>"
这将显示一个文件对话框,询问您要将副本保存在哪里,然后打开副本。请注意,该zentiy
程序是必需的。另请注意,如果您的文件名包含空格,这将会中断。如果您希望它适用于带有空格的文件,您可以创建一个单独的 shell 脚本(称为类似zathura_open_copy.sh
)来进行复制和打开:
#!/bin/bash
set -e
OLD=$@
NEW=$(zenity --file-selection --save --filename "$OLD")
cp "$OLD" "$NEW"
zathura "$NEW" & disown
然后该zathurarc
行将是:
map <C-o> feedkeys ":exec zathura_open_copy.sh $FILE<Return>"
如果 zathura 以奇怪的方式安装(例如不在 $PATH 中,或者通过 flatpak),请将zathura
上述命令更改为通常从终端启动 zathura 的方式。
我能想出这个感谢这个答案