在 Windows 10 中配置 Emacs/AucTeX 以使用 Sumatra PDF?

在 Windows 10 中配置 Emacs/AucTeX 以使用 Sumatra PDF?

这确实很容易做到,但我能找到的所有建议要么是几年前的(2012 年),要么没有帮助 -Emacs 维基声称“不幸的是,配置可能很难正确完成,主要是因为步骤太多。”好吧,我不介意采取“许多”步骤,只要我知道要采取哪些步骤!请注意,我在 Linux 下使用 Emacs/AucTeX 已有多年,但出于工作原因,我不得不在 Windows 10 上花费更多时间。

无论如何,如果有人能给我提供一组最新的说明或示例(.emacs例如配置),我会非常高兴。谢谢!

答案1

AUCTeX 对 SumatraPDF 的内置支持在 11.90 版发布后得到了改进。因此,请确保您安装了最新版本,这可以通过 ELPA 轻松完成。

您需要触及三个区域:

Win10的PATH环境变量

此步骤是可选的:调整PATH环境变量并将包含的目录添加SumatraPDF.exe到其中。

Emacs 和 AUCTeX

您必须调整两个 AUCTeX 变量:TeX-view-program-listTeX-view-program-selection。简而言之,在 中 TeX-view-program-list定义可用的查看器,在 中将 TeX-view-program-selection定义的查看器与文档类型关联。如果您SumatraPDF的 中有,则可以跳过此步骤。否则,您必须通过在 中输入类似以下内容来PATH对 中的可执行文件的路径进行硬编码:TeX-view-program-list.emacs

(setq TeX-view-program-list
      '(("SumatraPDF"
         ("c:/path/to/SumatraPDF -reuse-instance"
          (mode-io-correlate " -forward-search \"%b\" %n")
          " %o")
         "SumatraPDF")))

现在您将其关联SumatraPDF.pdf 中生成的文件的查看器TeX-view-program-selection。再次将此行放入您的 中.emacs

(setq TeX-view-program-selection '((output-pdf "SumatraPDF")))

最后,确保您的文件中含有以下行.emacs

(server-start)

现在重新启动 Emacs。

苏门答腊PDF

配置 SumatraPDF 很简单。您需要将此行添加到 SumatraPDF 首选项中以进行反向搜索:

"C:\path\to\emacs\bin\emacsclientw.exe" -n +%l "%f"

如果您没有看到反向搜索字段,请打开文件 SumatraPDF-settings.txt,搜索EnableTeXEnhancements并将其设置为true。重新启动 SumatraPDF 并重试。

编译你的 .tex 文件

打开一个.tex文件,点击C-c C-t C-s并检查 Minibuffer 中的消息。确保它显示 Tex-Source-Correlate mode enabled。现在点击C-c C-c 编译文件并C-c C-v更改为 SumatraPDF。

答案2

只需一条小小的评论:如果 SumatraPDF 的路径包含空格(就像默认安装为“Program Files (x86)”的情况一样),那么该路径必须用引号引起来:"\"c:/Program Files (x86)/SumatraPDF/SumatraPDF\" -reuse-instance"等等。

答案3

另一条评论,一定要使用以下命令启动 emacs emacsclientw.exe -n -c -a ""能够连接到正在运行的实例。此处详细说明: https://emacs.stackexchange.com/questions/35545/setting-up-emacsclient-on-ms-windows

相关内容