按下选项卡后,如何获取Visual Studio Code智能感知以完成方法并在()内设置光标

时间:2018-10-16 01:08:13

标签: go visual-studio-code intellisense

Visual Studio Code中的包和方法在点击Tab(Golang)后都自动完成,这很好,但是我希望它完成方法,然后将光标放在()内。我在另一台机器上使它像这样工作,但似乎找不到能做到这一点的设置/扩展。

示例:

//,然后点击标签

fmt.Pri

//按下标签后

fmt.Println

//在点击制表符(光标放在括号内)后会想要这样

fmt.Println()

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

我终于找到了。在settings.json内部,您需要以下行。

{
        "go.useCodeSnippetsOnFunctionSuggest": true, 
}

我启用了Go ms-vscode.go扩展名,不确定是否相关,但以防万一。

答案 1 :(得分:1)

Github上存在一些与此有关的问题。似乎他们不想将其作为标准实现,因为当您要键入函数引用而不是函数调用时,这样做会产生干扰。

VSCode扩展可以提供“片段”,该片段基于前缀插入代码,并包含tab stops的概念。这并不是您真正要的东西,但是无论如何我都会引起您的注意。

您可以使用language server实施更高级的功能,该功能可以监听文档中的事件。如果您想自己编写它,我想您需要创建一个语言服务器扩展。