Emacs Auctex:如何根据当前光标位置打开pdf


9

我使用emacs auctex编写乳胶文件。由于文本很长,并且我倾向于在不同的地方进行更改,因此我希望emacs打开pdf,以便在文本中显示光标位于源文件中的位置。

我已经在带有MikTex / Texniccenter / Acroreader的Windows机器上看到了这一点。是否可以在Ubuntu的emacs / auctex / evince中执行此操作?

Answers:


3

为此,您需要在.emacs文件中添加以下几行,以便在使用evince查看pdf时会告诉evince页码:

(setq TeX-view-program-list '(("Evince" "evince --page-index=%(outpage) %o")))
(setq TeX-view-program-selection '((output-pdf "Evince")))

然后,在emacs中打开tex文件后,您需要使用以下命令打开源关联:

C-c C-t C-s

或者,如果您不想每次手动启动它,请在.emacs中添加以下行:

(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode)

另外,如果要阻止emacs启动,请启动以下行:

(setq TeX-source-correlate-start-server t)

就是这样。

编辑:实际上,事实证明您不应该使用pdfsync软件包,因此我删除了对其的所有引用。该解决方案不需要它(显然它已经内置在所有基于TeX的引擎中),使用它似乎会引起问题(对我来说,它似乎破坏了使用表的代码)。

编辑2:我在使用.emacs自动启用TeX-source-correlate-mode时遇到问题,但是现在它们似乎已经消失了。不知道这是因为我更新了emacs还是因为删除了pdfsync。无论如何,现在可以工作了:)


@dbddkmezz然后如何从Emacs打开pdf? C-c C-v不这样做。
Dustin

@dustin C-c C-v为我工作。也许您需要稍微设置pdf查看器?
xuhdev 2015年

如果我使用Latexmk将tex编译为pdf,则无法使用。
CodyChan

4

我使用了http://www.emacswiki.org/emacs/AUCTeX上给出的描述(最后一部分:Synctex和Evince),像个魅力一样……通过这种方式,您可以进行两种同步(例如,在emacs中点击Cc Cv进入pdf页面或点击C-mouse1以便转到emacs中的正确位置)。总体而言,它与第一个答案类似,但是您无需手动包括pdfsync和emacs,而可以使用dbus进行通信。您也必须做Cc Ct Cs。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.