IntelliJ Column Selection using Cursor Keys
Asked Answered
I

10

154

Is it possible to some how setup IntelliJ IDEA so that I can column select with the cursor keys similarly to how I might in Notepad++, Visual Studio, or FlashDevelop.

For instance when I'm typing code I almost always do my navigation solely through use of the keyboard. In the IDEs mentioned previously I can quickly select blocks of code by holding Shift + Alt then tapping to extend my cursor across the lines above. I can then hold Shift + Alt + Ctrl and tap or to quickly jump across words and select the chunk of text I want.

In IntelliJ IDEA I have to constantly enable and disable Column Selection Mode using the Shift + Alt + Insert and even then it doesn't quite function as it does in the other IDEs or Text Editors.

Any ideas?

Iceboat answered 15/10, 2014 at 15:15 Comment(1)
This blog post should be helpful.Orms
S
217

You can do column editing using the Edit | Column Selection Mode.

The shortcut to turn it on/off is Alt+Shift+Insert. You navigate with Shift + arrow keys to select blocks of text.

Shutt answered 15/10, 2014 at 15:19 Comment(6)
I was aware of this mode but it didn't quite provide what I wanted, but it looks like I won't get the desired behavior without writing a plugin myself.Iceboat
On Mac the shortcut is Cmd+shift+*Tobin
For some reason on my Mac, Cmd+Shift+8 did not work and I could not figure out why, I remapped that to Control+Option+Command+8 and it worked fine. I also could not find anything that would prevent that old keymap from working other than possibly a system mapping which overrode it.Scag
This is the easiest. No need to try out weird combinations of keysMafalda
It's like you didn't even read the question. @JoshuaBarnett Gibolt's answer is what you want.Rye
Seconding jv110 and his objection to JoshuaBarnett's answer. The poster is clearly aware already of the keyboard shortcut JoshuaBarnett mentions and is looking for a more lightweight way of entering column-editing mode, which is what @Gibolt's answer provides.Emphasis
E
93

Multiline Caret (without mouse)

Windows/Linux: CTRL + CTRL(Hold) + ↑ / ↓

Mac: + (Hold) + ↑ / ↓

ESC will end multiline mode.

Change Multi-caret Hotkey

To add a custom Keymap, CTRL+SHIFT+A, type keymap and click on the one with Settings as subtext. Search for Clone Caret Above and Clone Caret Below.

I mapped mine to ALT+SHIFT+↑ / ↓.

Bonus

Try holding combinations of CTRL, SHIFT, and arrows for improved selection power.

Enmesh answered 17/9, 2017 at 17:30 Comment(4)
I believe this should be the correct answer. The accepted answer currently just restates some of the content of the question—but this answer provides true rectangular selection without using the mouse, a la Notepad++.Dinadinah
On my Mac, the ALT key was mapped by default instead of . So it was: ALT + ALT (Hold) + / Midtown
You can't just state Windows and macOS and ignore Linux!Rye
@Rye true. It's ok to state just macOS but can't put 'doze in front of 'nixAnaphase
F
68

It is also possible to select holding middle mouse key.

Farewell answered 16/9, 2016 at 13:25 Comment(1)
Brilliant. That s cool :-)Sphalerite
P
21

Most convenient way is to:

  • MAC: Hold Option+Shift and click with mouse.
  • Windows: Hold Alt and click with mouse.
Pony answered 28/5, 2019 at 14:36 Comment(2)
As mentioned here(https://mcmap.net/q/156131/-intellij-column-selection-using-cursor-keys), ⇧⌘8 works for meDeplore
Keep in mind, for Mac you only need to hold the Option key all the timeReannareap
C
19

Go to the Settings | Keymap and set a shortcut for Clone Caret Above and for Clone Caret Below

Clare answered 15/10, 2014 at 16:4 Comment(4)
Do you know if it's possible to have it function similar to that of text editors such as Notepad++ where you can only extend in one direction and the opposite of that direction shrinks it?Iceboat
I do not think it is possible. I have not even seen a feature request for that.Clare
Press Ctrl, then hold Ctrl, it's exactly like you described.Rye
that was the only solution that works for me. thanks for sharing.Sobriety
D
17

On a mac, to toggle block select on/off:

shift command 8

8

Danialdaniala answered 30/7, 2019 at 0:54 Comment(1)
muscle memory: go to featureAnaphase
T
14

For me on Mac:

Press once 'option' key, release it, and press and hold it again. Now navigate with cursor to select desired code. Press 'Esc' to exit column mode! :)

Tellurian answered 21/2, 2019 at 11:28 Comment(0)
L
11

I think @Meo's answer is the most correct, but if your hand happens to be on the mouse, you can also accomplish this with Ctrl+Alt+Shift+Left Mouse Button Click. Or look for the Add Rectangular Selection on Mouse Drag in the keymap settings.

Lixiviate answered 26/8, 2016 at 20:31 Comment(1)
Or press Ctrl then hold Ctrl.Rye
Q
11

In Windows or Linux I press two times Ctrl

Quassia answered 28/4, 2017 at 2:59 Comment(1)
Click Ctrl then quickly press and hold Ctrl a second time. Use arrow keys while holding Ctrl to add carets/selectStandifer
L
1

For Mac cmd+shift+* didn't work for me. I changed the keymap to something else and now it works seamlessly.

Lacedaemonian answered 18/10, 2017 at 18:19 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.