x/tools/gopls: "提取方法"会留下注解

jogvjijk  于 5个月前  发布在  Go
关注(0)|答案(4)|浏览(45)

你正在使用的Go版本是1.17,VS Code的Go扩展也是基于这个版本构建的。因此,VS Code和Go扩展的版本信息应该与你的Go版本一致。

如果你想查看VS Code或Go扩展的其他版本信息,可以按照以下步骤操作:

  1. 打开VS Code。
  2. 点击左侧边栏中的扩展图标(一个方形的图标)。
  3. 在搜索框中输入你感兴趣的扩展名称(例如"go"),然后按回车键进行搜索。
  4. 在搜索结果中找到你感兴趣的扩展,点击它旁边的三个点图标,然后选择"关于"选项。这将显示该扩展的详细信息,包括其支持的Go语言版本。

另外,你还可以通过在终端中运行以下命令来查看已安装的Go扩展的版本信息:


xm1n0x  # 或者 xm1n1x 或 xm1n2x,取决于你的VS Code版本
list-extensions --show-versions

这将列出所有已安装的扩展及其对应的版本号。
It seems that the current behavior of go-code-doc is not to extract the entire block of code including its comments. This is because the tool is designed to extract methods from a larger piece of code, and it assumes that the comments are related to the method being extracted.
To work around this issue, you can try using a different tool that supports extracting blocks of code with comments, such as goimports or gofmt. These tools will automatically format your code according to the Go style guide, but they will also preserve the comments in their original location.

b91juud3

b91juud31#

感谢@rothskeller提供的带有简单复现案例的报告。
这是一个gopls中的bug,所以我将这个问题转移到gopls的问题追踪器上。

o8x7eapl

o8x7eapl2#

我认为这不是一个bug,而是Extract function/method代码操作当前实现的限制。其他限制在这里描述 - #37170(评论)。还请参阅此CL - https://golang.org/cl/313211(internal/lsp: print comments that would be lost during extract func)

mwngjboj

mwngjboj3#

感谢@ShoshinNikita提供的参考,建议我们已经知道这个问题。然而,bug和限制之间的区别是没有意义的:无论如何,都是代码没有按照用户合理的期望去执行。至少值得将这个问题打开,跟踪问题直到可以纠正为止。

luaexgnf

luaexgnf4#

我刚偶然发现了这个。我同意从用户的Angular 来看,这是令人惊讶的行为。我切换回手动提取函数/方法,否则我必须仔细检查并将每个注解拉过来。

相关问题