Golang文档与代码自动补全功能详解

Golang文档与代码自动补全功能详解 你好…

我刚刚全新安装了 Go、VSCode 以及 VSCode 的 Go 插件。所有功能都正常,但在代码补全时,我看不到任何函数的文档。只有当我把鼠标指针悬停在代码中的函数上时才能看到文档,也就是说,在代码补全过程中看不到。我该如何让它正常工作,或者应该使用哪个快捷键组合才能在代码补全时打开文档?

附注:作为对比,在 GoLand 和 JetBrains 的所有其他 IDE 中,我都可以按 Ctrl+Q 在代码补全期间或任何其他操作期间查看文档。

6 回复

在 VS Code 插件市场中安装 godoc 插件,或者使用 GoLand 会更方便。

我在 VS Code 内部的扩展市场搜索结果中看不到这个插件。

更多关于Golang文档与代码自动补全功能详解的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


在 VSCode 插件市场中安装 godoc 插件,或者使用 GoLand 会更方便。

Go Doc - Visual Studio Marketplace

Visual Studio Code 扩展 - 显示 Go 符号和包的文档

我不知道您问题的答案,但让我给您另一个建议。如果您编写一个结构体并想填充变量名称,请按:Ctrl + .(点),然后选择填充选项。

image

image

我不知道你问题的答案。

实际上,你已经非常接近答案了。

按下:Ctrl + . (点)

在函数调用代码补全中按两次 Ctrl + / 解决了我的问题。

初始状态

第一次 Ctrl + /

第二次 Ctrl + /

之后,代码补全将始终附带文档一起打开,直到我点击右上角的 X 将其关闭。

有趣的是,这是在代码补全期间阅读文档的正确方式吗?它需要网络连接还是也可以离线工作?为什么它被设计成需要按两次而不是一次?第一次按键后显示的信息似乎仅对调试此功能有用,而对任何常规使用都没有帮助。

附言:这个论坛对新用户有一个奇怪且愚蠢的限制,不允许嵌入图片/截图,也不允许放置超过两个链接。这就是为什么我只提供了链接,并且“破坏”了其中一个链接。

在 VSCode 中,你可以通过以下方式在代码补全时查看文档:

  1. 安装 Go 扩展:确保已安装最新版本的 Go 扩展(如 golang.go)。

  2. 启用建议文档:在 VSCode 设置中,启用 editor.suggest.showDocumentation 选项。这会在代码补全建议旁显示文档。

  3. 使用快捷键:在代码补全建议列表弹出时,按 Ctrl+Space(Windows/Linux)或 Cmd+Space(macOS)可以触发补全并显示文档。如果补全列表已显示,按 Ctrl+Shift+Space 可以切换文档的显示/隐藏。

  4. 配置 Go 扩展:确保 Go 扩展的 gopls 设置正确。在 settings.json 中添加以下配置以优化文档显示:

    {
      "go.useLanguageServer": true,
      "gopls": {
        "ui.symbolMatcher": "fuzzy",
        "ui.completion.usePlaceholders": true
      },
      "editor.quickSuggestions": {
        "other": true,
        "comments": false,
        "strings": false
      }
    }
    
  5. 示例代码:以下是一个简单的 Go 代码示例,演示代码补全时文档的显示:

    package main
    
    import "fmt"
    
    func main() {
        // 输入 "fmt.P" 并触发补全,将看到 Println 的文档
        fmt.Println("Hello, World!")
    }
    

如果问题仍然存在,尝试重启 VSCode 或重新加载窗口(按 Ctrl+Shift+P 并运行 Developer: Reload Window)。

回到顶部