VSCode:如何在不使用鼠标的情况下在“在文件中查找”中执行“清除搜索结果”?

时间:2017-09-18 20:14:36

标签: visual-studio-code

使用Command-Shift-f搜索项目目录中的文件后,打开的文件会突出显示搜索字符串。取消它们的唯一方法似乎是清除搜索结果。但输入“Esc”不会那样做。我必须单击右上角的“清除搜索结果”按钮。是否有键盘快捷键?

5 个答案:

答案 0 :(得分:3)

更新

现在您可以为这些命令添加键绑定。例如:

{
    "key": "cmd+escape",
    "command": "search.action.clearSearchResults",
    "when": "editorTextFocus"
}

查找这些命令的最佳方法是在Keybindings编辑器中搜索。其他人是search.action.refreshSearchResultssearch.action.collapseSearchResults

原始答案:

还没有,但有一个允许它的开放功能请求:https://github.com/Microsoft/vscode/issues/23558

答案 1 :(得分:1)

否,“清除搜索结果”没有默认的键盘快捷键。

E (以及其他)在编辑器中取消突出显示搜索匹配项,但不会清除搜索结果。

要使 Esc 清除搜索结果,请在键盘快捷方式文件中添加以下按键绑定规则。

{
    "key": "escape",
    "command": "search.action.clearSearchResults",
    "when": "hasSearchResult"
}

说明:Key Bindings for Visual Studio Code: Advanced Customization

副作用:由于此规则与closeFindWidget Esc 冲突,因此必须使用 Esc 关闭查找小部件当您还有搜索结果时。 (可能还有其他冲突。我不知道。)

注意:该命令在编辑器具有焦点时起作用,但是清除搜索结果(使用鼠标或键盘)会将焦点移至搜索输入框。您可以使用 1 将焦点移回编辑器。

答案 2 :(得分:0)

一个很长的捷径:-)是:

选择文件查找字符串:⇧⌘F

清除字符串:

清除结果:

关闭面板:⌘J

(Mac →Windows Ctrl )。

答案 3 :(得分:0)

这并不是 OP 所要求的,但它是密切相关的。这个想法是完全撤消按下“搜索:在文件中查找”的快捷方式的效果,这意味着激活资源管理器并聚焦文本编辑器。

{
    "key": "shift+escape",
    "command": "extension.multiCommand.execute",
    "args": {
        "sequence": [
            "workbench.view.explorer",
            "workbench.action.focusActiveEditorGroup"
        ]
    },
    "when": "searchViewletVisible"
}

这需要多命令扩展。

答案 4 :(得分:-1)

似乎他们添加了Search: Clear命令(您需要设置自己的快捷方式),但它只清除侧面板中的条目,并且只有在您实际运行搜索时才会这样。

我对此进行简单搜索的解决方法是 Ctrl + F Backspace Esc 。也就是说,按热键进行新搜索,自动突出显示旧值,然后删除该搜索并转义。