IntelliJ-Spaltenauswahl mit Cursortasten

106

Ist es möglich, IntelliJ IDEA so einzurichten, dass ich mit den Cursortasten eine Spaltenauswahl treffen kann, ähnlich wie in Notepad ++, Visual Studio oder FlashDevelop.

Wenn ich zum Beispiel Code eingebe, navigiere ich fast immer ausschließlich über die Tastatur. In den zuvor erwähnten IDEs kann ich schnell Codeblöcke auswählen, indem ich Shift+ Altgedrückt halte und dann tippe , um den Cursor über die obigen Zeilen zu bewegen. Ich kann dann Shift+ Alt+ Ctrlgedrückt halten und tippen oder, um schnell über Wörter zu springen und den gewünschten Textblock auszuwählen.

In IntelliJ IDEA muss ich den Spaltenauswahlmodus mit dem Shift+ Alt+ ständig aktivieren und deaktivieren, Insertund selbst dann funktioniert er nicht ganz so wie in den anderen IDEs oder Texteditoren.

Irgendwelche Ideen?

Joshua Barnett
quelle
1
Dieser Blog-Beitrag sollte hilfreich sein.
Anton Dozortsev

Antworten:

158

Sie können die Spaltenbearbeitung mit dem ausführen Edit | Column Selection Mode.

Die Abkürzung zum Drehen on/offist Alt+ Shift+ Insert. Sie navigieren mit den Pfeiltasten, um Textblöcke auszuwählen.

Duffymo
quelle
2
Ich war mir dieses Modus bewusst, aber er lieferte nicht ganz das, was ich wollte, aber es sieht so aus, als würde ich nicht das gewünschte Verhalten erzielen, ohne selbst ein Plugin zu schreiben.
Joshua Barnett
30
Auf dem Mac ist die Verknüpfung Cmd + Shift + *
8bitme
5
Aus irgendeinem Grund funktionierte Cmd + Shift + 8 auf meinem Mac nicht und ich konnte nicht herausfinden, warum. Ich habe das Control + Option + Command + 8 neu zugeordnet und es hat gut funktioniert. Ich konnte auch nichts finden, was verhindern würde, dass diese alte Keymap funktioniert, außer möglicherweise einer Systemzuordnung, die sie überschrieb.
AlexC
7
Es ist, als hättest du die Frage nicht einmal gelesen. @ JoshuaBarnett Gibolts Antwort ist, was Sie wollen.
jv110
2
Seconding jv110 und sein Einwand gegen JoshuaBarnetts Antwort. Das Poster ist sich der Tastenkombination, die JoshuaBarnett erwähnt, bereits bewusst und sucht nach einer leichteren Möglichkeit, in den Spaltenbearbeitungsmodus zu wechseln. Dies ist die Antwort von @ Gibolt.
Daniel Cotter
59

Multiline Caret (ohne Maus)

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

Mac: + (Halten) +↑ / ↓

ESC beendet den mehrzeiligen Modus.

Ändern Sie den Multi-Caret-Hotkey

So fügen Sie eine benutzerdefinierte Keymap, CTRL+ SHIFT+ A, Typ keymapund klicken Sie auf den mit Settingsals Subtext. Suche nach Clone Caret Aboveund Clone Caret Below.

Ich habe meine auf ALT+ SHIFT+ abgebildet ↑ / ↓.

Bonus

Versuchen Sie halten Kombinationen CTRL, SHIFTund Pfeile für eine verbesserte Auswahl Kraft.

Gibolt
quelle
5
Ich glaube, das sollte die richtige Antwort sein. Die akzeptierte Antwort gibt derzeit nur einen Teil des Inhalts der Frage wieder. Diese Antwort bietet jedoch eine echte rechteckige Auswahl, ohne die Maus zu verwenden, a la Notepad ++.
Corwin Newall
8
Auf meinem Mac wurde der ALTSchlüssel standardmäßig anstelle von zugeordnet . So war es: ALT+ ALT(Halten) + /
Gfullam
Sie können nicht einfach Windows und MacOS angeben und Linux ignorieren!
jv110
@ jv110 wahr. Es ist in Ordnung, nur zu macOSsagen, aber ich kann 'doze' nicht vor 'nix
javadba
48

Es ist auch möglich, das Halten auszuwählen middle mouse key.

kyb
quelle
18

Gehen Sie zu Settings | Keymapund legen Sie eine Verknüpfung für Clone Caret Aboveund für festClone Caret Below

Meo
quelle
Wissen Sie, ob es möglich ist, dass es ähnlich wie Texteditoren wie Notepad ++ funktioniert, bei denen Sie nur in eine Richtung verlängern können und das Gegenteil dieser Richtung es verkleinert?
Joshua Barnett
Ich denke nicht, dass es möglich ist. Ich habe noch nicht einmal eine Feature-Anfrage dafür gesehen.
Meo
Drücken Sie Strg und halten Sie dann Strg gedrückt. Es ist genau so, wie Sie es beschrieben haben.
jv110
Das war die einzige Lösung, die für mich funktioniert. danke für das Teilen.
MARK
11

Ich denke, die Antwort von @ Meo ist die richtigste, aber wenn Ihre Hand zufällig auf der Maus liegt, können Sie dies auch mit Ctrl+ Alt+ Shift+ erreichen Left Mouse Button Click. Oder suchen Sie Add Rectangular Selection on Mouse Dragin den Keymap-Einstellungen nach.

Wesley Musgrove
quelle
Oder drücken Sie Strg und halten Sie dann Strg gedrückt.
jv110
10

Unter Windows oder Linux drücke ich zweimal Ctrl

Carlos Verdes
quelle
1
Klicken Sie Ctrlund halten Sie dann schnell Ctrlein zweites Mal gedrückt . Verwenden Sie die Pfeiltasten, während CtrlSie gedrückt halten , um Carets hinzuzufügen / auszuwählen
olejorgenb
7

Für mich auf dem Mac:

Drücken Sie einmal die Optionstaste, lassen Sie sie los und halten Sie sie erneut gedrückt. Navigieren Sie nun mit dem Cursor, um den gewünschten Code auszuwählen. Drücken Sie 'Esc', um den Spaltenmodus zu verlassen! :) :)

LeXav
quelle
6

Auf einem Mac (mit Standardtastaturzuordnungen):

8

Böhmisch
quelle
1
Muskelgedächtnis: Gehe zu Feature
Javadba
6

Der bequemste Weg ist:

  • MAC: Halten Sie Option + Umschalt gedrückt und klicken Sie mit der Maus.
  • Windows: Halten Sie die Alt- Taste gedrückt und klicken Sie mit der Maus.
lukyer
quelle
1

Für Mac cmd+ shift+ *nicht für mich arbeiten. Ich habe die Keymap in etwas anderes geändert und jetzt funktioniert es nahtlos.

sia
quelle