我一直在使用VSCode在Golang和有时GoLand试用版中进行编程。我想坚持使用VSCode,但我在VSCode中找不到下面提到的功能。有谁能告诉我这是否可能
GoLand拥有所有这些,这就是它令人惊叹的地方。除此之外,大多数事情都是相似的。
qyzbxkaa1#
实际上,这三件事在VS Code中也可以做到。
1.所有函数、结构、接口列表-代码大纲
有一个很棒的扩展Code Outline,它可以很好地处理Go代码。我成功地使用它,没有任何问题。
2.有没有一种方法可以点击一个接口,看看谁都实现了它?
根据VS Code文档,可以使用Ctrl+F12快捷键进行定义。在这一点上,它似乎对Go源代码工作得很好。
3.有没有办法点击一个结构体,看看它实现了哪些接口?
与上面的答案类似,根据文档,Ctrl+F12快捷键似乎在这种情况下工作得很好。对于一个接口,它显示了该接口的所有实现,对于抽象方法,它显示了该方法的所有具体实现。
ao218c7q2#
右键点击接口/结构定义,选择【转到实现】,弹出上下文窗口。在内部,它依赖于guru,而guru已经被golang团队弃用。Guru也不支持模块。较新的插件gopls依赖于“Language Server Protocol(LSP)”,这是由golang团队积极开发的,但我不确定它是否具有与“Go to implementations”相同的功能。
guru
gopls
Language Server Protocol(LSP)
2条答案
按热度按时间qyzbxkaa1#
实际上,这三件事在VS Code中也可以做到。
1.所有函数、结构、接口列表-代码大纲
有一个很棒的扩展Code Outline,它可以很好地处理Go代码。我成功地使用它,没有任何问题。
2.有没有一种方法可以点击一个接口,看看谁都实现了它?
根据VS Code文档,可以使用Ctrl+F12快捷键进行定义。在这一点上,它似乎对Go源代码工作得很好。
3.有没有办法点击一个结构体,看看它实现了哪些接口?
与上面的答案类似,根据文档,Ctrl+F12快捷键似乎在这种情况下工作得很好。
对于一个接口,它显示了该接口的所有实现,对于抽象方法,它显示了该方法的所有具体实现。
ao218c7q2#
右键点击接口/结构定义,选择【转到实现】,弹出上下文窗口。
在内部,它依赖于
guru
,而guru
已经被golang团队弃用。Guru也不支持模块。较新的插件
gopls
依赖于“Language Server Protocol(LSP)
”,这是由golang团队积极开发的,但我不确定它是否具有与“Go to implementations”相同的功能。