2012-06-09 31 views
2

特别是在LaTeX(auctex)中为我工作时出现此问题,但我认为它必须具有通用的emacs解。如果我打开doc.foo文件,我希望emacs在同一个文件夹中查找并打开doc.bar文件

对于每个doc.tex文件,我在同一个文件夹中有一个关联和经过编辑的doc.sty文件。

有没有一种方法,只要我打开doc.tex文件,我可以让emacs打开该文件夹中的doc.sty文件?我在elisp中并不熟练,所以非常简单 - 它不需要强健的代码:它可以假定两个文件都命名为doc。*,并且两者都存在。

回答

6

看看的评论为:
M-Xfind-libraryRETfind-fileRET

这不正是你问什么,但它是打开相关文件的内置解决方案。只需将一个密钥绑定到ff-find-other-file(或ff-find-related-file如果您更喜欢别名),并且您可以轻松地在两个文件之间来回切换。

具体地,请参阅:

  • C-Hvff-other-file-alistRET
  • C-Hvff-search-directoriesRET

所以像这样:

(add-hook 'latex-mode-hook 'my-latex-mode-hook) 

(defun my-latex-mode-hook() 
    "My LaTeX customisations." 
    (setq ff-search-directories '(".") 
     ff-other-file-alist '(("\\.tex$" (".sty")) 
           ("\\.sty$" (".tex")))) 
    (local-set-key (kbd "C-c f") 'ff-find-other-file)) 
相关问题