Baris duplikat dalam kode Visual Studio

146

Saya mencoba menemukan jalan pintas untuk menduplikasi baris dalam Visual Studio Code (saya menggunakan 1.3.1) Saya mencoba CTRL+ yang jelas Dtetapi tampaknya tidak berhasil.

TheWebGuy
sumber
Ctrl + D untuk duplikasi baris tidak begitu jelas: ia berfungsi di Notepad ++ misalnya, tetapi menghapus baris saat ini di Eclipse :)
kol
Lihat ekstensi Duplikat Kontekstual
CharlesB
secara default, CTRL + Dcukup pilih kejadian berikutnya yang dipilih vs IDE lain.
Amir Kian

Jawaban:

253

Klik File > Preferensi > Pintasan Keyboard :

masukkan deskripsi gambar di sini

Telusuri copyLinesDownActionatau copyLinesUpActiondi pintasan keyboard Anda

Biasanya SHIFT+ALT +


Pembaruan untuk Ubuntu:

Tampaknya Ubuntu menyembunyikan pintasan itu agar tidak terlihat oleh VSCode (yaitu mungkin menggunakannya sendiri). Ada masalah tentang itu di GitHub .

Untuk bekerja di Ubuntu Anda harus menentukan pintasan Anda sendiri, misalnya untuk menyalin baris menggunakan ctrl+ shift+ alt+ jdan CTRL+ SHIFT+ ALT+ kAnda bisa menggunakan keybindings.jsonseperti ini:

[
    { "key": "ctrl+shift+alt+j", "command": "editor.action.copyLinesDownAction",
                                    "when": "editorTextFocus && !editorReadonly" },
    { "key": "ctrl+shift+alt+k", "command": "editor.action.copyLinesUpAction",
                                    "when": "editorTextFocus && !editorReadonly" }
]
DAXaholic
sumber
Di Mac: Kode> Preferensi> Pintasan Keyboard. Shift + Option + Panah Bawah.
jarmod
2
Jawaban @DAXaholic benar jika Anda membutuhkan solusi sederhana, cukup pertahankan kursor pada baris yang ingin Anda duplikat dan tekan ctrl + c dan ctrl + v. bekerja dengan baik
Gopi P
1
Di Ubuntu 16.04, secara default, Ctrl+ Shift+ Up Arrow/ Down Arrowpintasan dipetakan untuk memindahkan jendela ke ruang kerja yang berbeda. Anda dapat mengubahnya Ubuntu -->System Settings --> Keyboard --> Shortcuts --> Navigationlalu tekan Backspaceuntuk menghapus pintasan yang tidak diinginkan.
mowen
1
Milik saya terikat ke Ctrl + Shift + Alt + DownArrow, tetapi sebenarnya tidak melakukan apa pun saat saya mengklik tombol tersebut.
Aaron Franke
104

Duplikat dapat dicapai dengan CTRL+ Cdan CTRL+ Vdengan kursor di baris tanpa ada yang dipilih.

rylek90
sumber
35
Saya belum menurunkan suara, tetapi saya akan membayangkan ini tidak dapat diterima untuk OP karena ini menyalin baris ke clipboard, yang merupakan salah satu alasan yang sangat baik untuk menginginkan perintah "baris duplikat" daripada perintah salin / tempel.
Matt Dell
1
Ini tidak berfungsi jika editor.emptySelectionClipboardopsi disetel ke false(konfigurasi pilihan saya).
Bill_Stewart
8
Ini
menghancurkan
1
Satu hal yang menarik yang saya catat dalam metode ini adalah, tidak perlu melepaskan Ctrl Key setelah menekan 'C' (Lepaskan hanya setelah melepaskan V)
Arun
Ini merusak seluruh tujuan duplikasi baris instan.
Arman Karimi
53

Anda dapat menggunakan berikut ini tergantung pada OS Anda:

Windows:

Shift+ Alt+ atau Shift+ Alt+

Mac:

Shift+ Option+ atau Shift+ Option+

Linux:

Ctrl+ Shift+ Alt+ atau Ctrl+ Shift+ Alt+

Catatan: Untuk beberapa distro linux gunakan panah Numpad

Mwiza
sumber
9

Telusuri copyLinesDownActionatau copyLinesUpActiondi pintasan keyboard Anda

Biasanya, SHIFT+ ALT+

Jcesar
sumber
7

Ubuntu:

  • Gandakan Line Up: Ctrl+ Alt+ Shift+8
  • Gandakan Garis Bawah: Ctrl+ Alt+ Shift+2
