我正在使用SublimeText3。
当我在array
PHP
中工作时,按Tab
提出的自动完成功能完全让我烦恼。
我只是想添加一些表格,但每次按Tab
时,sublimetext都会建议我:
array(<list>)
Create a PHP Array.
如果只是再次按Tab
,他会对该提议有效并写入文件<list>
。
我已经安装了这个插件:
{
"installed_packages":
[
"Alignment",
"ApacheConf.tmLanguage",
"BracketHighlighter",
"Comment-Snippets",
"Comments Aware Enter",
"eZ Publish Syntax",
"HTML5",
"jQuery",
"LESS",
"SublimeCodeIntel",
"sublimelint",
"Symfony2 Snippets",
"Theme - Soda",
"Twig"
]
}
如果有人知道如何禁用这个不好的主张或纠正它?
感谢。
答案 0 :(得分:29)
更新01-29-14
在Github上,有人找到了比我之前发布的解决方案更好的解决方案。 New Solution
打开your_packages_folder / SublimeCodeIntel / codeintel2 / tree_php.py并将数组添加到第140行附近的工具提示忽略数组。
php_ignored_calltip_expressions = ("if", "elseif",
"for", "foreach",
"while",
"switch",
"array"
)
旧解决方案
我找到了temporary solution on github。
注释或删除第100行&amp; SublimeCodeIntel / codeintel2 / tree_php.py
中的101"array": "array(<list>)\n"
"Create a PHP array.",
然后删除OS X上用户目录中的〜/ .codeintel文件夹,不知道此缓存在Windows上的位置。
答案 1 :(得分:1)
刚开始使用Sublime Text 3,这个问题一直困扰着我几个星期。即使使用“auto_complete_commit_on_tab”:false和“tab_completion”:false,它仍然存在。我最终查看了Sublime论坛并找到this thread,这表示您将此代码添加到您的Key Bindings中:
{ "keys": ["tab"], "command": "insert", "args": {"characters": "\t"}, "context":
[
{ "key": "auto_complete_visible" },
{ "key": "setting.tab_completion", "operator": "equal", "operand": false }
]
}
它实质上会重新映射您的Tab键以强制使用标签,而不是让代码段自动完成功能正常工作。