Emacs 如何用编译开始替换内部编译?

Emacs 如何用编译开始替换内部编译?,emacs,elisp,valgrind,compile-mode,Emacs,Elisp,Valgrind,Compile Mode,我用它在emacs内部运行valgrind。但是emacs的最新版本已经弃用了compile internal。我对elisp的了解还不足以理解如何将编译内部调用转换为编译开始调用。这就是所讨论的原始函数调用的样子: (compile-internal command "No more errors" "valgrind") 我在网上发现了这一点,表明编译开始的可能用法: (compilation-start command mode #'(lambda (mode-name

我用它在emacs内部运行valgrind。但是emacs的最新版本已经弃用了compile internal。我对elisp的了解还不足以理解如何将编译内部调用转换为编译开始调用。这就是所讨论的原始函数调用的样子:

(compile-internal command "No more errors" "valgrind")
我在网上发现了这一点,表明编译开始的可能用法:

(compilation-start command mode
         #'(lambda (mode-name) (concat "*" buf-name "*")))

任何帮助都将不胜感激

我不确定你尝试了什么,结果如何

根据文档,我会将编译内部行替换为:

(compilation-start command nil (lambda (mode-name) "*valgrind*"))