使用光标键进行 IntelliJ 的列选择

152

有没有办法在IntelliJ IDEA中设置光标键类似于Notepad++,Visual Studio或FlashDevelop中的列选择。

例如,当我输入代码时,我几乎总是只使用键盘进行导航。在上述IDE中,我可以通过按住Shift+Alt并轻击来快速选择代码块。然后我可以按住Shift+Alt+Ctrl并轻击来快速跳转单词并选择想要的文本块。

在IntelliJ IDEA中,我必须不断地使用Shift+Alt+Insert启用和禁用列选择模式,但即使如此,它也不像其他IDE或文本编辑器那样完全正常工作。

有什么想法吗?


1
这篇博客文章应该会有所帮助。 - Anton Dozortsev
10个回答

214
你可以使用“编辑 | 列选择模式”进行列编辑。
打开/关闭它的快捷键是“Alt”+“Shift”+“Insert”。你可以使用“Shift”+箭头键来导航并选择文本块。

4
我知道这个模式,但它并没有完全提供我想要的功能,看起来如果不自己编写插件,我将无法获得所需的行为。 - jshbrntt
43
在Mac上,这个快捷键是Cmd+shift+*。 - 8bitme
7
由于某些原因,我在我的 Mac 上使用 Cmd+Shift+8 快捷键时无法生效,我也不知道为什么。我将其重新映射为 Control+Option+Command+8,然后它就可以正常使用了。除了可能被系统覆盖的系统映射之外,我也找不到任何阻止旧键盘映射工作的东西。 - AlexC
这是最简单的。不需要尝试奇怪的按键组合。 - Karthik
8
就好像你根本没有读懂问题一样。@JoshuaBarnett提供的回答是你所需要的。 - jv110
2
支持jv110并反对JoshuaBarnett的回答。发帖者显然已经知道了JoshuaBarnett提到的键盘快捷方式,并正在寻找更轻便的进入列编辑模式的方法,这正是@Gibolt的回答所提供的。 - Daniel Cotter

93

多行光标(无需鼠标)

Windows/Linux: CTRL + CTRL(按住) + ↑ / ↓

Mac: + (按住) + ↑ / ↓

ESC 将结束多行模式。

更改多行光标热键

要添加自定义键映射,在编辑器中按下 CTRL+SHIFT+A,输入 keymap 并点击带有 Settings 子文本的选项。搜索 Clone Caret AboveClone Caret Below

我将它们映射到 ALT+SHIFT+↑ / ↓

额外奖励

尝试按住组合键 CTRLSHIFT 和箭头键以提高选择能力。


8
我相信这应该是正确的答案。目前接受的答案只是重申了问题的一些内容,但是这个答案提供了真正的矩形选择,而不使用鼠标,就像Notepad++一样。 - Corwin Newall
15
在我的 Mac 上,默认情况下映射的是 ALT 键而不是 键。因此操作方式是:按住 ALT 键,再同时按 键。 - gfullam
你不能仅提到Windows和macOS而忽略Linux! - jv110
@jv110 确实。可以只写“macOS”,但不能在“nix”前面加上“doze”。 - WestCoastProjects

67

同时,也可以通过按住 鼠标中键 来进行选择。


太棒了,太酷了 :-) - undefined

20

最方便的方法是:

  • MAC:按住Option+Shift并用鼠标单击。
  • Windows:按住Alt并用鼠标单击。

如此提到(https://dev59.com/TF8d5IYBdhLWcg3w1VE1#57262978),对我来说⇧⌘8很有效。 - Bala
1
请注意,对于Mac系统,您只需要始终按住Option键。 - Konstantin Grigorov

19

前往 设置 | 快捷键,为 复制光标上方复制光标下方 设置快捷键。


1
你知道是否可以将它的功能设置为类似于Notepad++等文本编辑器,只能向一个方向扩展,而该方向的相反方向则会缩小它吗? - jshbrntt
我不认为这是可能的。我甚至都没有看到过相关功能请求。 - Meo
按下 Ctrl 键,然后保持按住 Ctrl 键,就像你描述的一样。 - jv110
那是唯一对我有效的解决方案。感谢分享。 - devmarkpro

17

在Mac上,切换块选择开/关:

shift command 8

8


1
肌肉记忆:转到功能 - WestCoastProjects

14

对于我在 Mac 上:

按一次“Option”键,释放它,然后再次按住它。 现在使用光标导航以选择所需的代码。 按下“Esc”键退出列模式! :)


11

我认为@Meo的答案是最正确的,但如果你的手刚好在鼠标上,你也可以使用Ctrl+Alt+Shift+左键单击来完成此操作。或者在键位设置中查找添加矩形选择模式的鼠标拖动选项。


或按Ctrl键然后保持按住Ctrl键。 - jv110

11

在Windows或Linux中,我按两次Ctrl


2
点击 Ctrl 键,然后快速按下并保持按住第二次 Ctrl 键。在按住 Ctrl 键的同时使用箭头键来添加插入符号/选择文本。 - olejorgenb

1

对于Mac用户,cmd+shift+*不能正常工作。我改变了按键映射,现在它可以完美地工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接