【问题标题】:VSCode: Open file from file explorer with Enter key on Mac OSXVSCode:在 Mac OSX 上使用 Enter 键从文件资源管理器打开文件
【发布时间】:2016-05-11 12:18:36
【问题描述】:

在 Windows 上使用 VSCode 时,我可以导航文件资源管理器并在焦点文件上按 Enter,文件将在编辑器中打开。然而,在我的 Mac 上,当我这样做时,VSCode 将打开重命名输入,如下所示:

我不确定它为什么会这样。即使在其他文本编辑器(例如 Atom)中,默认行为也是在 Enter 上打开文件。有什么方法可以改变这种行为,以便文件在 Enter 上打开?到目前为止,我发现的唯一解决方法是 CTRL+Enter,它在新窗格中打开文件,但在 VSCode 中有 3 个窗格的限制,这是非常有限的.

【问题讨论】:

  • 根据他们的文档,我认为唯一的方法是右键单击并选择在 Finder 中显示(您也可以通过右键单击来导航到本机资源管理器中的文件或文件夹的位置文件或文件夹,然后选择在资源管理器中显示(或在 Mac 上的 Finder 中显示)。)The BasicsKey Bindings
  • @rmjoia 对不起,我不清楚。我不想在 Explorer 或 Finder 中显示文件。我只想打开文件。当我单击 Enter 时,VSCode 要我在 Mac 上重命名文件。我不想重命名文件,我只想打开它。它在 Windows 但不是 Mac 中按预期工作。
  • 用 vs 代码打开?喜欢编辑?怎么打开?
  • 是的,我只想在 VSCode 中打开文件进行编辑,而无需将手指从键盘上移开。我一直在 Atom、Visual Studio 甚至 VSCode for Windows 中执行此操作,但我似乎无法在 VSCode for Mac 中执行此操作。当我按 Enter 键时,它一直在尝试重命名文件(根据我上面的屏幕截图)。
  • 好的,我将删除我的答案,因为它不会为问题添加任何内容。我建议使用 VSCode 论坛作为功能请求或从社区获得提示。

标签: visual-studio-code


【解决方案1】:

如果其他人遇到这个问题,在 Mac 上的 VSCode 中从文件资源管理器打开文件的键盘快捷键是:

CMD+向下

这也适用于 Finder。

【讨论】:

  • +1 但这会替换现有打开的文件选项卡。知道如何在新标签中打开,但在同一个面板中?
  • @johnny-oshika 您可以通过添加"workbench.editor.enablePreview": false"workbench.editor.enablePreviewFromQuickOpen": false 在设置中禁用预览行为
  • @DimaKuzmich 效果很好!仅设置第一个 "workbench.editor.enablePreview": false 就足以让它在自己的选项卡中打开每个文件
  • 谢谢,我想知道他们为什么这么难弄明白。我什至在命令列表中找不到 Cmd + Down 的命令。
  • 他们 appear to be working on a fix 应该会在下一个内部人员发布时发布。
【解决方案2】:

我最终在这里编译了一些解决方案以获得以下keybinding.json 版本(通过Code > Preferences > Keyboard Shortcuts > keybindings.json 打开):

  {
    "key": "cmd+enter",
    "command": "renameFile",
    "when": "explorerViewletVisible && filesExplorerFocus"
  },
  {
    "key": "enter",
    "command": "-renameFile",
    "when": "explorerViewletVisible && filesExplorerFocus"
  },
  {
    "key": "enter",
    "command": "list.select",
    "when": "listFocus && !inputFocus"
  }

【讨论】:

  • 这使得资源管理器窗口完全可以导航。现在我不必单击来导航文件树。我只是从编辑器 CMD-SHIFT-E 将焦点转移到文件资源管理器,箭头键转移到另一个文件,然后按 Enter 打开文件并将焦点移回编辑器。非常直观。谢谢。
  • 如果你和我一样,你只想把它放在一个 JSON 文件中...... command + shift + p 打开命令面板并搜索“首选项:打开键盘快捷键(JSON)”和导致这个文件
【解决方案3】:

