nic*_*ick 3 emacs latex auctex
我在ubuntu 12.04上使用auctex 11.86运行emacs 23.3.1.每当我去编写一个乳胶文件(使用C-c C-c),如果没有错误,一切都编译得很好.但是,如果有任何错误,它会告诉我C-`用来查看错误,如果我这样做,我会收到此错误消息
使用Mx make-directory RET RET创建目录及其父目录
它会在几秒钟之后消失.然后它转到另一个屏幕,解释乳胶代码中的错误.但是,现在我不能简单地C-x 1回到乳胶代码.我必须C-x C-c重启emacs.
这是我的.emacs档案
(setq backup-by-copying t
backup-directory-alist '(("." . "~/.emacsBkups"))
delete-old-versions t
kept-new-versions 5
kept-old-versions 2
version-control t)
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq TeX-PDF-mode t)
;;(require 'ess-site)
;;(ess-toggle-underscore nil)
(require 'whitespace)
(setq whitespace-style '(lines-tail face))
(add-hook 'c-mode-hook 'whitespace-mode)
(add-hook 'c++-mode-hook 'whitespace-mode)
(add-hook 'python-mode-hook 'whitespace-mode)
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
(c-set-offset (quote cpp-macro) 0 nil)
(setq TeX-view-program-list '(("Evince" "evince --page-index=%(outpage) %o")))
(setq TeX-view-program-selection '((output-pdf "Evince")))
Run Code Online (Sandbox Code Playgroud)
有时AUCTeX会对解析(La)TeX编译的日志感到困惑,并且无法猜出引发错误的正确行.在某些情况下,AUCTeX会发出一条模糊的消息"在最后一个TeX文件关闭后出现错误",当有不平衡的括号时,在您的情况下,它建议您创建一个新目录.为了帮助AUCTeX找到引发错误的正确行,您可以将-file-line-error选项添加到自定义latex或pdflatex通过自定义变量LaTeX-command-style.为此,请将以下代码添加到您的.emacs:
(setq LaTeX-command-style '(("" "%(PDF)%(latex) -file-line-error %S%(PDFout)")))
Run Code Online (Sandbox Code Playgroud)
另见AUCTeX常见问题解答:
8.为什么
TeX-next-error(C-c `)会失败?在写入日志文件时,TeX会在一对括号之间放置与文件相关的信息,包括错误消息.AUCTeX通过解析日志文件并计算括号来确定发生错误的文件.当存在其他不平衡的括号时,这可能会失败.
作为一种解决方法,您可以激活所谓的file:line:日志文件的错误消息.(这些更容易解析,但可能缺少一些细节.)要么在TeX系统的配置中执行此操作(请参阅其手册以查看它的位置),或者在(la)tex调用中添加命令行开关,例如通过定制
LaTeX-command-style或TeX-command-list.