【问题标题】:Emacs24 auto-complete mode does not workEmacs24 自动完成模式不起作用
【发布时间】:2023-03-19 22:35:01
【问题描述】:

我有 Emacs24,我想使用一些模式,比如自动完成。

事情是这样的,我之前安装了“linum”,它工作得很好,但其他的却没有。

我的 .emacs 文件

(add-to-list 'load-path "/root/.scripts")
(require 'linum)
(global-linum-mode 1)

(require 'package)
(add-to-list 'package-archives '("melppa" . "http://melpa.milkbox.net/packages/"))
(package-initalize)

(add-to-list 'load-path "~/.emacs.d/")

(require 'auto-complete)
(require 'auto-complete-config)
(ac-config-default)
(require 'yasnippet)

自动完成和 yasn-p 不起作用,我尝试了命令“自动完成模式”但它仍然相同。

有什么想法吗?

编辑:我从源代码而不是从 ELPA 安装它并且它工作正常。

【问题讨论】:

  • 当您打开 emacs 时是否会出现有关 init 文件的任何错误?
  • 不,没有错误。我尝试安装它 list-packages 并选择我想要的并点击安装选项卡方式但它仍然相同。
  • 1.在require 之前,您需要从 MELPA 实际 安装 包。 2. 我注意到你正在从/root 加载一些东西。一般来说,以root 用户身份运行并不是一个好主意。
  • 只有 linum 包在工作,这很有趣,其他的才在工作
  • @SashaValentine, linum 内置在 Emacs 中,因此它可能与它的工作无关。

标签: emacs


【解决方案1】:

我在升级到 Emacs 24 时遇到了类似的问题。您是否尝试过运行 M-x auto-complete?当我这样做时,我收到如下错误消息:

gv-get: (popup-cursor ac-menu) 不是有效的地点表达式

原来这是一个已经报告的错误,可以通过重新编译字节码来修复:

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

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

这个解决方案对我有用:

$ find ~/.emacs.d/elpa -name '*.elc' | xargs rm

(删除 elpa 子目录中所有已编译的 elisp)

...然后,在 elisp 交互缓冲区中,如从头评估:

(byte-recompile-directory (expand-file-name "~/.emacs.d/elpa") 0)

...然后重新启动emacs。

【讨论】:

  • 我试过了,“M-x 自动完成”。感谢您的关注,但我卸载 emacs23,现在我正在尝试重新安装 emacs24,我会再试一次,因为我几乎可以肯定这个问题是关于跨 emacs23-emacs24 的,这是我无法卸载 emacs24 因为我不能在包管理器中查看我也找不到它的文件,如 usr/bin。
猜你喜欢
  • 1970-01-01
  • 2013-10-09
  • 2012-07-10
  • 2015-12-29
  • 2012-11-02
  • 1970-01-01
相关资源
最近更新 更多