据我从手册中可以看出,C-c ?在 AUCTeX 中运行应该texdoc %s在指定的包名称上运行。对于绝大多数包来说,它确实如此,但是有些包没有找到 -M-! texdoc memoir工作正常,但C-c ? memoir在检测点下的包以及在我手动键入文档时加载文档时都失败。
我一直在尝试找到控制 的调用的变量texdoc,但找不到。M-: (executable-find "texdoc")按预期返回/usr/bin/texdoc,但这就是我所得到的。
任何建议将不胜感激...
从版本 11.89 开始,AUCTeX 默认绑定C-c ?到TeX-documentation-texdoc,这正是所要求的。
对于 AUCTeX 的早期版本,请参阅下面的原始答案。
我发现TeX-doc(绑定到 的函数C-c ?)过于复杂:在类的情况下,memoir它永远不会调用texdoc memoir,因为 doc 文件被命名memman.pdf而不是memoir.pdf. 这应该在上游修复。
目前,您可以使用这个简单得多的函数,它会盲目运行而texdoc <symbol-at-point>无需进一步检查:
(defun mg-TeX-doc ()
  "Search documentation with texdoc for symbol at point."
  (interactive)
  (call-process "texdoc" nil 0 nil "--view" (thing-at-point 'symbol)))
C-c ?如果你想TeX-doc用下面的代码替换standard ,你可以将其绑定到:
(eval-after-load "tex"
  '(progn
     (define-key TeX-mode-map (kbd "C-c ?") 'mg-TeX-doc)))