Apa yang setara untuk ALT + ATAS / BAWAH (garis bergerak) eclipse di Visual Studio?

104

Di Eclipse, memilih garis dan menekan Alt+ / akan menggerakkan garis ke atas dan ke bawah, cara cepat untuk menghindari salin & tempel. Apakah ada yang setara di Visual Studio?

Roberto
sumber
3
Saya ingin tahu bagaimana melakukan ini dalam gerhana, sekarang saya tahu.
Dan
2
Perhatikan bahwa di VS 2013+ pintasan ini sekarang didukung
benscabbia

Jawaban:

141

Dalam Visual Studio 2013 dan yang lebih baru, fungsionalitas ini sudah terpasang. ALT + ATAS / BAWAH akan memindahkan baris ke atas atau ke bawah.

Jika Anda memerlukan fungsionalitas ini di VS2012 (bekerja dengan VS2010 juga), lihat di MoveLine Visual Studio Extension atau suite Productivity Power Tools .

Kevin Aenmey
sumber
35
Luar biasa bahwa Anda memerlukan plugin untuk ini
void.pointer
bagaimana dengan elemen anak ketika Anda memilih tag? misalnya saya telah memilih tag div dan saya ingin memindahkan semua elemen anak, daripada memilih dengan mouse.
Arash
14
Jika Anda ingin memasang kembali, nama perintahnya adalah "Edit.MoveSelectedLinesUp", di bawah Alat> Opsi> Lingkungan> Keyboard.
Joan Charmant
Di Ubuntu 16.04 bekerja di luar kotak! Terima kasih banyak!
James Freitas
1
@Shimmy Anda sebenarnya memiliki opsi yang lebih baik dengan Ctrl + Shift + Alt + tombol Arah. Anda bisa memindahkannya kemana saja.
scottheckel
79

Ctrl+ Shift+ Alt+ / / / ReSharper bahkan lebih kuat - ketika di awal baris, itu akan memindahkan seluruh baris, tetapi juga dapat digunakan untuk memindahkan seluruh metode, mengubah urutan parameter, dll.

Omer Raviv
sumber
4
Juga tidak berfungsi jika R # menganggap baris saat ini adalah bagian dari konstruksi yang lebih besar. Misalnya, coba pindahkan usingpernyataan dari bagian atas file beberapa baris ke bawah untuk berada di dalam namespacedeklarasi. Ketika baris yang berisi usingada pada baris di bawah namespacedeklarasi, R # akan menggabungkannya dan panggilan berikutnya ke <kbd> Ctrl </kbd> + <kbd> Shift </kbd> + <kbd> Alt </kbd> + <kbd> & darr; </kbd> akan memindahkan baik baris namespacemaupun usingbaris ke ujung namespaceblok kode sebelumnya .
Carl G
1
Juga tampaknya tidak berhasil untuk memindahkan garis melintasi batas metode.
Robin Coe
5

Ini sekarang bekerja di luar kotak dengan Visual Studio 2013, dengan cara yang sama seperti di Eclipse.

Drealmer
sumber
2
Tidak persis sama, tidak mengoreksi lekukan
Sentry
@Sentry ctrl + k, D
John Demetriou
5

Bagi saya di Visual Studio 2019 itu default ditutup.

Untuk membukanya:

Tools -> Options -> Keyboard lalu pilih Edit.MoveSelectedLinesUp , klik input "Tekan tombol pintas" dan tekan Alt + Up (atau apa pun yang Anda inginkan). Dan yang lainnya adalah Edit.MoveSelectedLinesDown , klik input "Tekan tombol pintas" dan tekan Alt + Down (atau apa pun yang Anda inginkan).

Umut Sun
sumber
1
Saya juga menemukan bahwa ini tidak memiliki pengikatan kunci default di VS 2019
Andrew W
3

Di Visual Studio 2013 dan yang lebih baru, Anda dapat memindahkan baris ke atas dan ke bawah menggunakan Alt+ / Alt+ . Sayangnya ini tidak akan menyesuaikan indentasi jika Anda berpindah antar blok, seperti saat ini hanya ReSharper (dan semua IDE lain dari Jetbrains termasuk Rider) yang dapat membantu Anda.

Untuk memindahkan seluruh blok kode di sekitar Anda dapat memindahkan kursor ke kepalanya dan menekan Ctrl+ mdua kali dengan cepat untuk menciutkannya, lalu gunakan perintah di atas untuk memindahkannya.

Berikut adalah referensi yang rapi ke semua pintasan keyboard default dalam berbagai versi Visual Studio.

Andreas Bergström
sumber
1

Dengan ekstensi VSCommands, Anda memiliki pintasan keyboard yang persis sama. Dan, omong-omong, bilah alat pemberitahuan Stack OVerflow :)

eFloh
sumber