Visual Studio Code中的包和方法在点击Tab(Golang)后都自动完成,这很好,但是我希望它完成方法,然后将光标放在()内。我在另一台机器上使它像这样工作,但似乎找不到能做到这一点的设置/扩展。
示例:
//,然后点击标签
fmt.Pri
//按下标签后
fmt.Println
//在点击制表符(光标放在括号内)后会想要这样
fmt.Println()
感谢您的帮助。
答案 0 :(得分:2)
我终于找到了。在settings.json内部,您需要以下行。
{
"go.useCodeSnippetsOnFunctionSuggest": true,
}
我启用了Go ms-vscode.go扩展名,不确定是否相关,但以防万一。
答案 1 :(得分:1)
Github上存在一些与此有关的问题。似乎他们不想将其作为标准实现,因为当您要键入函数引用而不是函数调用时,这样做会产生干扰。
VSCode扩展可以提供“片段”,该片段基于前缀插入代码,并包含tab stops的概念。这并不是您真正要的东西,但是无论如何我都会引起您的注意。
您可以使用language server实施更高级的功能,该功能可以监听文档中的事件。如果您想自己编写它,我想您需要创建一个语言服务器扩展。