Réduire toutes les # régions uniquement (!) En C # (Visual Studio)

103

Il existe un certain nombre de raccourcis clavier et de commandes de menu pour développer ou réduire automatiquement tous les éléments pliables du document actuel. Ctrl+ M, Ctrl+ Lbascule tous les pliables de manière récursive, de l'espace de noms supérieur jusqu'aux méthodes internes et aux commentaires. Fondamentalement, tout ce qui a une icône [+] dans la marge gauche. Ctrl+ M, Ctrl+ le Ofait un peu moins, mais il touche toujours les méthodes et les commentaires à l'intérieur de la classe.

Je recherche une fonction qui ne concerne spécifiquement que les #regionpliables et rien d'autre. Pas d'espaces de noms, de classes, de commentaires ou de méthodes. Je ne veux vraiment plier que les zones explicitement marquées comme telles avec le #regionmot - clé.

Y a-t-il un raccourci caché ou une extension pour cela?

Je préférerais une solution clavier, pour Visual Studio 2015 (RC pour l'instant).

Au cas où quelqu'un demanderait pourquoi: je veux avoir un aperçu du fichier, mais voir immédiatement tous les détails lorsque je décide de regarder à l'intérieur d'une région.


Mettre à jour:

Solution en 2020

Comme cette question a reçu de nombreuses réponses, certaines inutiles, d'autres obsolètes, la solution de travail pour Visual Studio 2019 se trouve dans cette réponse sous-estimée ici: https://stackoverflow.com/a/58999093/143684

ygoe
la source
Je ne pense pas (ouvert à la correction cependant). Avez-vous essayé la vue de classe - elle affichera tous les membres de la classe (pas la liste déroulante en haut de l'éditeur de texte) et vous pouvez double-cliquer pour accéder au membre sélectionné.
amcdermott
1
Je pense qu'il n'y a rien de tel, Ctrl + M, Ctrl + O est le plus proche
voytek
La fenêtre Vue de classe contient tous les éléments dans une liste plate, pas du tout "régionalisée". Ce n'est pas pour cela que j'utilise les régions. J'ai besoin de régions pour trouver rapidement des membres par sujet, en particulier dans les classes longues avec un petit nombre de méthodes similaires chacune pour un type de modèle différent. Les régions les regroupent par type de modèle ici.
ygoe

Réponses:

210

dans Visual Studio 2017, je dois activer 'Réduire les #régions lors de la réduction en définitions' dans

Tools -> Options -> Text Editor -> C# -> Advanced

explicitement pour tout réduire en appuyant sur Ctrl+ M+O

Myz
la source
8
Malheureusement, cela effondre également tout le reste (presque), pas seulement les régions. Ce n'est donc pas ce que je recherche. L'extension Quick Launch Tasks existe toujours pour VS 2017 et peut être installée séparément maintenant, voyez-moi un autre commentaire.
ygoe
20
Ce n'est peut-être pas ce que le PO a demandé, mais c'est ce que je cherchais.
Homer
11
L'option dans la version actuelle est "Réduire les # régions lors de la réduction aux définitions" et elle se trouve dans Outils> Options> Éditeur de texte> C #> Avancé. C'est aussi ce que je cherchais. Cela fait que Ctrl + M + O fonctionne comme il l'a fait dans VS 2015
Matt Becker
65

Ctrl+ M+ Ova tout réduire.

Ctrl+ M+ Lélargira tout. (dans VS 2013 - Toggle All Outlining)

Ctrl+ M+ Pdéveloppera tout et désactivera les contours.

Ctrl+ M+ Mréduira / développera la section actuelle.

Ces options se trouvent également dans le menu contextuel sous Outlining.

Faites un clic droit dans l'éditeur -> Plan pour trouver toutes les options. (Après avoir désactivé la présentation, suivez les mêmes étapes pour activer la sortie.)

Brendon Vdm
la source
1
C'est vraiment la seule bonne réponse ... CTRL + (M puis O / L) ne développera / réduira que les régions sur une page qui répond directement à la question d'origine.
Levi Fuller
15
Ce n'est plus vrai avec VS2017RC. Tout regrouper ne réduit pas les régions. (Au moins la version actuelle: 15.0.2620.0)
François
3
Pour VS 2017, voir la réponse de @Myz ci-dessous.
Jeffrey Harmon
29

L'extension Visual Studio Productivity Power Tools 2015 de Microsoft dispose d'une fonctionnalité appelée Tâches de lancement rapide qui ajoute de nouvelles commandes au menu de lancement rapide. L'un d'eux est CollapseRegions et c'est exactement ce qu'il fait.

La commande opposée est ExpandRegions et elle étend toutes les régions pour une navigation rapide dans tout le fichier. Ces commandes peuvent être utilisées assez rapidement en appuyant sur la CtrlQtouche de raccourci et en tapant Collresp. Exp, puis en appuyant sur Enter(supposé que vous n'ayez pas d'autres commandes avec le même préfixe).

ygoe
la source
7
Voici l'extension correspondante pour Visual Studio 2017: Tâches de lancement rapide
ygoe
N'est plus valide avec Visual Studio 2019 car ils ont changé le fonctionnement de la recherche de tâches rapides.
Chronique du
17

Pour réduire des régions: Outils> Options> Éditeurs de texte> C #> Avancé> Cochez «Réduire les # régions lors de la réduction aux définitions»

Réduire l'image de #régions

Oussama Nour
la source
Oh, nous en avions déjà un il y a 3 ans. Voir la réponse la plus élevée.
ygoe
10

cochez la case dans Paramètres -> TextEditor -> C # -> Avancé -> Réduire les #régions lors de la réduction des définitions.

puis clic droit dans l'éditeur> esquisser> réduire aux défenitions

dev_ter
la source
7

On dirait que la chose la plus proche est Ctrl+ M, Ctrl+S

Ce qui réduira la région actuelle dans laquelle vous vous trouvez, tandis que Ctrl+ M, Ctrl+ Eélargira la région actuelle dans laquelle vous vous trouvez.

Liste des raccourcis clavier par défaut:

https://msdn.microsoft.com/en-us/library/da5kh0wa(v=vs.140).aspx

AzNjoE
la source
7

Je ne sais pas si c'est nouveau, mais il existe un paramètre pour l'éditeur de texte c #:

Paramètres -> TextEditor -> C # -> Avancé -> Réduire les #régions lors de la réduction des définitions.

Lorsque son ensemble CtrlM CtrlOréduira les #regions.

Roland
la source
7

Je sais que c'est une vieille question, mais voici une mise à jour pour Visual Studio 2019:

La solution Tâches rapides de la réponse de @ ygoe ne fonctionne pas pour Visual Studio 2019, car cette version a changé la façon dont la barre des tâches rapides recherche. De plus, ce n'était jamais la solution préférée à la question initiale, car vous deviez taper une action rapide au lieu d'avoir un raccourci clavier.

J'ai trouvé une solution différente sur le marché qui effectue exactement la réduction et l'expansion de toutes les régions du fichier actuellement ouvert avec des raccourcis clavier: Réduire la région

Depuis la page d'extension:

Les raccourcis clavier par défaut sont (Ctrl + R, Ctrl + Num +) et (Ctrl + R, Ctrl + Num-). Peut être modifié dans Outils-> Options-> Environnement-> Clavier.

la chronique
la source
Merci pour cette super info! Comme je n'utilise pas de tâches rapides pour beaucoup d'autre, je pourrais simplement passer à cette extension. Testé et fonctionne (en VS 2017 et 2019).
ygoe
4

Je recommande d'utiliser l'extension gratuite Visual Studio «Extension Menees VS Tools pour Visual Studio». Recherchez-le simplement dans Outils -> Extensions et mises à jour dans Visual Studio. Une fois installé, il vous suffit d'appuyer sur Ctrl+ M+ Ket seules les régions seront réduites. Voici leur site Web https://marketplace.visualstudio.com/items?itemName=BillMenees.MeneesVSTools2013

Pour modifier les paramètres, regardez sous Outils -> Options -> Menees VS Tools -> General.

TheJonz
la source
-2

Sélectionnez Tout via Ctrl A, puisCtrl M M

ie Appuyez Mdeux fois tout en maintenantCtrl

user1979649
la source
Non désolé. Cela réduit tout, y compris les espaces de noms, les classes, les méthodes et les commentaires. Cela n'a pas été explicitement demandé.
ygoe