121 votes

Commande de fenêtre immédiate de Visual Studio pour Effacer tout

Existe-t-il une commande pour effacer la fenêtre immédiate dans Visual Studio ?

Je déteste avoir à saisir la souris pour un menu de clic droit à cet endroit - je préférerais simplement taper "cls" ou autre.

14 votes

Je n'avais pas réalisé qu'il y avait un menu de clic droit !

160voto

lc. Points 50297

Pour effacer la fenêtre immédiate, vous pouvez utiliser >cls qui est une valeur prédéfinie alias de commande à >Edit.ClearAll .

L'article de MSDN liste tous les alias prédéfinis et vous pouvez également définir les vôtres. (Pour VS 2010 et antérieurs, alias personnalisés sont cependant décrits dans un autre article). En les parcourant, on en trouve toute une série, dont certaines pourraient même avoir leurs racines dans le DEBUG.EXE de MS-DOS (spécifiquement >d , >g , >p , >q et > t me viennent à l'esprit).


A noter également, qu'il n'y a que deux touches à presser : Le menu contextuel > Tout effacer invoque la même commande et il est possible d'y naviguer à l'aide du clavier. Dans la fenêtre immédiate, vous pouvez appuyer sur context-menu , L .

Si vous n'avez pas de context-menu clé sur votre clavier (vous savez, celui entre right-alt et right-ctrl ), vous pouvez utiliser shift + F10 à la place.

2 votes

J'utilise normalement la touche contextuelle lorsque je suis au bureau, mais je travaille depuis quelques mois sur un ordinateur portable depuis le bureau d'un client, et je n'ai pas la touche contextuelle sur celui-ci. Cela m'a finalement dérangé suffisamment pour chercher une solution...

2 votes

Le site > est important. Je n'ai pas trouvé de moyen naturel de le rendre plus explicite dans la réponse. Voir aussi Fenêtre immédiate sur MSDN pour d'autres conseils utiles.

52voto

Martin Brown Points 8593
>cls 

semble le faire pour moi.

22voto

rossco78 Points 181
  1. Placez le curseur de la souris dans la fenêtre immédiate.
  2. Cliquez sur le bouton droit de la souris et sélectionnez "Effacer tout".

14voto

Scott Ivey Points 19577

L'a trouvé...

">Edit.ClearAll"

ou

">cls"

3voto

user1330634 Points 21

Voici comment le faire au moment de l'exécution :

  1. Référencez les dlls EnvDTE dans votre application.

  2. Créez et utilisez ensuite cette fonction si nécessaire.

    Public Sub ClearImmediateWindow() Try Dim vsWindowKindImmediateWindow As String = "{ECB7191A-597B-41F5-9843-03A4CF275DDE}" Try Dim obj As Object = System.Runtime.InteropServices.Marshal. GetActiveObject("VisualStudio.DTE.10.0") If obj IsNot Nothing Then Dim DTE2 As EnvDTE80.DTE2 = CType(obj, EnvDTE80.DTE2) For Each wndw As EnvDTE.Window In DTE2.Windows If wndw.ObjectKind = vsWindowKindImmediateWindow Then wndw.Activate() DTE2.ExecuteCommand("Edit.ClearAll") Exit For End If Next End If Catch comEx As COMException ' Not running from within the VS IDE? Catch ex As Exception Throw ex End Try Catch ex As Exception ' Handle this as you desire. End Try End Sub End Sub

0 votes

Cela ne fonctionne pas pour moi. L'erreur est : "Une exception de première chance de type 'System.Runtime.InteropServices.COMException' s'est produite dans mscorlib.dll" en récupérant l'objet de Marshal.

0 votes

Ma version de visual studio est 2012 donc j'ai changé VisualStudio.DTE.10.0 à VisualStudio.DTE.11.0 et ça a marché. J'ai également trouvé ici une syntaxe plus courte de la même réponse : http://stackoverflow.com/a/16873888/2721611

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X