[visual-studio] 모두 지우기를위한 Visual Studio 즉시 창 명령

Visual Studio에서 즉시 창을 지우는 명령이 있습니까?

마우스 오른쪽 버튼을 클릭하여 메뉴를 선택하는 것이 싫습니다. “cls”등을 입력하는 것이 좋습니다.



답변

직접 실행 창을 지우려면 >cls에 미리 정의 된 명령 별칭 인 을 사용할 수 있습니다 >Edit.ClearAll.

MSDN 문서 에는 미리 정의 된 모든 별칭이 나열되어 있으며 직접 정의 할 수도 있습니다. (VS 2010 및 이전 버전의 경우, 사용자 정의 별칭 불구하고 별도의 문서에 설명되어 있습니다.)를 통해 스캔, 심지어 MS-DOS DEBUG.EXE에서 자신의 뿌리를 (해야 할 수도 있습니다 일부는 이들의 전체 슬루가있다 특히 >d, >g, >p, >q, 그리고> t떠오르십시오).


또한 두 개의 키만 누르면됩니다. 컨텍스트 메뉴> 모두 지우기는 동일한 명령을 호출하며 키보드를 사용하여 탐색 할 수 있습니다. 직접 실행 창에서는 누를 수 있습니다 context-menu, L.

키보드에 context-menu 가없는 경우 ( right-alt과 사이에 있는 right-ctrl ) 대신 shift+ F10를 사용할 수 있습니다 .


답변

>cls

나를 위해 그것을하는 것 같습니다.


답변

  1. 직접 실행 창에 마우스 커서를 놓습니다.
  2. 마우스 오른쪽 버튼을 클릭하고 “모두 지우기”를 선택합니다.

답변

그것을 발견…

“> Edit.ClearAll”

또는

“> cls”


답변

다음은 런타임에 수행하는 방법입니다.

  1. 애플리케이션에서 EnvDTE dll을 참조하십시오.

  2. 필요에 따라이 함수를 만들고 사용합니다.

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 참조를 추가해야 함) 이 시도 작품을하지 않으면 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! */ }

endif