vscode:符号搜索,但仅限于我的代码
来源:stackoverflow
时间:2024-04-27 19:42:44 275浏览 收藏
在Golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《vscode:符号搜索,但仅限于我的代码》,聊聊,希望可以帮助到正在努力赚钱的你。
如果我使用 ctrl-t (符号搜索),我会得到所有符号。这意味着我的符号和我使用的库的符号。
有没有办法将符号搜索限制为仅在我的代码中的符号(不包括库中的符号)。
我使用 vscode for Go。
在上面的屏幕截图中,我突出显示了来自我的代码的单行。
如果“仅我的代码”的过滤器不可能,那么如果我的代码能够被 vscode 突出显示,那就太好了。
相关问题:https://github.com/golang/go/issues/37236
正确答案
相关问题:https://github.com/golang/go/issues/37236
该问题刚刚通过 cl 490935 解决并提交golang/tools
提交 8e9b185:
gopls/internal/lsp/source:添加“symbolscope”选项
添加一个新的“symbolscope
”选项,用于控制匹配是否仅限于工作区包。这是新的默认行为,尽管可以通过设置 "symbolscope": "all"
来启用旧行为。
实际上,cl 494217 保留了此默认值
设置为“all
”,并征求我们用户的默认反馈
更喜欢。
您现在拥有:
symbolscope
枚举
symbolscope
控制在哪些包中搜索工作区/符号
请求。
默认值“workspace
”仅搜索工作空间
包。
遗留行为“all
”会导致所有加载的包
搜索,包括依赖项;这个比较贵,而且可能
返回不需要的结果。
必须是以下之一:
"all"
匹配任何加载的包中的符号,包括依赖项。"workspace"
仅匹配工作空间包中的符号。
这仍然可能包括供应,这可能是一个问题。
注意:这不包括 #37237 ("x/tools/gopls
: 支持symbol的高级查询语法"):
直到 vs code 允许控制工作区符号结果对话框为止。
就像现在一样,任何类型的高级查询语法都会导致 vs code 过滤掉所有结果,因为它在我们返回结果后会进行自己的一轮排序和过滤。
您现在可以通过构建 gopls@master 来测试这一点:
例如:
git clone https://go.googlesource.com/tools cd tools/gopls && go install
thomas güttler,op,确认:
ctrl+t 现在仅显示我的代码:
存在回归(#60027:workspacesymbol
以奇怪的顺序返回奇怪的结果),这将通过 gopls/v0.12.0 修复,感谢 findleyr。
还有paul jolly 添加:
此问题与工作区之外的符号有关。此更改对您有帮助吗?
不是真的。因为我要搜索符号的范围发生了变化。
- 有时我想搜索相当于所有包空间的内容,
- 有时只是在工作区,
- 有时只是在当前文件所属模块的范围内,
- 有时是当前文件所属包的范围,
- 有时仅在当前文件的范围内。
因此,只有一个静态配置选项并没有多大帮助。
并不是说这对其他人没有帮助,我只是将其与之前讨论过的问题联系起来。
终于介绍完啦!小伙伴们,这篇关于《vscode:符号搜索,但仅限于我的代码》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!
-
502 收藏
-
502 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
139 收藏
-
204 收藏
-
325 收藏
-
477 收藏
-
486 收藏
-
439 收藏
-
357 收藏
-
352 收藏
-
101 收藏
-
440 收藏
-
212 收藏
-
143 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习