发布于 2026-01-06 5 阅读
0

键盘驱动的 VSCode 奖励

键盘驱动的 VSCode

奖金

扔掉鼠标吧,是时候设置一些键盘快捷键了。

补充说明一下,这篇文章是从我的个人博客https://waylonwalker.com/blog/keyboard-driven-vscode/转载的

这些快捷键是我从 tmux/vim 切换到 VS Code 的基础。我找到的大多数帖子都提供了替换 vim 的实用技巧,但很少有人关注 tmux 的可定制性。tmux 让我可以快速启动一个工作区,创建新窗口和分屏。然后,当我切换任务时,我可以保持该工作区打开,稍后可以立即回到之前的工作位置。这真是太棒了。这里列出的快捷键让过渡更加顺畅。我最初使用 VS Code 时遇到的最糟糕的问题是,不用鼠标就无法在终端和编辑器之间切换。这第一组快捷键解决了这个问题。

我刚开始使用 VS Code 时发现最糟糕的一点是,不用鼠标就无法在终端和编辑器之间切换。

Alt+[hjkl]

导航

⬅ 跳转到左侧分割线Alt+h

⬇从编辑器跳转到终端Alt+j

⬆从终端跳转到编辑器Alt+k

➡ 跳转到右侧分割线Alt+l

这是我个人在 VS Code 中最常用的一组快捷键,直接复制自我的 tmux 配置。它让我可以快速上下左右跳转。需要注意的是,如果你使用垂直分割模式,它的效果不如 tmux 😢。

使用键盘快捷键在 VS Code 中导航

    [
            {
                "key": "alt+j",
                "command": "workbench.action.terminal.focus",
                "when": "editorFocus"
            },

            {
                "key": "alt+k",
                "command": "workbench.action.focusFirstEditorGroup",
                "when": "terminalFocus"
            },
            {
                "key": "alt+k",
                "command": "workbench.action.focusAboveGroup",
                "when": "editorFocus"
            },
            {
                "key": "alt+l",
                "command": "-toggleFindInSelection",
                "when": "editorFocus"
            },
            {
                "key": "alt+l",
                "command": "workbench.action.focusNextGroup",
                "when": "editorFocus"
            },
            {
                "key": "alt+h",
                "command": "workbench.action.focusPreviousGroup",
                "when": "editorFocus"
            },

            {
                "key": "alt+l",
                "command": "workbench.action.terminal.focusNextPane",
                "when": "terminalFocus"
            },
            {
                "key": "alt+h",
                "command": "workbench.action.terminal.focusPreviousPane",
                "when": "terminalFocus"
            },
    ]

Enter fullscreen mode Exit fullscreen mode

Alt+b

切换膨胀

由于关闭侧边栏的功能已分配给某个控件,ctrl+b我认为用它模拟活动栏是最合理的<kbd>Alt</kbd>+<kbd>b</kbd>。很多时候,我只想尽可能地减少干扰,而这种方法确实很有帮助。

隐藏活动栏

    [
        {
            "key": "alt+b",
            "command": "workbench.action.toggleActivityBarVisibility",
            "when": "editorFocus"
        },
    ]
Enter fullscreen mode Exit fullscreen mode

Alt+[svx]

把它分成几份

🙌 水平分裂Alt+s

🍌 垂直Alt+v

💥 关闭Alt+x

这是从 tmux 复制的另一个用于快速创建水平 (s) 和垂直 (v) 分割线的函数。完成后,我可以用Alt+ 号关闭它们x

在 VS Code 中轻松创建和删除分割。

     [
        {
            "key": "alt+s",
            "command": "workbench.action.terminal.split",
            "when": "terminalFocus"
        },
        {
            "key": "alt+s",
            "command": "workbench.action.splitEditor",
            "when": "editorFocus"
        },
        {
            "key": "alt+v",
            "command": "workbench.action.splitEditorOrthogonal",
            "when": "editorFocus"
        },
        {
            "key": "alt+x",
            "command": "workbench.action.terminal.kill",
            "when": "terminalFocus"
        },
        {
            "key": "alt+x",
            "command": "workbench.action.closeActiveEditor",
            "when": "editorFocus"
        }
      ]
Enter fullscreen mode Exit fullscreen mode

Alt+[cnp]

🤲创建新工作区Alt+c

⏭ 跳转到下一个工作区Alt+n

⏮ 跳转到上一个工作区Alt+p

有时,分屏模式下终端窗口会显得有些拥挤,这时就需要使用不同的窗格。我在这里也复刻了 tmux 的 cnp 模式。我可以创建新窗格 (c),然后切换到下一个窗格 (n) 或上一个窗格 (p),而无需离开键盘。

我经常在运行像 Gatsby 这样的进程并对其进行监控时使用这个功能,我需要快速切换到一个新的窗格来运行 Git 命令,然后再切换回 Gatsby,最后跳转到我的编辑器。

终端分裂

    [
        {
            "key": "alt+c",
            "command": "workbench.action.terminal.new",
            "when": "terminalFocus"
        },
        {
            "key": "alt+n",
            "command": "workbench.action.terminal.focusNext",
            "when": "terminalFocus"
        },

        {
            "key": "alt+p",
            "command": "workbench.action.terminal.focusPrevious",
            "when": "terminalFocus"
        },
    ]
Enter fullscreen mode Exit fullscreen mode

Alt+z

🗻 放大终端Alt+z

最后一个功能虽然不如我预期那么好用,但确实能完成任务。它可以从 VS Code 的任何位置放大(按 Z 键)终端。我可以在编辑器中缩小终端窗口来腾出更多空间,也可以放大终端窗口来查看上次编辑后的效果。

全屏终端

    [
        {
            "key": "alt+z",
            "command": "workbench.action.toggleMaximizedPanel",
        },
    ]
Enter fullscreen mode Exit fullscreen mode

奖金

Alt+r

🖱右键点击放置

我最近发现了这个工具,觉得它非常实用,可以快速执行诸如还原选定范围或提取变量之类的操作,而无需离开键盘。

[
  {
    "key": "alt+r",
    "command": "editor.action.showContextMenu",
  },
]
Enter fullscreen mode Exit fullscreen mode
文章来源:https://dev.to/waylonwalker/keyboard-driven-vscode-n0a