任何具有最大值自动完成功能的文本编辑器?

Any text editor with autocompletion for maxima?

我正在尝试寻找一个具有最大语言自动完成功能的文本编辑器。

我听说 emacs 有最好的最大值支持,但我无法让自动完成工作。我确实找到了这个包裹:

https://github.com/auto-complete/auto-complete

现在自动完成适用于 lisp,但我想知道 maxima 语言是否有类似的东西。

maxima 的语法突出显示确实有效,只是没有自动完成:

您可以使用 M-x auto-complete-mode 打开自动完成功能。默认的 ac-sources 有 ac-source-words-in-same-mode-buffers,一旦你在 Maxima 缓冲区中有一些内容,它就会开始工作得很好。要始终启用 auto-complete-mode,只需将其添加到模式挂钩(见下文)。貌似还有其他相关模式imaxima,所以你可能需要将它添加到几个钩子中。


为了正确完成,您可以创建自己的自动完成源。简单的例子包括 auto-complete.el 中的 words-in-same-mode-buffers 和 ac-math 包。定义源后,您可以将其添加到挂钩中。

(ac-define-source maxima
  ...
  )

(defun jpk/maxima-mode-hook ()
  (add-to-list 'ac-sources 'ac-source-maxima)
  (auto-complete-mode 1))

(add-hook 'maxima-mode-hook #'jpk/maxima-mode-hook)
(add-hook 'inferior-maxima-mode-hook #'jpk/maxima-mode-hook)

如@lawlist 所述,Maxima 具有一些内置的完成功能。您可以通过重用其中的代码(例如 maxima-symbols)很容易地构建自己的交流源。