Quel est l'équivalent de ALT + UP / DOWN (déplacer la ligne) d'éclipse dans Visual Studio?


104

Dans Eclipse, sélectionner une ligne et appuyer sur Alt+ / déplacera la ligne de haut en bas, un moyen rapide d'éviter le copier-coller. Existe-t-il un équivalent dans Visual Studio?


3
Je voulais savoir comment faire cela en éclipse maintenant je sais.
Dan

2
Notez que dans VS 2013+, ce raccourci est maintenant pris en charge
benscabbia

Réponses:


141

Dans Visual Studio 2013 et versions ultérieures, cette fonctionnalité est intégrée. ALT + HAUT / BAS déplace une ligne vers le haut ou vers le bas.

Si vous avez besoin de cette fonctionnalité dans VS2012 (fonctionne également avec VS2010), jetez un œil à l' extension MoveLine Visual Studio ou à la suite Productivity Power Tools .


35
Incroyable que vous ayez besoin d'un plugin pour cela
void.pointer

que diriez-vous de l'élément enfant lorsque vous sélectionnez une balise? par exemple, j'ai sélectionné une balise div et je souhaite remonter tous les éléments enfants, au lieu de les sélectionner à la souris.
Arash

14
Si vous souhaitez la relier, le nom de la commande est "Edit.MoveSelectedLinesUp", sous Outils> Options> Environnement> Clavier.
Joan Charmant le

Dans Ubuntu 16.04 a fonctionné hors de la boîte! Merci beaucoup!
James Freitas

1
@Shimmy vous avez en fait une meilleure option avec les touches Ctrl + Maj + Alt + Direction. Vous pouvez le déplacer n'importe où.
scottheckel

79

Le Ctrl+ Shift+ Alt+ / / / de ReSharper est encore plus puissant - au début de la ligne, il déplacera toute la ligne, mais peut également être utilisé pour déplacer des méthodes entières, changer l'ordre des paramètres, etc.


4
Ne fonctionne pas non plus si R # pense que la ligne courante fait partie d'une construction plus large. Par exemple, essayez de déplacer une usinginstruction du haut d'un fichier de quelques lignes vers le bas pour être à l'intérieur de la namespacedéclaration. Lorsque la ligne contenant le usingest sur la ligne sous la namespacedéclaration, R # les combinera et le prochain appel à <kbd> Ctrl </kbd> + <kbd> Shift </kbd> + <kbd> Alt </kbd> + <kbd> & darr; </kbd> déplacera à la fois namespacela usingligne et la ligne jusqu'à la fin de l'ancien namespacebloc de code.
Carl G

1
Ne semble pas non plus fonctionner pour déplacer les lignes à travers les limites de la méthode.
Robin Coe

5

Cela fonctionne maintenant avec Visual Studio 2013, de la même manière que dans Eclipse.


2
Pas tout à fait la même chose, cela ne corrige pas l'indentation
Sentry

@Sentry ctrl + k, D
John Demetriou

5

Pour moi, dans Visual Studio 2019, il est fermé par défaut.

Pour l'ouvrir:

Outils -> Options -> Clavier puis sélectionnez Edit.MoveSelectedLinesUp , cliquez sur l'entrée "Appuyez sur les touches de raccourci" et appuyez sur Alt + Haut (ou ce que vous voulez pour cela). Et l'autre est Edit.MoveSelectedLinesDown , cliquez sur l'entrée "Appuyez sur les touches de raccourci" et appuyez sur Alt + Bas (ou ce que vous voulez pour cela).


1
J'ai également constaté qu'il n'y avait pas de liaison de clé par défaut dans VS 2019
Andrew W

3

Dans Visual Studio 2013 et versions ultérieures, vous pouvez déplacer les lignes de haut en bas à l'aide de Alt+ / Alt+ . Malheureusement, cela n'ajustera pas l'indentation si vous vous déplacez entre les blocs, à partir d'aujourd'hui, seul ReSharper (et tous les autres IDE de Jetbrains, y compris Rider) peut vous aider.

Pour déplacer des blocs entiers de code, vous pouvez déplacer le curseur vers sa tête et appuyer deux fois rapidement sur Ctrl+ mpour le réduire, puis utiliser la commande ci-dessus pour le déplacer.

Voici une référence claire à tous les raccourcis clavier par défaut dans différentes versions de Visual Studio.


1

Avec l'extension VSCommands, vous avez exactement ce raccourci clavier. Et, en passant, une barre d'outils de notification Stack OVerflow :)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.