如何在降价模式下添加auctex自动完成功能?

时间:2014-01-28 04:56:19

标签: emacs autocomplete markdown auctex

我的emacs版本是24.3.1,我需要在降价模式下输入许多乳胶代码(例如数学公式)。所以我想使用auctex提供的自动完成功能。但降价和乳胶是两种主要模式,我不能在同一个缓冲区中使用它们。有一个名为mmm-mode的包,它在一个缓冲区中支持多种主要模式。问题是我不知道如何在我的.emacs文件中配置它,请给我一些建议。如果你有其他方法可以做这些事情,也欢迎。

1 个答案:

答案 0 :(得分:2)

如果您必须在markdown-mode中执行此操作,我建议不要使用mmm,这很难配置并且有些错误。

相反,请考虑使用indirect buffers。此过程类似于org-mode调用org-edit-special的功能,您可以使用源语言的主要模式在不同的缓冲区中编辑源块。

  1. 访问您的Markdown文件,例如file.md,使用markdown-mode
  2. 如果要编辑LaTeX代码段,请使用M-x clone-indirect-buffer。当然,如果您经常使用它,可以将它绑定到一些方便的键上。
  3. 您现在将有两个缓冲区访问file.md。默认情况下,它们类似于file.mdmarkdown-mode中的原始缓冲区)和file.md<2>(间接缓冲区)。
  4. 此步骤是可选的,但我强烈建议将narrowing file.md<2>缓冲区推荐给相关的LaTeX代码段。
  5. file.md<2>缓冲区中,将主要模式更改为AUCTeX。
  6. 两个缓冲区将修改同一个文件。一个中的更改将反映在另一个中,并且从任一个中保存将保存文件。不同之处在于,将使用markdown-mode,而另一个将使用AUCTeX。

    您可以在完成后杀死file.md<2>,也可以将其保留在下一个代码段中。只需缩小它,找到新的片段,然后再缩小它。