首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Emacs在python模式下禁用自动完成

Emacs在python模式下禁用自动完成
EN

Stack Overflow用户
提问于 2014-07-18 07:11:18
回答 2查看 3.8K关注 0票数 8

我使用的是Emacs 24,我想在python模式下禁用自动完成模式,这样它就不会与绝地发生冲突。我该怎么做呢(遗憾的是,我不知道Emacs Lisp)。以下是我在init.el中关于自动完成的当前设置:

代码语言:javascript
复制
;; auto-complete settings
(require 'auto-complete)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
; Start auto-completion after 2 characters of a word
(setq ac-auto-start 2)
; case sensitivity is important when finding matches
(setq ac-ignore-case nil)

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-07-18 08:00:22

(ac-config-default)开启了global-auto-complete-mode,为了阻止(auto-complete-mode)在python模式下被调用,你可以为它写一个建议。

代码语言:javascript
复制
(defadvice auto-complete-mode (around disable-auto-complete-for-python)
  (unless (eq major-mode 'python-mode) ad-do-it))

(ad-activate 'auto-complete-mode)

我也不确定这是不是你想要的,因为绝地使用的是自动完成模式,正如德米特里在评论中指出的那样,应该不会有冲突。

票数 6
EN

Stack Overflow用户

发布于 2018-10-02 00:26:03

我想我也遇到了类似的问题:我的带有Python特有内容的黄色绝地弹出窗口被一个更通用的自动补全功能的灰色弹出窗口所取代。因此,我可以选择与Python无关的选项,但不能选择特定于Python的选项。

对我有帮助的是确保在Python模式下禁用自动完成模式:

代码语言:javascript
复制
(add-hook 'python-mode-hook (lambda () (auto-complete-mode -1)))
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24814988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档