gpt4 book ai didi

emacs - ac-auto-start(自动完成模式)无论如何都不会被设置

转载 作者:行者123 更新时间:2023-12-01 06:32:39 24 4
gpt4 key购买 nike

我正面临一种非常奇怪的行为。不管我怎么设置ac-auto-start ,通过定制,通过评估 (setq ac-auto-start 2) , (setq-default ac-auto-start 2)(setq-local ac-auto-start 2)在我这样做之后,变量立即设置为 nil .

我已经查看了 auto-complete 的来源模式和 ac-slime就我而言,但这些都对这个变量没有任何作用。我不知道如何处理这个问题。

此故障的有效后果是完成组合框不会单独出现,除非我通过执行 M-x 自动完成来强制它。此行为在所有模式中都是一致的,其中 auto-complete次要模式已启用。

编辑

这似乎是最新 Emacs 的问题。现在它无法修改变量值,无论它是什么变量。所以,比如说,在用 -Q 运行它之后我现在发现我无法评估使用 (setq ...) 的代码形式,因为它没有效果。 :/所以,请稍等,我会尝试调查这个......

这是由于打字错误造成的,但原来的问题仍然存在。

Emacs 版本是大约一周前从主干中提取的 24.3.50.1。
auto-complete是从 MELPA 安装的 1.4 版。

我通过将点移动到 REPL 缓冲区来设置变量,然后是 M-:。我以同样的方式检查它的值。

编辑2

OK,终于找到原因了:我有enzyme已安装软件包,并且它具有早期版本的 auto-complete在它里面,出于某种原因,auto-complete 的一部分代码是从那里加载的,其他部分是从 MELPA 安装的。禁用后 enzyme现在一切正常。

编辑3

我运行后仍然发生这种情况(auto-complete-mode 1)在 REPL 缓冲区中。变量将无法设置。我已经搜索了各种可能正在设置某些内容的自动完成计时器,但到目前为止还没有运气。

最佳答案

auto-complete-mode的设置确实有些奇怪。 .

(我在 GNU Emacs 24.3.1 中使用 ELPA 版本)

这是由 customize-group RET auto-complete 设置的:

 '(ac-auto-show-menu t)
'(ac-auto-start t)

此时如果您 M-x auto-complete-mode你会得到一个 [no match]就在迷你缓冲区中。只有在您尝试后 M-x auto-complete , 大喊 "auto-complete-mode is not enabled"奇怪的错误,你能不能 M-x auto-complete-mode (但没有命令完成......嗯)然后进入模式。

如果你把它放在你的 init 文件 (.emacs) 中
(require 'auto-complete)
(auto-complete-mode t)

只有在启动后重新评估它才会有效(?!?)。

与类似的东西相同
(if (auto-complete)
(auto-complete-mode t))

我找到的唯一方法 获取 auto-complete-mode在启动时加载 是:
(eval-and-compile
(require 'auto-complete nil 'noerror))

(以上 customize选项现已生效)

关于emacs - ac-auto-start(自动完成模式)无论如何都不会被设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18467785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com