我意识到微软有某种原因在 VSC 的文件夹 EXPLORER 部分添加新的“查找”工具..但是...我是一个习惯的生物。当我单击文件然后按 Ctrl+F 时,我立即开始输入我要查找的值。结果在文件编辑器窗格中看起来像这样...
但是在我的上次更新中,当我单击资源管理器中的文件并按 Ctrl+F 时,我现在在资源管理器窗格中获得了这个新的小工具,并且光标移至那里。我不停地打字,文件编辑器中没有任何反应,直到我咒骂了几个近乎咒骂的单词,并且必须在文件编辑器中单击,然后再次按 Ctrl+F 并重新开始输入搜索字符串。这让我很烦恼,因为这是老习惯。
我怎样才能回到原来的工作方式?是否有一个简单的配置埋在我可以更改的地方?
谢谢。
我并不是说在资源管理器中看到将旧的过滤搜索方法设置为默认值的设置。您可以禁用
list.find
命令,资源管理器中的新查找小部件依赖于您的 keybindings.json
,它具有您想要的效果:
{
"key": "ctrl+f",
"command": "-list.find",
// "when": "listFocus && listSupportsFind"
}
现在 Ctrl+F 将焦点放在资源管理器中,将打开编辑器并焦点查找小组件。
但是您将无法使用 Ctrl+F 过滤其他列表,例如 TreeView(例如,请参阅 https://stackoverflow.com/a/73039598/836330)。
更好的解决方案,IMO,是设置一个宏,当您有
explorerFocus
并使用 Ctrl+F 键绑定时可以使用该宏。
在您的 keybindings.json
: 中使用此键绑定
{
"key": "ctrl+f",
"command": "runCommands",
"args": {
"commands": [
"workbench.action.focusActiveEditorGroup",
"actions.find",
],
"when": "explorerFocus"
},
}
这会将焦点切换到当前编辑器,然后打开其中的“查找小部件”。
三个简单步骤即可实现此目的,无需编辑
keybindings.json
第 1 步:打开键盘快捷键 (
ctrl + k
ctrl + s
)list.find
。f3
和ctrl+f
,remove
ctrl+f键绑定。
您还可以通过以下方式打开键盘快捷键: 打开调色板
ctrl + shift + p
,输入打开键盘快捷键。
当我单击文件然后按 Ctrl+F 时,我立即开始输入我要查找的值。
你可以从两个角度来看这个问题。
有些人认为在资源管理器中单击文件应该将焦点移至编辑器区域。为此,请参阅在 VS Code Explorer 视图中单击文件后如何聚焦编辑器?。
除此之外,对于资源管理器中的ctrl+f问题,微软已将其识别为常见的剪纸,并在版本1.89中进行了更改,将
list.find
命令的按键绑定更改为在 Windows 和 Linux 上为 ctrl+alt+f,在 macOS 上为 cmd+opt+f。相关源代码在这里。请求请求是 #210634。