zathura
zathura 是一个可自定义的文档查看器,具有类似 vi 的键盘绑定。它提供了一个简约且节省空间的界面。用户主要通过键盘与 zathura 交互。通过插件支持不同的文件格式。支持 PDF、PS、DjVu 和 漫画书 文件。
参阅 zathura(1) 以获取更多信息。
安装
- zathura-cb — 漫画书支持
- zathura-djvu — DjVu 支持
- zathura-pdf-mupdf — 基于 MuPDF 的 EPUB、PDF 和 XPS 支持
- zathura-pdf-poppler — 基于 Poppler 的 PDF 支持
- zathura-ps — PostScript 支持
配置
参阅 zathurarc(5) 以获取更多信息。
启用复制到剪贴板
~/.config/zathura/zathurarc
set selection-clipboard clipboard
并排模式
在并排 (d
) 模式下,要在左侧查看奇数页,请输入命令 set first-page-column 1:1
到 zathura 中。这对于阅读双页插图或乐谱扫描特别有用,在这些情况下,排版优化了某些页面上的翻页
~/.config/zathura/zathurarc
map D set "first-page-column 1:1" map <C-d> set "first-page-column 1:2"
使 zathura 成为默认 PDF 查看器
例如,确保 xdg-open(1) 将使用 zathura 打开 pdf 文件。
首先,确保 zathura 的 桌面条目 存在于 /usr/share/applications/org.pwmt.zathura.desktop
。如果不存在,请从 zathura 仓库 下载桌面条目到 /usr/share/applications/org.pwmt.zathura.desktop
。
然后,使用 xdg-mime(1) 将 zathura 设置为默认值
$ xdg-mime default org.pwmt.zathura.desktop application/pdf
Emacs 键盘映射
zathura 默认使用类似 vi- 的键盘映射。Emacs 键盘绑定需要单独配置。可以在这里找到一个示例。
用法
可以通过按 :
直接在 zathura 中输入命令,就像在 vi 中一样。
zathura 会自动重新加载文档。当处理编译文档(例如用 LaTeX 编写的文档)时,zathura 将在每次编译发生时刷新输出。zathura 具有启用反向搜索(使用 "synctex")的选项。
zathura 可以将文档调整为适合页面 (a
) 或适合宽度 (s
),并且它可以旋转页面 (r
)。它可以并排查看页面 (d
) 并且具有全屏模式。页面也可以重新着色为黑色背景和白色前景 (C-r
)。支持大多数 vi 的移动/滚动命令。
可以通过单击链接来关注链接。此外,可以按 f
突出显示页面上的所有链接并为其分配一个数字,键入链接的编号并按 Enter 键将跳转到链接的位置。如果使用 F
,则只会状态栏中显示链接的位置。
zathura 可以搜索文本并将文本复制到主 X 选择。它支持书签并可以打开加密文件。
可以使用配置文件自定义 zathura 的行为和外观。zathura 具有执行外部 shell 命令的能力。可以使用 tabbed 在选项卡中打开它。
zathura 通过使用 seccomp 过滤器提供可选的沙盒模式,以提供强化的运行时环境。
页码偏移
许多印刷书籍的版本仅在文本开头开始计算页码。但是,zathura 计算 PDF 的所有页面,包括某些版本不计算的页面:封面、版本声明、最初的几页空白页等。因此,zathura 的页码有时与版本不一致,这使得很难遵循目录或引文使用的页码。
命令 :offset <number>
将使 zathura 在跳转到页码时考虑偏移量(通过键入 <number>G
,命令 :<number>
不会考虑偏移量 [1])。例如,给定书籍从 PDF 的第 17 页开始计数其页码(因此在第 17 页,索引为 1;在第 18 页为 2,依此类推)。在设置 :offset 16
时,245G
将跳转到 PDF 的第 261 页,而不是第 245 页。
沙盒
zathura 附带一个额外的 zathura-sandbox 二进制文件,该文件通过使用 seccomp 过滤器和 landlock 提供安全的运行时环境。此沙盒版本的 zathura 在没有网络访问的情况下运行,具有只读文件系统权限和严重限制的允许系统调用数量,从而显着减少了内核攻击面。
使用 zathura-sandbox 时,某些功能被禁用,例如写入文件、打印和书签。
在 zathura 中阅读 Microsoft Office/LibreOffice 文档
zaread-gitAUR 脚本允许使用 zathura 打开 Microsoft Office/LibreOffice 文档。
要使用它,请运行
$ zaread /path/to/document.docx
故障排除
低字体渲染质量
- 尝试将后端从 zathura-pdf-poppler 更改为 zathura-pdf-mupdf。
- 尝试使用 PDF.js 代替。
Poppler 内存使用率过高
根据 问题,从 zathura-pdf-poppler 切换到 zathura-pdf-mupdf 可能会解决问题。但是,如果您在大型文档中搜索,仍然会 使用大量内存。