Wie bekomme ich einen Cursor auf jede Zeile in vscode?


101

Ich versuche, die Multi-Cursor-Funktionalität von vscode für eine große (ish) Datei zu verwenden. Die Datei ist zu groß, um jede Zeile einzeln mit Strg-Alt-Auf oder Ab auszuwählen. Im erhabenen Text würde ich alles auswählen und Strg-Umschalt-L drücken. Gibt es eine ähnliche Sache in vscode. Ich habe versucht, eine Regex-Suche nach ^ zu verwenden, aber das gibt mir einen Fehler mit der Angabe "Ausdruck passt zu allem".

Antworten:


188

Der Befehl Auswahl / altshiftiCursor zu Zeilenenden hinzufügen setzt einen Cursor auf jede Zeile in der aktuellen Auswahl. (Für Mac optshifti)

Tipp: Sie ziehen können Sie die Tastenkombination Referenzblatt mit ctrlk, ctrls(wie in diesen beiden Tastaturkombinationen in Sequenz). (Für Mac verwenden cmdk, cmds)


2
Als ich es versuchte, ging der Cursor zum Ende jeder Zeile. Ich suchte nach dem Anfang jeder Zeile. Ich habe eine Erweiterung gesehen, die eine Tastenkombination für "Cursor am Zeilenanfang" ermöglicht, aber ich habe mich gefragt, ob dies in Vanilla VS Code möglich ist.
Tiffany

17
@ Tiffany drückte die homeTaste nach.
ZachB

3
Das hätte für mich offensichtlich sein müssen. Aber trotzdem danke!
Tiffany

Nur als Referenz, um Ihre Cursor zu zeichnen, ohne vorher eine Auswahl zu treffen, verwenden Sie Alt + Umschalt + Ziehen Auswahl. Diejenigen, die mit Sublime Text vertraut sind, wissen dies, indem sie Alt + Drag-Auswahl verwenden.
Palmi

homefür Mac ist fn+left
eibersji

21

Halten Sie Alt+ gedrückt Shiftund wählen Sie den Block aus. Drücken Sie dann Endoder die RightTaste. Sie erhalten ausgewählte Einzelzeilen.

Ich verwende die Version VSCode 1.5.3 unter Windows.


4
Dies ist eine schöne Abhilfe, aber eines der wenigen Dinge, die ich im erhabenen Text vermisse, das alte ctrl + shift + L, um allen ausgewählten Zeilen Cursor hinzuzufügen
Des Horsley

10
@ DesHorsley Ich denke, Sie suchen alt+shift+I.
ZachB

3
@ZachB du Legende. Vielen Dank!
Des Horsley

@ ZachB. Bitte geben Sie dann eine Antwort, damit ich sie akzeptieren kann.
Feihtthief

Wenn Sie Ihre Multi-Cursortaste auf ctrlcmdanstatt geändert haben, altlautet die Verknüpfung hierfür ctrl + shift + dragoder cmd + shift + drag.
Hosen

6
  • Halten Sie Alt+ Shift+ gedrückti

  • Halten Sie Home( fn+ ->Mac) ganz rechts oder ganz Endlinks ( fn+ <-Mac) gedrückt.

Geben Sie hier die Bildbeschreibung ein


Diese Antwort spart mir viel Zeit. Übrigens, wie nimmst du dieses GIF auf?
Li Jinyao

Auf dem Mac habe ich gifoxsolche Gifs verwendet.
Snr

5

Diese Funktion wird split selection into linesin vielen Editoren tatsächlich aufgerufen .

  • Sublime Text verwendet die Standard-Tastenkombination. CTRLSHIFT L
  • VSCode verwendet ALTSHIFTI
  • Für Atom müssen Sie Ihre Keymap tatsächlich so bearbeiten
'.platform-win32 .editor, .platform-linux .editor':
  'Strg-Umschalt-L': 'Editor: Auswahl in Zeilen aufteilen' 

1

Installieren Sie die Erweiterung Sublime Commands .

[Erhabene Befehle] Fügt VS-Code Befehle aus erhabenem Text hinzu: Transponieren, Auswahl auf Linie erweitern, In Zeilen aufteilen, Zeilen verbinden.

(Vergessen Sie nicht, die Tastenkombination (en) von der Seite mit den Erweiterungsdetails zu Ihrer hinzuzufügen. keybindings.json)


Hat VS Code nicht bereits einen Befehl "In Zeilen aufteilen"?

Ja , ja, das tut es. Es unterscheidet sich jedoch von dem in Sublime.

Wenn Sie im VS-Code in Zeilen aufteilen, wird die Auswahl aufgehoben und am Ende jeder ausgewählten Zeile wird ein Cursor angezeigt (mit Ausnahme der letzten Zeile, in der der Cursor am Ende der Auswahl angezeigt wird).

Wenn Sie in Sublime in Zeilen aufteilen, wird am Ende jeder Zeile ein Cursor angezeigt (mit derselben Ausnahme wie im VS-Code), und die Auswahl wird in jede Zeile unterteilt und derselben Zeile "gegeben".


Beachten Sie, dass das OP fragt, wie die Aufgabe auf vscode ausgeführt werden soll, da sie bereits wissen, wie sie in sublime ausgeführt wird
am

0

Ich habe das gleiche Problem, ich bin es gewohnt, Alt + Drag zu drücken, um 'Box-Auswahl' in Visual Studio durchzuführen, aber es funktioniert nicht im Code.

Es scheint vorerst unmöglich zu sein, es anders zu machen, als jede einzelne Zeile auszuwählen.

Plugins sollten jedoch bald unterstützt werden, sodass wir wahrscheinlich ein Plugin dafür sehen werden, wenn es nicht direkt von Microsoft implementiert wird.

Aus den Visual Studio-Uservoice-Foren:

Wir planen, Plugin-Unterstützung für Visual Studio Code anzubieten. Vielen Dank für Ihre Interessen und suchen Sie in den kommenden Wochen in unserem Blog nach weiteren Details. http://blogs.msdn.com/b/vscode .

Für die Vorschau suchen wir genau diese Art von Feedback. Mach weiter so.

Sean McBreen - VS Code Teammitglied

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.