双显示器设置方便同时打开多个窗口。例如,通常在一台显示器上运行 LaTeX 编辑器,在另一台显示器上运行 DVI/PS/PDF 输出查看器。但有时您只有两台独立的机器,每台机器都有一个显示器。如何在一台机器上编辑 LaTeX 文档,但在第二台机器上实时显示编译后的文档,并且仍能像往常一样进行正向逆向搜索?
答案1
使用两台或多台单显示器机器模拟多显示器设置相对容易西普拉,一个远程显示服务器和客户端系统。服务器和客户端都适用于 GNU/Linux,但对于此处描述的过程,您只能使用 Microsoft Windows 或 macOS 作为客户端(即 PDF 查看器)。
以下说明假设您想要在机器上运行 LaTeX 编辑器desktop
并在机器上显示 PDF 查看器laptop
。desktop
机器需要运行 GNU/Linux,但laptop
可以运行 GNU/Linux、Microsoft Windows 或 macOS。两台机器需要在网络上相互访问——我在这里假设您希望 xpra 通过 SSH 连接机器,但如果您不介意缺乏安全性,也可以使用 xpra无需 SSH。
首先,在两台机器上安装 xpra。
desktop
使用您选择的显示端口启动 xpra 服务器。在 上输入以下内容desktop
:xpra start :700
接下来,
laptop
连接到desktop
xpra 服务器。在 上键入以下内容laptop
: 在 Microsoft Windows 上,您可能希望使用而不是 来xpra attach ssh:username@desktop:700
调用上述命令,以便查看日志输出。或者,您可以直接运行而不使用任何参数来启动连接向导 GUI。xpra_cmd
xpra
xpra
从命令行或从运行的 LaTeX 编辑器中
desktop
,照常启动 PDF 查看器,但要让它将环境变量设置DISPLAY
为值:700
。例如,如果您正在运行 Emacs 和 AUCTeX,您可以键入
C-c C-c View
以开始启动查看器,然后手动编辑命令行,如下所示:DISPLAY=:700 mypdfviewer myfile.pdf
如果要在 上启动多个不同的查看器窗口,可以从步骤 4 开始重复laptop
。如果您有两台以上的机器,则可以从步骤 2 开始重复,使用不同的显示端口并在不同的机器上启动不同的查看器。
编辑完成后,您可以运行xpra stop :700
以desktop
停止 xpra 服务器。客户端laptop
将自动断开连接。
此方法的优点在于它可与 SyncTeX 的正向-反向搜索配合使用。例如,使用 AUCTeX,您仍然可以C-c C-v
在 上的源文档中的任何位置键入内容desktop
,而 上的 PDF 查看器laptop
将跳转到 PDF 中的相应位置。相反,您可以在 上的 PDF 查看器中按住 shift 并单击(或按住 control 并单击,具体取决于查看器)laptop
,而 上运行的 Emacs 实例desktop
将跳转到相应的源代码行。