如何让 PDF 查看器跳转到最新的 tex 更新?

如何让 PDF 查看器跳转到最新的 tex 更新?

Vim插件vim-latex-live-preview:LLPStartPreview定期刷新生成的 PDF(通过在 tex 文件上调用 pdflatex)。

刷新后,PDF 中显示的位置保持不变(也许正如人们所预料的那样?)。

我正在使用的 PDF 查看器是evince,尽管我很乐意更改。zathura看起来很有趣。

我需要的:通过 vim 对源代码进行更改后,下次刷新时 PDF 查看器应跳转到最新更改。就像Tex Studio这样。

我能想到的唯一可能方法是告诉 PDF 查看器跳转到特定的行/页面/部分。

问:是否有一个 Vim 插件可以实现这个功能?

问:是否有一个 PDF 查看器允许重新加载后跳转到文件中的特定位置?

答案1

无法分辨 vim-latex 的预览如何工作,但基于以下要点,使用 zathura 只需进行少量配置即可在 vim 中设置向前和向后搜索:

https://gist.github.com/vext01/16df5bd48019d451e078

你的见解是正确的。首先,你应该在synctex启用的情况下编译你的 pdf(我想 vim-latex 会自动执行此操作)。然后,zathura有一个--synctex-forward选项,允许你指定 pdf 上要跳转到的位置。这是“前进”方向。另一方面,有一个告诉 zathura在你执行时-x command执行的。最后,vim 可以使用 启动,这样你就可以从外部调用它(zathura 的选项)并跳转到特定位置——“后退”方向。commandCTRL+Click--servername nameserver-x

要点很好地实现了这一点。 下面是我稍作修改的版本:

基本上,

  • 我总是启动vim <leader>p在正确的位置打开 pdf。
  • vim别名会自动设置一个服务器,允许外部程序与 vim 对话。
  • 映射Synctex()调用vimura外部脚本,传递--synctex-forward来自 vim 上下文的选项和数据(line('.')...)
  • vimura-x使用 vim 设置和--synctex-forward从参数中检索来调用 zathura 。
  • 最后,<leader>p将pdf移动到正确的位置,Ctrl+click将vim移动到正确的位置。

希望这不会让人太困惑。

相关内容