vscode 在使用“查找所有引用”时展开所有位置

nvbavucw  于 5个月前  发布在  Vscode
关注(0)|答案(7)|浏览(53)

你好,
在References视图中没有设置alwaysExpand的选项。要实现这个目标,需要做以下操作:

  • 在./extensions/references-view中添加新设置
  • 用设置中的值替换硬编码的vscode.TreeItemCollapsibleState.Collapsed

编辑

我已经在本地测试了这些更改,并创建了PR。关于实现方面,我将alwaysCollapse设置为默认值,以保持与当前行为的一致性。此外,值得一提的是,这个或非常类似的功能已经很长时间以来被多个人员请求;
例如,microsoft/vscode-cpptools#4333 , #104548

h4cxqtbf

h4cxqtbf1#

是的,这是因为我们需要加载/打开每个文件才能展开它(我们显示一个真实的文本预览),这可能会相当昂贵。

frebpwbc

frebpwbc2#

有什么具体的建议可以解决这个问题吗?
我的建议是像搜索视图一样处理它。
我的意思是创建一个名为“auto”的额外选项,用于展开结果少于10个的文件。
所以结果将有三个选项:auto、alwaysCollapse、alwaysExpand。
在过去的两天里,我一直在使用自定义构建的References视图,其中默认启用了alwaysExpand选项,我没有发现任何性能问题。我不是说这不是一个问题,只是想强调这个选项是有用的,用户至少应该有决定的权利。

nfg76nw0

nfg76nw03#

@Hau-Hau,请问您能告诉我如何查看您的PR吗?我有兴趣尝试在本地应用您的更改。谢谢!

6gpjuf90

6gpjuf904#

你好,@ds614。你可以在这个链接下找到PR:#197594。如果你想在不重新构建vscode和所有相关问题的情况下硬编码“expanded”状态,你可以直接覆盖extension.js。对于Windows,我正在使用这个命令:

(Get-Content "C:\Users\$($env:UserName)\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\references-view\dist\extension.js") -replace '.Collapsed', '.Expanded' | Set-Content "C:\Users\$($env:UserName)\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\references-view\dist\extension.js"

。然而,这种方法有点烦人,因为每次vscode更新后,这个文件都会被重新生成到原始形式。

mkh04yzy

mkh04yzy5#

这非常有帮助,非常感谢!

6mzjoqzu

6mzjoqzu6#

顺便说一下,我同意你的观点,我认为将这个设置为默认的“折叠”行为没有什么坏处。🤷‍♂️

hgtggwj0

hgtggwj07#

+1. 设置可以是可配置的限制。例如,选项可以称为referencesExpandResultsFileLimit,默认为1,但如果你能接受性能折衷的话,它可以设置为10

相关问题