【问题标题】:How can you create multiple cursors in Visual Studio Code如何在 Visual Studio Code 中创建多个游标
【发布时间】:2015-07-09 07:32:31
【问题描述】:

在 VS Code 中创建多个光标的键盘快捷键是什么?

【问题讨论】:

  • 只需按住Alt 按钮,然后在不同的地方开始点击。就是这样。
  • CMD+Alt+向下箭头就是你想要的。 stackoverflow.com/questions/30037808/…
  • 如果你使用的是 mac,SHIFT+CTRL+DOWN/UP 是你真正想要的 1.14.2。
  • 另外,从 1.14.2 开始,默认情况下 Cmd+Alt+Down 似乎是由 editor.action.goToDeclaration 映射的
  • 如果你在 Mint 上,你可以禁用 Alt 点击进入系统设置、窗口、行为,然后更改“移动和调整窗口大小的特殊键”。

标签: visual-studio-code


【解决方案1】:

Alt 并单击。这适用于 Windows 和 Linux*,它也应该适用于 Mac。

Visual Studio Code 0.2 现在提供更多多光标功能:

多光标改进
Ctrl+D(在 Mac 上为 Cmd+D)选择光标下的单词或当前选择的下一个匹配项
Ctrl+K Ctrl+D 将最后添加的光标移动到光标下的单词或当前选择的下一个匹配项
这些命令默认使用 matchCase。如果查找小部件已打开,则查找小部件设置 (matchCase / matchWholeWord) 将用于确定下一次出现
Ctrl+U (Cmd+U on Mac) 撤消上一次光标操作,因此如果您添加的光标过多或出错,您可以按 Ctrl+U(Mac 上为 Cmd+U)去回到之前的光标状态。 向上或向下添加光标 (Ctrl+Alt+Up / Ctrl+Alt+Down) (Cmd+Alt+Up / Cmd +Alt+Down 在 Mac 上)现在显示最后添加的光标,以便更轻松地一次在超过 1 个视口高度上使用多个光标(即选择 300 行且仅 80 行适合视口)。

这使得引入多个游标变得容易得多

* Linux 拖拽窗口冲突:

某些发行版(例如 Ubuntu)将窗口拖动分配给 Alt+LeftMouse,这将与 VSCode 冲突。

因此,最新版本的 VSCode 允许您在选择菜单下的 Alt+LeftMouseCtrl+LeftMouse 之间切换,详见another answer

或者,您可以使用gsettings 更改您的操作系统键绑定,如another answer 中所述。

【讨论】:

  • 键盘快捷键?我知道它是命令+单击。但这很恶心..不是快速的方法:(
  • F2 或 Ctrl+F2 可能会有所帮助。但是还没有找到像Ctrl+D这样的东西。
  • Alt+click 在 Linux 上似乎不起作用。对我有用的是 Ctrl+shift+left/right/up/down
  • alt + shift + 点击mac (2017)
  • 嗯,ctrl+alt+up 或 down 旋转我的屏幕(在 win10 上)而不是多个光标
【解决方案2】:

Ctrl+Alt+⬇ / ⬆ 在当前行的上方和下方添加光标。尽管如此,仍然远不如 sublime 或括号好。我在键盘快捷键文件中的 sublime 中看不到与 Ctrl+D 等效的任何内容。

【讨论】:

  • 对于 Mac,它是:Alt + Command 和向上或向下箭头。
  • 在 Ubuntu 上这是Ctrl+Shift+Up/Down
  • 在 Windows 中似乎默认为“旋转屏幕”。
  • 如果它在旋转您的屏幕,那是您的图形驱动程序,而不是 Windows。您可以从图形设置中禁用该快捷方式。
  • 为我工作! :)
【解决方案3】:

对于您想要的,没有任何约束力。

唯一接近的是 Ctrl+F2 将一次选择所有这些。

您可以将其绑定到 Ctrl+D 执行以下操作:

  • 点击File > Preferences > Keyboard Shortcuts
    您应该会看到一个包含当前绑定的窗格,右侧是自定义绑定列表
  • 在当前绑定中,搜索 Ctrl+F2 并复制整行并将其粘贴到右侧窗格中。
  • 您可能必须删除末尾的逗号,然后将 Ctrl+F2 更改为 Ctrl+D 然后保存文件。

它应该看起来像这样:

// Place your key bindings in this file to overwrite the defaults
[
{ "key": "ctrl+d",               "command": "editor.action.changeAll",
                                    "when": "editorTextFocus" }
]

【讨论】:

  • 我可以让它像多光标一样,sublime 可以.. 按下鼠标滚轮吗?
  • @Migue我还没有找到办法做到这一点
  • 当您不想搜索和替换时,如果您有数千行要同时编辑,这是最有效的方法!谢了!
【解决方案4】:

我在使用 ALT 键时遇到问题,解决方法是将 alt+click 更改为 Gnome 热键,它会破坏 VSCode 中的多光标选择,通过运行:

gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "<Super>"   

