llpp
llpp 是一个轻量级、快速且功能丰富的 PDF、EPUB、XPS 和 CBZ 查看器,基于 MuPDF。
安装
安装 llppAUR 或(静态构建) llpp-gitAUR 软件包。
用法
llpp 使用键盘快捷键和鼠标在文档中导航。默认情况下,按下 F1
或 h
将会显示帮助页面,其中描述了所有其他按键绑定。
查看以下页面以获取 完整帮助文本。
配置
llpp 使用配置文件来存储设置:$XDG_CONFIG_HOME/llpp.conf
或 ~/.config/llpp.conf
。此文件存储以下内容
- 应用程序默认设置。
- 按文件区分的用户偏好设置(例如,上次查看的页面)。
每个文档的选项
按下 i
将进入信息模式,您可以在其中检查和修改当前文档的显示设置。
或者,按下 -X
(其中 X
是帮助屏幕中显示的可调整选项之一)允许您直接设置单个设置。
UI 字体
可以通过在配置中指示大小和文件名来设置 llpp 使用的字体。例如
<llppconfig> <ui-font size='16'><![CDATA[/usr/share/fonts/TTF/DejaVuSansMono.ttf]]></ui-font> <defaults ... > ... </defaults> </llppconfig>
自定义快捷键绑定
可以配置快捷键绑定。例如,要禁用 Esc
退出 llpp,请在 defaults
标签之间添加 keymap
元素,如下所示
<llppconfig> <defaults ... > <keymap mode='view'> <map in='esc' out=/> </keymap> </defaults> </llppconfig>
更多示例可以在 llpp 的示例文件 keys.txt 中找到。对于类似 vi 的快捷键绑定,请参见 此示例。
将注释保存到 PDF
您可以通过在按住 Shift
的同时单击鼠标右键来注释 PDF 文件。要允许保存注释,请添加
savepath-command='echo %s'
到您的 llpp.conf
。在注释文件后,按 w
保存更改。这会将当前 PDF 文件路径 echo
到 savepath-command
选项。
在 Web 浏览器中打开链接
默认情况下,llpp 不会在默认浏览器中打开链接。llpp.conf
中的 uri-launcher
选项负责处理此操作。要在默认 Web 浏览器中打开链接,请将其设置为
uri-launcher='xdg-open "%s"'
技巧和窍门
重新加载文件
可以通过三种方式重新加载文档
- 按下
r
键 - 向 llpp 进程发送 HUP 信号
$ killall -SIGHUP llpp
- 使用“远程”接口(见下文)
多列
对于并排双页查看,请按 -C2
(或在信息模式下将 columns
设置为 2
)。
如果页面偏移错误(左侧页面显示在右侧),请将列设置为 2,1,0
。
llpp 的一个独特功能是能够通过将列设置为 -2
来在中间拆分单个页面。使用 -3
拆分 3 列文档。
远程接口
以下命令将设置远程接口并使用它来重新加载文件“image.pdf”。
$ mkfifo /tmp/llpp.remote $ llpp -remote /tmp/llpp.remote image.pdf & disown $ sleep 1 $ echo reload >/tmp/llpp.remote
有八个远程命令
reload
- 重新加载quit
- 退出goto <页码> <x 坐标> <y 坐标>
- 跳转到goto1 <页码> <相对 y 坐标>
- 跳转到gotor <文件名> <页码>
- 跳转到其他文档gotord <文件名> <远程目标>
- 跳转到其他文档中的命名目标rect <页码> <颜色> <x0> <y0> <x1> <y1>
- 绘制矩形activatewin
- 提升并切换到 llpp 的窗口
使用 Synctex 和 Vim/Emacs 的反向搜索
要使用 llpp 的 synctex 功能,请将以下行添加到您的 ~/.config/llpp.conf
中的 defaults
标签下
<defaults ... synctex-command='SyncTeX-inverse.sh' ...> ... </defaults>
其中 SyncTeX-inverse.sh
是以下脚本
#!/bin/bash pdf_file=$1 page=$(($2 + 1)) # The page number star at zero in llpp x=$3 y=$4 # for vim synctex edit -o "$page:$x:$y:$pdf_file" \ -x "gvim --servername synctex --remote-wait-silent +%{line} '%{input}'" # for emacs # synctex edit -o "$page:$x:$y:$pdf_file" -x "emacsclient +%{line} '%{input}'"
确保 SyncTeX-inverse.sh
是一个可执行脚本,并将其添加到您的 PATH
环境变量中。要使用 synctex
命令,您需要来自 Arch 官方仓库的 texlive-bin 软件包。