登录
首页 >  Golang >  Go问答

替换项目中所有变量的gopls

来源:stackoverflow

时间:2024-03-03 12:27:24 448浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是Golang学习者,那么本文《替换项目中所有变量的gopls》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

由于 gorename 不支持模块而产生的问题。有一个名为 gopls 的替换工具,但示例并不详尽,所以我想知道是否有方法重命名整个项目中的变量(否则我无法理解重命名部分的用处)

gopls 重命名 --help 说: 用法:重命名[标志] 例子: gopls 重命名 helper/helper.go:8:6 gopls 重命名 helper/helper.go:#53

有没有办法像 gorename 那样重命名整个项目中的变量?


解决方案


我建议您使用 gopls 作为 lsp 服务器来与您的编辑器集成。您的编辑器应该提供 lsp-rename 命令以方便地调用重命名功能。

至于在命令行上使用 gopls rename,如果你有这个模块:

--- go.mod ---
module foo

--- foo.go ---
package foo
var foo = 123

在模块目录中,运行 gopls rename -d foo.go:3:5 hello 来预览差异(“3:5”表示第 3 行第 5 列):

% gopls rename -d foo.go:3:5 Hello
--- /Users/muir/scratch/foo/foo.go.orig
 /Users/muir/scratch/foo/foo.go
@@ -1,3 +1,3 @@
 package foo

-var Foo = 123
+var Hello = 123

然后运行 ​​gopls rename -w foo.go:3:5 hello 写出更改。假设您使用的是最新版本的 gopls,这将在整个模块内重命名。

理论要掌握,实操不能落!以上关于《替换项目中所有变量的gopls》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>