Ame*_*ina 5 emacs autocomplete
我在Linux auto-complete中elpa使用新的稳定版Emacs(24.3)运行最新版本的in .我在Emacs init文件上进行了以下设置.
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
(require 'auto-complete-config)
(setq-default ac-sources
'(
ac-source-filename
ac-source-abbrev
ac-source-dictionary
ac-source-words-in-same-mode-buffers))
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)
如果我开始输入:/home/james/.em 在缓冲区(例如Python缓冲区)中,我希望自动完成建议:
.emacs
.emacs.d
Run Code Online (Sandbox Code Playgroud)
但它没有显示任何东西.其他文件也会发生同样的事情.
有时我会看到建议和/或弹出菜单显示,但有时则不会.
有什么想法?
ac-config-default设置不包含 ac-source-filename 的源列表。通过在setq-default ac-sources将它们重置回默认值后调用此函数。自动完成手册建议设置模式挂钩来设置特定模式所需的源。手册中的示例是
(defun my-ac-emacs-lisp-mode ()
(setq ac-sources '(ac-source-symbols ac-source-words-in-same-mode-buffers)))
(add-hook 'emacs-lisp-mode-hook 'my-ac-emacs-lisp-mode)
Run Code Online (Sandbox Code Playgroud)
将其适应 python 模式应该很容易。或者,您可以通过首先调用它来全局覆盖设置ac-config-default,即
(require 'auto-complete-config)
(ac-config-default)
(setq-default ac-sources
'(
ac-source-filename
ac-source-abbrev
ac-source-dictionary
ac-source-words-in-same-mode-buffers))
Run Code Online (Sandbox Code Playgroud)
这种方式setq-default ac-sources将覆盖设置的源,ac-config-default而不是相反。