org mode中 inline latex ($ $)如何跳出补全提示框

我在使用doom emacs。我在org 中写inline latex,以及单纯在org mode 中都弹不出像其他buffer的补全提示框
我试了试这(add-hook! org #'company-mode),可是没用。请问有什么解决方法吗?

建议先看一下 company-mode 是否已经开启,例如在 org 文件中用 C-h v 来查看 company-mode 这个变量的值。

如果值是 nil 的话,说明没开启,可以先试试 M-x company-mode,在当前buffer开启补全,试试是不是你想要的结果;如果值是 t 的话,就说明已经开启了,你需要查看company-backends

1 个赞

company-mode已经开启了,以下是company-backends的值:

(company-capf
 (:separate company-dabbrev company-yasnippet company-ispell))

那应该是没问题的。关于这几个后端提供的补全可以在这里的第5节看到 company-mode (phenix3443.github.io)。 比如你在 org 文件中输入单词 test,那么在后面接着输入 te 的时候,company-dabbrev 应该会给你提供 test 这个单词的补全的,照理来说这个时候会有补全提示的。

如果不行的话,可以尝试把你的配置文件注释掉,看看是不是你的配置出了问题?

另外,关于你题目中问的 inline latex ,是指你需要 latex 相关命令的补全吗?

1 个赞

谢了,现在org mode可以补全了。就是我想org mode inline latex 也能有latex相关命令的补全。

要是想要latex的命令的补全的话,需要添加相关的company后端。我在doom里的设置是这样的:

(set-company-backend! 'org-mode '(company-math-symbols-latex company-latex-commands company-yasnippet company-dabbrev))

你可以根据自己的情况修改这些后端。补全latex命令的是 company-latex-commands,补全数学符号的是company-math-symbols-latex

2 个赞