Emacs中的Python代码补全
我尝试像这篇文章中所说的那样,用emacs来制作一个Python开发环境,文章链接在这里:http://www.enigmacurry.com/2009/01/21/autocompleteel-python-code-completion-in-emacs/。但是emacs告诉我“自动补全模式没有启用”。请问用emacs写Python代码可以吗?
1 个回答
5
你想在出现这个提示的情况下开启自动补全功能,可以选择以下两种方式:
每次打开 Python 文件时,都可以在你的
.emacs
文件中添加以下内容:(add-hook 'python-mode-hook (lambda () (auto-complete-mode 1)))
或者在打开 任何 文件时,都可以在你的
.emacs
文件中添加以下内容:(global-auto-complete-mode t)
你提到的问题链接中建议了一种更全面的方法(也就是包含了我建议的第一种添加方式):
(add-hook 'python-mode-hook
(lambda ()
(auto-complete-mode 1)
(set (make-local-variable 'ac-sources)
(append ac-sources '(ac-source-rope) '(ac-source-yasnippet)))
(set (make-local-variable 'ac-find-function) 'ac-python-find)
(set (make-local-variable 'ac-candidate-function) 'ac-python-candidate)
(set (make-local-variable 'ac-auto-start) nil)))
这些添加内容是为了在使用代码片段和 Rope 时实现完整的补全功能。