我正在使用Visual Studio Code,主要是使用PHP。每次我点击。,IntelliSense都会启动并提供PHP全局和函数,从$_COOKIE
开始。我通常知道我想要的全局或功能,所以它有点烦人。当我在评论栏(/* ... */
或// ...
)内时,甚至会发生这种情况,这更令人讨厌。我的大部分时间用于返回并删除$_COOKIE
。
我已尝试停用它as suggested in the docs:
// Controls if quick suggestions should show up while typing
"editor.quickSuggestions": false,
// Controls if suggestions should be accepted with "Enter" - in addition to "Tab". Helps to avoid ambiguity between inserting new lines and accepting suggestions.
"editor.acceptSuggestionOnEnter": true,
// Controls the delay in ms after which quick suggestions will show up.
"editor.quickSuggestionsDelay": 10000,
// Enable word based suggestions
"editor.wordBasedSuggestions": true
......但这绝对没有任何影响。当我点到点时我仍然得到列表。从100
到1000
的延迟增加也没有效果。
更新:如上所述here,通过以下方式禁用对触发器字符的快速建议:
// Controls if suggestions should automatically show up when typing trigger characters
"editor.suggestOnTriggerCharacters": false
但是,上面提到的其他选项仍然没有做任何事情。
更新2:将keybindings.json
文件添加到possible to mess with the . binding是{{3}}:
{
"key": ".",
"command": "x",
}
但是,这会在屏幕顶部显示一条警告消息,指出“未找到命令'x'”。如果将其保留为空或尝试将null传递给command
,它仍然不起作用,因为它不会覆盖默认键绑定。根据文档,可以通过在-
前添加前缀来禁用某个操作,但这对我不起作用:
"command": "-^acceptSelectedSuggestion"
或
"command": "-acceptSelectedSuggestion"
在任何一种情况下,acceptSelectedSuggesdtion
实际上并不是我点击时执行的命令。,它可能更像是:
"command": "-editor.action.triggerSuggest"
但这也不起作用。
答案 0 :(得分:3)
自2017年3月或4月以来,这已经修复,并且默认情况已更改为在评论中不自动完成。默认值为:
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": false
},
我在我的设置中没有明确说明,只是使用新的PHP文件进行了测试,我可以输入global.
然后输入空格,并且不会自动完成任何操作。 (我尝试了主要代码和评论。)我确实看到$COOKIE
弹出作为第一个建议,但我需要使用向上/向下箭头然后输入以将其带入。
啊哈,global.
然后ENTER确实给了我global.$COOKIE
(即使在评论中,这有点奇怪)。我可以用以下方法解决这个问题:
"editor.acceptSuggestionOnEnter": "off",
要查看您可能想要触摸的其他设置,请转到设置页面并输入"建议"在搜索框中。每个都评论。例如。 "editor.suggestOnTriggerCharacters": false,
完全摆脱了自动建议。
您还可以指定一种语言的设置,例如
"[php]": {
"editor.suggestOnTriggerCharacters": false,
},
答案 1 :(得分:1)
尽管Darren Cook's answer和文档,但editor.quickSuggestions
设置对于因触发字符而弹出的建议不执行任何操作(请参阅this issue on GitHub)。这些似乎受制于他们自己的规则。也就是说,在字符串中键入触发器字符时,无论您在editor.quickSuggestions
中说了什么,永远不会获取建议。当在评论或“其他”中键入触发器字符时,无论您在editor.quickSuggestions
中说了什么,始终都会获得建议。
因此,摆脱我称之为“触发器 - 角色建议”(这是迄今为止最令人烦恼的那种!)的唯一可靠方法是使用专门用于它的设置:
"editor.suggestOnTriggerCharacters": false
如果有人可以发表关于如何发现触发器字符 的评论,或者更好,如何指定它们,我会非常乐意编辑我的答案以考虑到这一点
请注意,由于您键入的字符与已知模块,变量,函数等实际匹配而弹出的建议仍然由editor.quickSuggestions
和控制 editor.suggestOnTriggerCharacters
。