【问题标题】:Emacs Auctex compile error: "Use M-x make-directory RET RET to create the directory and its parents"Emacs Auctex 编译错误:“使用 M-x make-directory RET RET 创建目录及其父目录”
【发布时间】:2013-06-27 14:54:32
【问题描述】:

我在 ubuntu 12.04 上使用 auctex 11.86 运行 emacs 23.3.1。每当我去编译一个乳胶文档(使用C-c C-c)时,如果没有错误,一切都编译得很好。但是,如果有任何错误,它会告诉我使用 C-` 来查看错误,如果这样做,我会收到此错误消息

使用 M-x 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")))

【问题讨论】:

  • AUCTeX 12.82? O.o 最后一个稳定版本是 11.87,AUCTeX 哪里来的?
  • 哦等等...我刚回去检查了一下,上面写着 11.86....不确定我最初看到的是什么。我进行了编辑。
  • 您的文档路径中有空格吗?
  • 我的文档名称是 WNS_poster.tex 我试过没有下划线,但它仍然给我错误
  • 把这个放到你的.emacs:(setq LaTeX-command-style '(("" "%(PDF)%(latex) -file-line-error %S%(PDFout)"))),重启Emacs,让我们知道这是否有效。

标签: emacs latex auctex


【解决方案1】:

有时 AUCTeX 在解析 (La)TeX 编译日志时会感到困惑,并且无法猜测引发错误的正确行。在某些情况下,当括号不平衡时,AUCTeX 会发出一条晦涩的消息“最后一个 TeX 文件关闭后发生错误”,在您的情况下,它建议您创建一个新目录。为了帮助AUCTeX 找到引发错误的正确行,您可以通过自定义变量LaTeX-command-style-file-line-error 选项添加到latexpdflatex。为此,请将以下代码添加到您的 .emacs

(setq LaTeX-command-style '(("" "%(PDF)%(latex) -file-line-error %S%(PDFout)")))

另见AUCTeX FAQ

8. 为什么TeX-next-error (C-c `) 会失败?

在写入日志文件时,TeX 会放入与文件相关的信息, 包括错误消息,在一对括号之间。 AUCTeX 通过解析日志文件确定发生错误的文件 并计算括号。当有其他时,这可能会失败, 存在不平衡的括号。

作为一种解决方法,您可以激活所谓的文件:行:错误消息 对于日志文件。 (这些更容易解析,但可能缺少一些 详细信息。)您可以在 TeX 系统的配置中执行此操作 (查阅其手册以查看其位置)或者添加命令行 切换到 (la)tex 调用,例如通过自定义LaTeX-command-styleTeX-command-list.

【讨论】:

  • 很好的解释。我非常感谢您的帮助。
  • 你好。我正在使用 emacs 21.3 并在 python 模式下打开文件时出现“使用 C-u M-x make-directory RET RET 创建目录及其父级”消息和白色文本板问题。事实证明,这个问题与文件路径有关,就像这个问题一样。更详细地说,我打开了存储在名为“Téléchargements”的目录中的文件,其中法语重音 e 字母看起来会导致问题。移走文件解决了这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-30
相关资源
最近更新 更多