Sabunkar Tejas Sahailesh
sumber
1
bekerja dengan baik untuk saya. Terima kasih atas jawabannya.
singhkumarhemant
1
Ini sebenarnya adalah solusi yang bagus (bekerja di Ubuntu 20 & 19) yang tidak memerlukan perubahan apa pun ke pengaturan default. Mungkin tidak terlihat sangat intuitif tetapi 8 & 2 sebenarnya Naik dan Turun di Papan Angka
pengguna273711
5

Gunakan yang berikut ini: Shift+ Alt+ ( atau )

Luciano Marinho
sumber
3

Mac: Gandakan Garis Bawah: shift+ option+

Brittany
sumber
2

Ada perintah baru di v1.40: editor.action.duplicateSelectiontidak terikat ke keybinding apa pun.

Pilihan duplikat

Kami telah menambahkan tindakan baru bernama Duplicate Selection. Saat dijalankan, pilihan saat ini akan diduplikasi dan hasilnya akan dipilih. Jika tidak ada pilihan, baris saat ini akan diduplikasi, semuanya tanpa menulis ke papan klip sistem.

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

Beberapa orang mungkin merasa terbantu dalam situasi tertentu.

Menandai
sumber
0

2 pintasan lain yang sangat berguna adalah memindahkan garis yang dipilih ke atas dan ke bawah, seperti teks luhur ...

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

dan

{
  "key" : "ctrl+shift+up", "command" : "editor.action.moveLinesUpAction",
  "when" : "editorTextFocus && !editorReadonly"
}
Luciano Marinho
sumber
Salah. Anda tidak perlu selectgaris di ST untuk menduplikasinya.
Hijau
jalan pintas adalah untuk memindahkan "garis" yang dipilih
Nishant Baranwal
0

Versi Kode VC: 1.22.2 Buka: Kode -> Preferensi -> Pintasan Keyboard (cmd + K; cms + S); Ubah (edit): "Tambahkan Pilihan Ke Pencarian Berikutnya yang Cocok": "cmd + apa yang Anda inginkan" // bagi saya ini adalah "cmd + D" dan saya pur cmd + F; Pergi ke "Salin Garis Bawah": "cmd + D" // edit ini dan setel cmd + D sebagai contoh Dan bagi saya itu saja - saya menggunakan mac;

Carnaru Valentin
sumber
0

Windows:

Gandakan Garis Bawah: Ctrl+ Shift+D

Umair Sultan
sumber
3
Bagi saya, ini memicu debugger bawaan.
Mark Carpenter Jr
Jawaban Anda benar, Terima kasih banyak, saya menggunakannya di ubuntu saya.
Mohammad Habibur Rahman
0

Anda dapat membuat keybindings yang hanya aktif saat Vim for VSCode aktif dan dalam mode tertentu (misalnya, "Normal", "Sisipkan", atau "Visual").

Untuk melakukannya, gunakan Ctrl+ Shift+ Puntuk membuka Palet Perintah VSCode, lalu cari "Preferensi: Buka Pintasan Keyboard (JSON)" - memilih opsi ini akan membuka keybindings.json . Di sini, pengikatan khusus dapat ditambahkan.

Misalnya, berikut adalah perintah VSCode klasik untuk memindahkan / menggandakan baris yang diubah untuk kemudahan penggunaan di Vim ..

    [
      {
        "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'"
      },
    ]

Sekarang kita dapat menggunakan perintah ramah Vim ini di VSCode!

  • Alt+ Juntuk memindahkan satu baris ke bawah
  • Alt+ Kuntuk memindahkan satu baris ke atas
  • Shift+ Alt+ Juntuk menduplikasi garis ke bawah
  • Shift + Alt+ Kuntuk menduplikasi baris
Harga Emmanuel
sumber
0

Pembaruan yang dapat membantu pengguna Ubuntu jika mereka masih ingin menggunakan dan sebagai ganti dari satu set kunci.

Saya baru saja menginstal versi baru VSCode di Ubuntu 18.04 LTS dan saya memiliki perintah duplikat untuk Add Cursor AbovedanAdd Cursor Below

Keybindings Asli

Saya baru saja menghapus binding yang digunakan Ctrldan menambahkan milik saya dengan yang berikut ini

Copy Line Up

Ctrl+ Shift+

Copy Line Down

Ctrl+ Shift+

Keybindings baru

Terrence
sumber
0

Ada berbagai cara.

  • Tekan CNTRL + C dan CNTRL + V.
  • Tekan Shift + alt + downarrow untuk menduplikasi garis ke sisi bawah
  • Tekan Shift + alt + uparrow untuk menduplikasi garis ke atas
Adhil Muhammad
sumber