这确实很容易做到,但我能找到的所有建议要么是几年前的(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-list
和TeX-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