Sublime Anaconda 包滥用 auto_complete(删除特定触发器)
Sublime Anaconda package abusive auto_complete (remove specific trigger)
我正在为 Sublime Text 使用 Anaconda 包。一切都很完美,我喜欢它。事实上,它的效果有点太好了,尤其是 auto_complete.
The auto_complete being zealous
每次我在需要一个语句(def、if、for、class、...)之后写一个冒号 (:) 时,它都会向我显示一个我无法避免的自动完成列表。每一次,我都必须写一个空白并擦除它才能使用 Enter 键并转到下一行。
如果我在不需要的地方写了一个冒号,它不会打开auto_complete列表。
如果我关闭 auto_complete,它会阻止它发生,但它并不理想,因为我通常喜欢 auto_complete。
我知道如何为 auto_complete 添加触发器。有没有办法删除特定的触发器(这里是冒号 (:))?
以防其他人遇到同样的问题。
我在这里找到了答案:https://github.com/DamnWidget/anaconda/issues/891.
正如 MattDMo 所说,这是一个错误。建议的临时解决方法是来自 ZitCode 的 post(参见上面的 link 来源):
I have found a solution (it's working, but I think it's should be a
temporary solution 'cause it just disabling completion when ':' is
typed) In file listeners/completion.py (can be found by click on
'Preferences/Browse Packages' in Sublime Text, then open Anaconda
folder) add lines
if int(sublime.version()) > 4000:
if view.substr(view.sel()[0].begin() - 1) == ':':
return
under 86 line view = active_view()
in function _complete
. The file should look like this:
def _complete(self, data: Dict[str, Any]) -> None:
view = active_view()
if int(sublime.version()) > 4000:
if view.substr(view.sel()[0].begin() - 1) == ':':
return
proposals = data['completions'] if data['success'] else []
我正在为 Sublime Text 使用 Anaconda 包。一切都很完美,我喜欢它。事实上,它的效果有点太好了,尤其是 auto_complete.
The auto_complete being zealous
每次我在需要一个语句(def、if、for、class、...)之后写一个冒号 (:) 时,它都会向我显示一个我无法避免的自动完成列表。每一次,我都必须写一个空白并擦除它才能使用 Enter 键并转到下一行。
如果我在不需要的地方写了一个冒号,它不会打开auto_complete列表。 如果我关闭 auto_complete,它会阻止它发生,但它并不理想,因为我通常喜欢 auto_complete。
我知道如何为 auto_complete 添加触发器。有没有办法删除特定的触发器(这里是冒号 (:))?
以防其他人遇到同样的问题。 我在这里找到了答案:https://github.com/DamnWidget/anaconda/issues/891.
正如 MattDMo 所说,这是一个错误。建议的临时解决方法是来自 ZitCode 的 post(参见上面的 link 来源):
I have found a solution (it's working, but I think it's should be a temporary solution 'cause it just disabling completion when ':' is typed) In file listeners/completion.py (can be found by click on 'Preferences/Browse Packages' in Sublime Text, then open Anaconda folder) add lines
if int(sublime.version()) > 4000: if view.substr(view.sel()[0].begin() - 1) == ':': return
under 86 line
view = active_view()
in function_complete
. The file should look like this:def _complete(self, data: Dict[str, Any]) -> None: view = active_view() if int(sublime.version()) > 4000: if view.substr(view.sel()[0].begin() - 1) == ':': return proposals = data['completions'] if data['success'] else []