来源:http://2buntu.com/articles/1529/visual-studio-code-comes-to-linux/

【讨论】:

  • +1 这个方法有效!刚刚用 Ubuntu 14.04.05 验证了它。之前我尝试过 dconf-editorCompizConfig 来更改“移动窗口”插件配置,结果搞砸了,几乎破坏了我的 Ubuntu。
  • 这适用于 Ubuntu!
  • 对 Linux Mint (Cinnamon) 使用 gsettings set org.cinnamon.desktop.wm.preferences mouse-button-modifier "&lt;Super&gt;"
  • 如果您不想更改系统默认设置,您也可以使用“选择 > 切换到 CTRL+单击多光标”。这适用于 Linux Mint,因此它也应该适用于 Ubuntu。
  • 如果你想改变 Linux Mint Cinnamon 中的系统设置,你也可以去“系统设置 > 首选项 > Windows > 行为”并更改“移动和调整窗口大小的特殊键”。
【解决方案5】:

https://code.visualstudio.com/Updates

新版本(Visual Studio 0.3.0)支持更多多光标功能。

Multi-cursor
Here's multi-cursor improvements that we've made.

⌘D selects the word at the cursor, or the next occurrence of the current selection.
⌘K ⌘D moves the last added cursor to next occurrence of the current selection.
The two actions pick up the matchCase and matchWholeWord settings of the find widget.
⌘U undoes the last cursor action, so if you added one cursor too many or made a mistake, press ⌘U to return to the previous cursor state.
Insert cursor above (⌥⌘↑) and insert cursor below (⌥⌘↓) now reveals the last added cursor, making it easier to work with multi-cursors spanning more than one screen height (i.e., working with 300 lines while only 80 fit in the screen).

选择多光标的快捷方式变为 cmd + d(与 Sublime Text 相同。lol)

我们可以期待下一个版本支持更多关于多光标的方便功能;)

