Doppelte Zeile in Visual Studio Code


146

Ich versuche, die Verknüpfung zum Duplizieren einer Zeile in Visual Studio Code zu finden (ich verwende 1.3.1). Ich habe das offensichtliche CTRL+ ausprobiert, Daber das scheint nicht zu funktionieren.



Strg + D für die Zeilenduplizierung ist nicht so offensichtlich: Es funktioniert zum Beispiel in Notepad ++, aber es löscht die aktuelle Zeile in Eclipse :)
kol

Siehe die Contextual Duplicate- Erweiterung
CharlesB

Wählen Sie standardmäßig CTRL + Dnur das nächste Vorkommen aus, das im Vergleich zu anderen IDEs ausgewählt wurde.
Amir Kian

Antworten:


252

Klicken Sie auf Datei > Einstellungen > Tastaturkürzel :

Geben Sie hier die Bildbeschreibung ein

Suchen Sie nach copyLinesDownActionoder copyLinesUpActionin Ihren Tastaturkürzeln

Normalerweise ist es SHIFT+ ALT+


Update für Ubuntu:

Es scheint, dass Ubuntu diese Verknüpfung vor dem Anzeigen durch VSCode verbirgt (dh, es verwendet sie wahrscheinlich selbst). Es gibt ein Problem mit GitHub .

Um in Ubuntu zu arbeiten, müssen Sie Ihre eigene Verknüpfung definieren, z. B. um die Zeile mit ctrl+ shift+ alt+ jund CTRL+ SHIFT+ ALT+ zu kopieren, können kSie Folgendes verwenden keybindings.json:

[
    { "key": "ctrl+shift+alt+j", "command": "editor.action.copyLinesDownAction",
                                    "when": "editorTextFocus && !editorReadonly" },
    { "key": "ctrl+shift+alt+k", "command": "editor.action.copyLinesUpAction",
                                    "when": "editorTextFocus && !editorReadonly" }
]

Auf dem Mac: Code> Einstellungen> Tastaturkürzel. Umschalt + Option + Abwärtspfeil.
Jarmod

2
Die @ DAXaholic-Antwort war korrekt, wenn Sie eine einfache Lösung benötigen. Halten Sie einfach den Cursor in der Zeile, die Sie duplizieren möchten, und drücken Sie Strg + C und Strg + V. es funktioniert gut
Gopi P

1
Unter Ubuntu 16.04 sind die Verknüpfungen Ctrl+ Shift+ Up Arrow/ standardmäßig dem Down ArrowVerschieben von Fenstern in verschiedene Arbeitsbereiche zugeordnet. Sie können dies ändern und Ubuntu -->System Settings --> Keyboard --> Shortcuts --> Navigationdann drücken Backspace, um die unerwünschten Verknüpfungen zu löschen.
Mähen

1
Meins ist an Strg + Umschalt + Alt + Abwärtspfeil gebunden, aber es macht eigentlich nichts, wenn ich auf diese Schaltflächen klicke.
Aaron Franke

104

Das Duplikat kann durch CTRL+ Cund CTRL+ Vmit dem Cursor in der Zeile erreicht werden, ohne dass etwas ausgewählt ist.


35
Ich habe nicht abgestimmt, aber ich würde mir vorstellen, dass dies für das OP nicht akzeptabel ist, da dies die Zeile in die Zwischenablage kopiert. Dies ist ein sehr guter Grund, einen Befehl "Zeile duplizieren" anstelle eines Befehls zum Kopieren / Einfügen zu verwenden.
Matt Dell

1
Dies funktioniert nicht, wenn die editor.emptySelectionClipboardOption auf false(meine bevorzugte Konfiguration) gesetzt ist.
Bill_Stewart

7
Dies bläst weg, was ich in meiner Zwischenablage hatte
Kris Kilton

1
Eine interessante Sache, die ich bei dieser Methode festgestellt habe, ist, dass Sie die Strg-Taste nach dem Drücken von 'C' nicht loslassen müssen (erst nach dem Loslassen von V loslassen)
Arun

Dies ruiniert den gesamten Zweck der sofortigen Zeilenverdoppelung.
Arman Karimi

52

Abhängig von Ihrem Betriebssystem können Sie Folgendes verwenden:

Windows:

Shift+ Alt+ oder Shift+ Alt+

Mac:

Shift+ Option+ oder Shift+ Option+

Linux:

Ctrl+ Shift+ Alt+ oder Ctrl+ Shift+ Alt+

Hinweis: Verwenden Sie für einige Linux-Distributionen Numpad-Pfeile


9

Suchen Sie nach copyLinesDownActionoder copyLinesUpActionin Ihren Tastaturkürzeln

Normalerweise ist es SHIFT+ ALT+


7

