Visual Studio で即時ウィンドウをクリアするコマンドはありますか?
そこで右クリック メニューを表示するためにマウスをつかむ必要はありません。「cls」などと入力するだけです。
Visual Studio で即時ウィンドウをクリアするコマンドはありますか?
そこで右クリック メニューを表示するためにマウスをつかむ必要はありません。「cls」などと入力するだけです。
即時ウィンドウをクリアするには、 を使用できます>cls
。これは、 の定義済みコマンド エイリアスです>Edit.ClearAll
。
MSDN の記事には、定義済みのすべてのエイリアスが一覧表示されており、独自のエイリアスを定義することもできます。(ただし、VS 2010 以前では、カスタム エイリアスについては別の記事で説明されています。) ざっと見てみると、大量のエイリアスがあり、そのうちのいくつかは、MS-DOS DEBUG.EXE (具体的>d
に>g
は、、、、、と >頭に浮かびます)。>p
>q
t
また、押すキーは 2 つだけなので、注目に値します: コンテキスト メニュー > [すべてクリア] は同じコマンドを呼び出し、キーボードを使用してナビゲートできます。Context Menuしたがって、イミディエイト ウィンドウでは、 、を押すことができますL。
キーボードにキー ( と の間のcontext-menu
キー)がない場合は、代わりに+を使用できます。Right AltRight CtrlShiftF10
>cls
私のためにそれをしているようです。
それを見つけた...
">Edit.ClearAll"
また
">cls"
実行時にそれを行う方法は次のとおりです。
アプリケーションで EnvDTE dll を参照します。
必要に応じてこの関数を作成して使用してください。
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
Visual Studio 2012 の場合、次を使用します。
Public Sub ClearImmediateWindow()
Dim dte As EnvDTE80.DTE2 = Marshal.GetActiveObject("VisualStudio.DTE.11.0")
dte.Windows.Item("Immediate Window").Activate() 'Activate Immediate Window
dte.ExecuteCommand("Edit.SelectAll")
dte.ExecuteCommand("Edit.ClearAll")
Marshal.ReleaseComObject(dte)
End Sub
コードから即時ウィンドウを自動的にクリアします (プロジェクトに DTE 参照を追加する必要があります)。うまくいかない場合は、Visual Studio のバージョンに応じてVisualStudio.DTE.8.0
,を試してください。VisualStudio.DTE.9.0
...
最後の回答をそのまま使用しましたが、それがどこにあったかに焦点を当てたいと思っていましたが、うまくいきました。これは、わずかに改善された C# バージョンです。構成スイッチで有効にします。
#if DEBUG
if (GetIni("Debug", "ClearImmediateWindow", true)) {
try {
var dte = (EnvDTE.DTE) Marshal.GetActiveObject("VisualStudio.DTE.15.0");
var me = dte.ActiveWindow;
dte.Windows.Item("Immediate Window").Activate();
dte.ExecuteCommand("Edit.ClearAll");
me.Activate();
}
catch { /* Meh! */ }