【讨论】:

    【解决方案6】:

    Alt+点击。它适用于 Windows。

    详情:Visual Studio Code Documentation

    【讨论】:

    • 谢谢,同样适用于 mac
    【解决方案7】:

    Ubuntu 上,为了启用多光标单击,您需要先重新分配 Alt+click,方法是运行以下命令。这是因为默认情况下 Ubuntu 使用快捷方式本身并具有优先权。

    > gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "<Super>"
    

    【讨论】:

      【解决方案8】:

      在 Ubuntu-MATE 上出现同样的问题,但您可以通过以下方式解决:

      gsettings set org.mate.Marco.general mouse-button-modifier "<Super>"
      

      【讨论】:

        【解决方案9】:

        在没有鼠标的 Visual Studio 中:Alt+Shift+{ Arrow }

        【讨论】:

        • Alt+Shift+{ Arrow }。将导致从 VS Code V1.18.0 开始复制当前行
        【解决方案10】:

        VS Code 中的多字(和多行)光标/选择

        多字:

        Windows / OS X:

        • Ctrl+Shift+L / ⌘+Shift+L 选择当前高亮单词的所有实例
        • Ctrl+D / ⌘+D 选择下一个实例......以及之后的一个......等等。

        多行:

        对于多行选择,Ctrl+Alt+Down / ⌘+Alt+Shift+Down 将扩展您的选择或光标位置到下一行。 Ctrl+Right / ⌘+Right 将移动到每行的末尾,无论多长时间。要退出多行选择,请按 Esc

        查看VS Code keybindings(操作系统敏感)

        【讨论】:

        • 哈哈,在我的机器上,英特尔视频驱动程序有一个热键 Ctrl-Alt-Down 可以让屏幕上下颠倒。让我措手不及:)_
        • 为什么和SSMS(大概是Visual Studio)不一样,它使用Shift-Alt-Down/Up,而不是Ctrl-Alt-Down???
        • @DaveBoltman - 我不知道!但是您可以自定义键绑定。
        • 要禁用愚蠢的英特尔热键,您只需右键单击桌面 > 图形选项 > 热键 > 禁用
        【解决方案11】:

        从 Visual Studio Code 版本 0.10.9 开始,您现在可以通过选择多行并按 Shift+Alt+I 来执行 从选定行创建多个光标

        注意:这类似于 Sublime Text 的 Ctrl+Shift+L 功能。

        来源:https://code.visualstudio.com/updates/vJanuary#_thank-you
        相关公关:https://github.com/Microsoft/vscode/pull/1479

        【讨论】:

        • Shift+Alt+&lt;arrow&gt; 为我工作。谢谢!
        • 这正是我想要的! Shift+Alt+I 就像一个魅力!
        【解决方案12】:

        尝试 Ctrl+Alt+Shift+⬇ / ⬆,不使用鼠标,或按住“alt”然后点击所有你想要的行。

        注意:在 Windows 上测试。

        【讨论】:

        • CMD+OPTION+SHIFT+⬇ / ⬆ 在 1.15.1 版本的 Mac 上为我工作。
        • 在 Windows 10 上我可以在没有 shift 的情况下做到这一点
        • 您也可以使用向上/向下翻页来加快速度!
        • 没有SHIFT 它对我不起作用,谢谢
        • 我安装了带有一些高级功能的Smart Multi-cursor 扩展,使用快捷键 Cmd + Alt + (Up / Down) 来创建多光标。
        【解决方案13】:

        在 XFCE 上,转到 Applications -&gt; Settings -&gt; Settings editor - &gt; xfwm4 -&gt; easy_click(disable value)

        现在您可以使用 Alt + 点击

        Insert Cursor

        我还在Settings -&gt; Window manager -&gt; Keyboard

        中禁用了 L/R 工作区 (ctrl + alt + L/R) 设置>

        【讨论】:

        • ??这里的 XFCE 是什么?
        • @Martian2049,它是类 Unix 操作系统(Linux、BSD 等)上的桌面环境。如果您还不知道这一点,可能我的回答对您没有用,请查看其他答案。
        • 为我禁用 easy_click 后它正在工作,谢谢你拯救了我的一天。
        • 它对我有用。我将 easy_click ALT 更改为 CTRL,因为 ALT + click 用于移动窗口。
        • 很好的回复。它对我有用@lava-lava。
        【解决方案14】:

        2017 年 5 月
        从 1.13 版开始 使用 Ctrl / Cmd + Click

        添加多个光标

        VSCode 开发人员引入了一个新设置editor.multiCursorModifier,将用于应用多个光标的修饰键更改为Cmd + Click 在 macOS 上和 Ctrl + Click 在 Windows 和 Linux 上。这让来自其他编辑器(例如 Sublime Text 或 Atom)的用户可以继续使用他们熟悉的键盘修饰符。

        设置可以设置为:

        • ctrl/Cmd - 映射到 Windows 上的 Ctrl 和 macOS 上的 Cmd
        • alt - 现有的默认 Alt

        还有一个新菜单项 Use Ctrl + Click for Multi-CursorSelection strong> 菜单可快速切换此设置。

        转到定义打开链接手势也将遵守此设置并进行调整,以免它们发生冲突。例如设置为ctrl/Cmd时,可以通过Ctrl / Cmd + Click添加多个光标,打开链接或可以使用 Alt +Click 调用进入定义。

        通过修复问题 #2106,现在还可以通过在现有选择的顶部使用相同的手势来移除光标。

        【讨论】:

        • 我对为什么 Ctrl+click 不起作用而发疯了。不知道有切换它的选项。 :-)
        • editor.multiCursorModifieralt 设置为 ctrlCmd 效果很好。现在我所要做的就是 ctrl + click 它将使用多个光标 :) Muchas gracias!
        • 我可以改成 Ctrl + 点击,它可以工作,但是去定义类或者什么东西不见了,我该如何解决?
        • 这是最有帮助的答案。在大多数编辑器中,CTRL+单击用于多选。无需修改操作系统行为即可使编辑器正常工作。此选项将多选的行为修改为最常用的模式。
        【解决方案15】:

        Alt + Command + Shift 将光标添加到您选择的下一个实例。例如。变量或函数名

        【讨论】:

          【解决方案16】:

          在我的 XFCE(4.12 版)中,它位于 Settings -&gt; Window Manager Tweaks -&gt; Accessibility

          有一个下拉字段Key used to grab and move windows:,将其设置为None

          Alt + Click 现在可以在 VS Code 中添加更多光标。

          【讨论】:

          • 对于 Linux mint 20 转到菜单->键入窗口->单击 windows->选择 behaviour 选项卡并转到 moving and resizing windowsspecial key to move and resize windows 更改为不同于 Alt
          【解决方案17】:

          Alt + Click 适用于 OSX。代码版本 1.14.2

          【讨论】:

            【解决方案18】:

            您可以根据选择菜单执行以下操作:

            按/按住Alt+Ctrl+向上箭头/Alt+Ctrl+向下箭头创建足够的光标,然后按Ctrl+D 可用于扩大选择范围。

            【讨论】:

              【解决方案19】:

              Cmd+Option+Shift⬇ / ⬆ 适用于我最新的 VSCode 1.29.1 和最新版本OSX High Sierra 10.13.6,Macbook Pro。

              这会在屏幕上向上/向下添加一条垂直线,就像在 Sublime Text 中的 Option+Click/Vertical Drag 一样。

              在文件中的任何位置添加多个光标,包括同一行上的多个光标,请执行 Cmd(或 Option)+单击所需的任意位置,如this video 所示。您也可以搜索重复多次的文本 (Cmd+F),然后按 Option+Return 在每个单词的末尾添加光标.

              【讨论】:

                【解决方案20】:

                在 Windows 上:
                CTRL+单击,如果您使用的是 vscode
                CTRL+Alt+点击如果你正在使用Visual Studio

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2018-03-05
                  • 1970-01-01
                  • 1970-01-01
                  • 2020-03-25
                  • 2018-01-08
                  • 1970-01-01
                  • 1970-01-01
                  • 2021-05-04
                  相关资源
                  最近更新 更多