在 Visual Studio Code 中选择列

Chi*_*ago 346 visual-studio-code

Visual Studio Code 是否支持选择文本列?

我还没有发现这个功能,所以我想知道它是否隐藏在某个地方。我熟悉Alt在选择文本时按住不放,但 Visual Studio Code 不会以这种方式运行。

小智 450

在 Visual Studio Code 1.0 版中,您现在可以通过按住Shift+来选择列Alt,然后用鼠标单击并拖动。这也可以通过按住Ctrl+ Shift+Alt然后使用箭头键仅使用键盘来完成。

在最新版本的 vscode - 1.45.1 上,您可以通过Shift+Alt本身实现相同的效果(2020 年 5 月验证)

  • 这真的是“点击,shift+alt+drag”。远不如VS经典的“alt+drag”方便。有没有办法让 VS Code 像 VS 一样工作? (52认同)
  • 每次我需要这样做时,我都必须使用谷歌搜索它并来到这里,这意味着这个快捷方式还不够好.. (27认同)
  • 这不是任何曾经进行过列选择的编辑器定义的列选择。VSCode 不会通过虚拟空间放置列,因为它实际上不是列,因此它毫无用处。比较 [实际列选择](https://user-images.githubusercontent.com/234804/28726659-0ada6b14-73fd-11e7-88e9-5ed239e56dcd.gif) 和 [VSCode 奇怪的非真正列选择](https://user -images.githubusercontent.com/234804/28726699-38e15a22-73fd-11e7-8caf-2bd7973f0d04.gif) (14认同)
  • @Steve `文件> 首选项> 键盘快捷键`。然后搜索`cursorColumnSelect`,然后就可以修改键盘快捷键了。这是在 VS Code 1.22 版上完成的。值得注意的是,`columnSelect` 是你需要为 `Shift` + `Alt` + Drag 更改的内容,但是现在,没有办法在 Electron 中注册鼠标按下事件。 (13认同)
  • @FranklinYu, [visual studio (not vscode)](https://i.imgur.com/KM49Xt6.gif), [emacs](https://i.imgur.com/ppgQNrZ.gif), [intelli-j ](https://i.imgur.com/GbiPhEh.gif)、[notepad++](https://i.imgur.com/O4lNgf7.gif)、[slickedit](https://user-images.githubusercontent. com/234804/28726659-0ada6b14-73fd-11e7-88e9-5ed239e56dcd.gif),还有更多……至少从[80年代末的简要](https://en.wikipedia.org)开始就一直在使用真正的列编辑/wiki/Brief_(text_editor))。并不是说这是第一个,只是那是我开始使用并需要该功能并发现缺少它的编辑器阻碍我的时候。 (4认同)

DrS*_*ork 116

在 macOS 上: Shift+Option和鼠标,或 Shift+ Option+Cmd和箭头键

  • 它没有改变。你的是 Shift+Cmd,因为你选择了“选择 > 切换到 Cmd+单击多光标” (3认同)
  • @Eric 我基本上有默认值,没有选择那个选项,在 mac 10.14 上的 vscode insiders 1.31 中对我来说是 Shift+Cmd (2认同)
  • 默认值为 [Shift+Option](https://code.visualstudio.com/docs/getstarted/tips-and-tricks#_column-box-selection)。如果您选择“选择 > 切换到 Cmd+单击多光标”,那么它将更改为 Shift+Cmd。如果您随后选择“选择 > 切换到 Alt+单击以获取多光标”,则它会变回来。 (2认同)

小智 11

对于那些尝试使用 Alt 键 + 鼠标选择但失败的人。尝试单击菜单选择如下:

菜单栏 > 选择 > {点击} 切换到 Ctrl+点击多光标。这将使用 Ctrl 键和鼠标更改多选,并使用 Alt 键 + 鼠标选择启用选择列选择。

https://i.stack.imgur.com/x8tJN.png

  • 我发现这个答案是最好的,应该是公认的答案。我不知道为什么其他人会得到似乎被大多数观众接受的冗长且不恰当的答案。 (8认同)
  • 对于浏览这些答案的任何人来说:这就是有效的答案! (2认同)

小智 11

由于现有的答案都没有提到这一点:

实现所需结果(截至 2018 年 4 月版本 1.23)的最简单方法是单击鼠标中键并拖动

  • 对我有用,在 Mac 和 Windows 上都经过测试。 (2认同)

小智 10

我刚刚发布了一个 Visual Studio Code 扩展,它将多行选择转换为列选择。它模仿TextMate 的 Toggle Column Selection命令,并作为 Visual Studio Code 的commandoptionshift+ 箭头键的替代方法,我发现使用它更自然。


Ste*_*eve 8

从 Visual Studio Code 1.2 开始,它们具有完整的列选择。见列(框)选择


小智 8

对于所有视觉学习者来说,(至少从版本 1.55 开始)可以通过图形菜单方式打开它,也可以通过更快的方式关闭它。转至Selection\Column Selection Mode可打开或关闭此功能。如果 Column Selection Mode启用,底部 VSCode 状态栏中会有一个通知(在我的插图中用红色圈出)。快速单击此通知将其关闭。

在此输入图像描述