Qual è l'equivalente di ALT + SU / GIÙ (sposta linea) di eclipse in Visual Studio?


104

In Eclipse, selezionando una linea e premendo Alt+ / si sposterà la linea su e giù, un modo rapido per evitare di copiare e incollare. Esiste un equivalente in Visual Studio?


3
Volevo sapere come farlo in Eclipse ora che lo so.
Dan

2
Tieni presente che in VS 2013+ questa scorciatoia è ora supportata
benscabbia

Risposte:


141

In Visual Studio 2013 e versioni successive, questa funzionalità è incorporata. ALT + SU / GIÙ sposta una riga in alto o in basso.

Se hai bisogno di questa funzionalità in VS2012 (funziona anche con VS2010), dai un'occhiata a MoveLine Visual Studio Extension o alla suite Productivity Power Tools .


35
È incredibile che tu abbia bisogno di un plug-in per questo
void.pointer

che ne dici di un elemento figlio quando selezioni un tag? ad esempio, ho selezionato un tag div e voglio spostare in alto tutti gli elementi figlio, invece di selezionare con il mouse.
Arash

14
Se vuoi riassociarlo, il nome del comando è "Edit.MoveSelectedLinesUp", in Strumenti> Opzioni> Ambiente> Tastiera.
Joan Charmant

In Ubuntu 16.04 ha funzionato immediatamente! Molte grazie!
James Freitas

1
@ Shimmy hai effettivamente un'opzione migliore con Ctrl + Maiusc + Alt + tasti di direzione. Puoi spostarlo ovunque.
scottheckel

79

Il Ctrl+ Shift+ Alt+ / / / di ReSharper è ancora più potente: quando è all'inizio della riga, sposta l'intera riga, ma può anche essere utilizzato per spostare interi metodi, modificare l'ordine dei parametri, ecc.


4
Inoltre non funziona se R # pensa che la riga corrente faccia parte di un costrutto più ampio. Ad esempio, prova a spostare usingun'istruzione dall'inizio di un file di poche righe verso il basso per essere all'interno della namespacedichiarazione. Quando la riga contenente il si usingtrova sulla riga sotto la namespacedichiarazione, R # li combinerà e la prossima chiamata a <kbd> Ctrl </kbd> + <kbd> Maiusc </kbd> + <kbd> Alt </kbd> + <kbd> & darr; </kbd> sposterà sia namespacela usingriga che la riga fino alla fine del precedente namespaceblocco di codice.
Carl G

1
Inoltre non sembra funzionare per spostare le linee oltre i confini del metodo.
Robin Coe

5

Ora funziona fuori dagli schemi con Visual Studio 2013, allo stesso modo di Eclipse.


2
Non proprio la stessa cosa, non corregge il rientro
Sentry

@Sentry ctrl + k, D
John Demetriou

5

Per me in Visual Studio 2019 viene chiuso per impostazione predefinita.

Per aprirlo:

Strumenti -> Opzioni -> Tastiera, quindi seleziona Modifica.MoveSelectedLinesUp , fai clic su "Premi tasti di scelta rapida" e premi Alt + Su (o quello che vuoi). E l'altro è Edit.MoveSelectedLinesDown , fai clic su "Premi tasti di scelta rapida" e premi Alt + Giù (o quello che vuoi).


1
Ho anche scoperto che questi non avevano l'associazione di tasti predefinita in VS 2019
Andrew W

3

In Visual Studio 2013 e versioni successive, puoi spostare le righe su e giù usando Alt+ / Alt+ . Sfortunatamente questo non aggiusterà il rientro se ti muovi tra i blocchi, ad oggi solo ReSharper (e tutti gli altri IDE di Jetbrains incluso Rider) possono aiutarti in questo.

Per spostare interi blocchi di codice, puoi spostare il cursore sulla sua testa e premere Ctrl+ mdue volte velocemente per comprimerlo, quindi utilizzare il comando sopra per spostarlo.

Ecco un chiaro riferimento a tutte le scorciatoie da tastiera predefinite nelle diverse versioni di Visual Studio.


1

Con l'estensione VSCommands, hai esattamente quella scorciatoia da tastiera. E, a proposito, una barra degli strumenti di notifica Stack OVerflow :)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.