在 1.19.2 版中,在 Mac 上,我能够转到键盘快捷键(菜单栏 > 代码 > 首选项 > 键盘快捷键),搜索“rename”并编辑“renameFile”(“When”值为“ explorerViewletVisible && filesExplorerFocus && !inputFocus") 将快捷方式更改为“cmd+enter”。

您还可以在 keybindings.json 中添加以下内容(键盘快捷键页面上有指向它的链接):

{
  "key": "cmd+enter",
  "command": "renameFile",
  "when": "explorerViewletVisible && filesExplorerFocus && !inputFocus"
}

Enter 现在在资源管理器中打开突出显示的文件,并且 ctrl+enter 将其置于重命名/编辑模式。


--编辑--

在我升级到 1.21.0 后,回车键再次开始充当 renameFile。 cmd+enter 仍然起到 renameFile 的作用。要解决此问题,请转到菜单栏 > 代码 > 首选项 > 键盘快捷键,然后右键单击有问题的条目并将其删除,或者在 keybindings.json 中的命令开头添加连字符/减号:

{
  "key": "enter",
  "command": "-renameFile",
  "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus"
}

【讨论】:

    【解决方案4】:

    在我的 Mac 上,只需按空格键即可为我打开文件。

    【讨论】:

    • 空格键打开文件,但将焦点放在资源管理器上。这对于打开几个不同的文件而不必来回切换很有用,但它与打开文件并专注于编辑器的命令不同。
    • 打开文件后,如果您想编辑文件,按 CMD+Shift+E 会将焦点切换到您的文件
    【解决方案5】:

    所以我也遇到了这个问题,但我最终使用的键盘快捷键是将cmd+enter 映射到重命名并从enter 中删除renameFile。

    {
      "key": "cmd+enter",
      "command": "renameFile",
      "when": "explorerViewletVisible && filesExplorerFocus"
    },
    {
      "key": "enter",
      "command": "-renameFile",
      "when": "explorerViewletVisible && filesExplorerFocus"
    }
    

    【讨论】:

    • 这对我不起作用。来自bkidd's answer 的稍长的否定绑定是在使用 GUI 编辑器选择“删除”后在 keybindings.json 中生成的。这在 VSCode 1.24.1 中对我有用。
    【解决方案6】:

    cmd+down 不适用于我在 Mac 10.10.5 上使用 VSCode 1.10.2。

    但是,cmd+enter 确实对我有用。

    或者,如果您想设置自己的键绑定以从文件资源管理器打开文件,请将这些行添加到您的 keybindings.json

    // open file from File Explorer
    { "key": "enter", "command": "list.select",
                         "when": "explorerViewletVisible && filesExplorerFocus" },
    

    (当然,您可以将enter 更改为您想要的任何组合键)。

    【讨论】:

      【解决方案7】:

      我试图删除具有“Enter”键绑定的“重命名”快捷方式。然后当我按“Enter”时它会正确打开文件。

      【讨论】:

        【解决方案8】:
        • SPACE:打开但专注于资源管理器 (filesExplorer.openFilePreserveFocus 命令)
        • CMD+Down: 打开并 聚焦打开的文件(explorer.openAndPassFocus 命令)

        您可以在“代码 - 首选项 - 键盘快捷键”中更改它们:

        【讨论】:

          【解决方案9】:

          对我来说,我必须先做 command 0 然后再做 command down 这将我带到资源管理器,然后打开我选择的文件。 在 Atom 中,我只需点击 enter 即可打开文件,我发现这是一种奇怪的行为。 vscode v 1.21.1 on OSX

          【讨论】:

            【解决方案10】:

            在偏好中:

            代码 -> 首选项 -> 键盘快捷键

            将此添加到您的 keybindings.json

            {
            
                "key": "ctrl+n",
                "command": "workbench.action.files.newFile"
            }
            

            在可能包含也可能不包含您设置的其他键绑定的数组中。 保存 keybindings.json

            然后当你在文件资源管理器中导航到一个目录时,你可以使用 ctrl+n 创建一个新文件

            【讨论】:

            • hmmm,你可能是在回答不同的问题吗?这个问题是关于打开现有文件的。
            【解决方案11】:

            不知道为什么“输入”行为不同,我不确定“输入”是在您系统的键绑定中单独设置还是默认为基于操作系统标准的不同行为...

            好消息是,您正在寻找的是 CTRL+P 或 CTRL+O

            CTRL+P 让你找到一个文件,CTRL+O 应该打开它(你想要的确切行为)

            您也可以添加“Enter”作为“workbench.action.files.openFile”命令的可能性,但不确定这样做是否会破坏任何内容。 试试看,或者习惯在两个平台上使用 CTRL+O!

            更多信息:

            https://code.visualstudio.com/Docs/customization/keybindings

            【讨论】:

            • 我非常广泛地使用 CTRL+P,但有时我想导航文件资源管理器(CMD+0 或 CMD+SHIFT+E)然后打开一个文件,全部使用键盘。奇怪的是,这在 Mac 上似乎是不可能的。
            • 我也是@JohnnyOshika,我是VIM 用户,我习惯于有一个书呆子评论者,它显示一个带有sublimeAtom 等文件结构的侧边栏。我想我必须习惯使用vscode
            • 我和@JohnnyOshika 在同一条船上 - 我通常使用 CTRL+P,但有时想使用资源管理器视图导航然后打开文件
            猜你喜欢
            • 1970-01-01
            • 2021-06-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-26
            相关资源
            最近更新 更多