Ubuntu:

  • Doppelte Aufstellung: Ctrl+ Alt+ Shift+8
  • Doppelte Zeile nach unten: Ctrl+ Alt+ Shift+2

1
funktioniert perfekt für mich. Danke für die Antwort.
singhkumarhemant

1
Dies ist eine gute Lösung (unter Ubuntu 20 und 19), für die keine Änderungen an der Standardeinstellung erforderlich sind. Könnte nicht sehr intuitiv erscheinen, aber 8 & 2 sind tatsächlich Auf und Ab im
NumPad



2

In Version 1.40 gibt es einen neuen Befehl: editor.action.duplicateSelectionUngebunden an eine Tastenkombination.

Doppelte Auswahl

Wir haben eine neue Aktion mit dem Namen "Auswahl duplizieren" hinzugefügt. Bei der Ausführung wird die aktuelle Auswahl dupliziert und das Ergebnis ausgewählt. Wenn keine Auswahl vorhanden ist, wird die aktuelle Zeile dupliziert, ohne dass in die Systemzwischenablage geschrieben wird.

von https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_40.md

Einige mögen es in bestimmten Situationen hilfreich finden.


0

Weitere 2 sehr nützliche Verknüpfungen sind das Verschieben von ausgewählten Zeilen nach oben und unten, wie es erhabener Text tut ...

{
  "key" : "ctrl+shift+down", "command" : "editor.action.moveLinesDownAction",
  "when" : "editorTextFocus && !editorReadonly"
},

und

{
  "key" : "ctrl+shift+up", "command" : "editor.action.moveLinesUpAction",
  "when" : "editorTextFocus && !editorReadonly"
}

Falsch. Sie müssen keine selectZeile in ST eingeben, um sie zu duplizieren.
Grün

Abkürzungen sind, um "Linien" ausgewählt zu verschieben
Nishant Baranwal

0

VC-Code-Version: 1.22.2 Gehen Sie zu: Code -> Einstellungen -> Tastaturkürzel (cmd + K; cms + S); Ändern (bearbeiten): "Auswahl zur nächsten Suche hinzufügen": "cmd + was Sie wollen" // für mich ist dies "cmd + D" und ich pur cmd + F; Gehen Sie zu "Zeile nach unten kopieren": "cmd + D" // bearbeiten Sie dies und setzen Sie zum Beispiel cmd + D Und für mich ist das alles - ich benutze mac;



0

Es ist möglich, Tastenkombinationen zu erstellen, die nur aktiv sind, wenn Vim for VSCode aktiviert ist und sich in einem bestimmten Modus befindet (dh "Normal", "Einfügen" oder "Visuell").

Verwenden Sie dazu Ctrl+ Shift+ P, um die Befehlspalette von VSCode zu öffnen, und suchen Sie dann nach "Einstellungen: Tastaturkürzel (JSON) öffnen". Wenn Sie diese Option auswählen, wird keybindings.json geöffnet . Hier können benutzerdefinierte Bindungen hinzugefügt werden.

Hier sind beispielsweise die klassischen VSCode-Befehle zum Verschieben / Duplizieren von Zeilen, die zur Vereinfachung der Verwendung in Vim optimiert wurden.

    [
      {
        "key": "alt+j",
        "command": "editor.action.moveLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+j",
        "command": "editor.action.copyLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+k",
        "command": "editor.action.moveLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+k",
        "command": "editor.action.copyLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
    ]

Jetzt können wir diese Vim-freundlichen Befehle in VSCode verwenden!

  • Alt+ Jum eine Linie nach unten zu verschieben
  • Alt+ Kum eine Linie nach oben zu verschieben
  • Shift+ Alt+ Jum eine Zeile nach unten zu duplizieren
  • Shift + Alt+ Kum eine Aufstellung zu duplizieren

0

Update, das Ubuntu-Benutzern helfen kann, wenn sie weiterhin das und anstelle eines anderen Schlüsselsatzes verwenden möchten .

Ich habe gerade eine neue Version von VSCode unter Ubuntu 18.04 LTS installiert und hatte doppelte Befehle für Add Cursor AboveundAdd Cursor Below

Original-Tastenkombinationen

Ich habe gerade die verwendeten Bindungen entfernt Ctrlund meine eigenen mit den folgenden hinzugefügt

Copy Line Up

Ctrl+ Shift+

Copy Line Down

Ctrl + Shift+

Neue Tastenkombinationen


0

Es gibt verschiedene Möglichkeiten.

  • Drücken Sie CNTRL + C und CNTRL + V.
  • Drücken Sie Umschalt + Alt + Abwärtspfeil, um die Linie nach unten zu duplizieren
  • Drücken Sie Umschalt + Alt + Aufwärtspfeil, um die Linie nach oben zu duplizieren
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.