Visual Studio에서 Matching Brace로 이동 하시겠습니까?


544

Visual Studio 2008에는 닫는 괄호에서 여는 괄호로가는 방법이 있습니까? 나는 중괄호를 강조하는 것에 대해 상당한 양의 물건을 찾았지만 커서를 그것에 옮길 수는 없습니다.

(이 질문의 VB.NET 버전 : "If / End If"사이를 이동하기위한 키보드 단축키 )


1
엄청나게, 이것은 Mac Visual Studio의 .js 파일에 대해 작동하지 않는 것 같습니다 (2019). WTH ?!
Fattie

@Fattie, .cs 파일 용 Windows 10에서도 작동하지 않습니다. 나는 이것이 VS 2019에 대한 전반적 일이라고 확신하므로 stackoverflow.com/q/59183422/1739000
NH.

답변:


734

나는 이것을 당신을 위해 발견했다 : Visual Studio에서 중괄호 사이를 이동하십시오 .

중괄호 앞뒤에 커서를 놓고 (선택) CTRL+ 를 누릅니다 ]. 괄호 (), 괄호 [] 및 괄호 {}와 함께 작동합니다. 이제부터 Waldo는 어디에 있습니까? 그 중괄호를 찾을 수 있습니다.

MacOS에서는 CMD+ SHIFT+를 사용하십시오.\


52
참고로 노르웨이어 키보드에서 단축키는 Ctrl+입니다 Å(아래 답변에 언급 된 덴마크어 키보드와 동일).
율리우스

55
또한 VS 2010 및 독일어 키보드에서는 Ctrl+ ´입니다. 백 스페이스 바로 옆에있는 아포스트로피입니다.
Kjellski

11
벨기에 아제르바이잔에서는 ctrl+로 보입니다 ^. 이상하게도 [브라켓 ( AltGr입력 해야 함) 이있는 키에 있습니다 .
Nyerguds

50
그들 사이에서 텍스트를 선택하려면 CTRL +] + SHIFT 사용
ygaradon

15
이탈리아어 키보드에서 CTRL + ì
Pisu

110

CTRL+ ]를 사용 하여 둘 사이를 전환 하십시오 . 커서를 사용할 때 중괄호 중 하나에 커서를 놓습니다.


107

Visual Studio 2008을 사용 하며이 바로 가기를 원하는 것을 사용자 지정할 수 있습니다.

메뉴 도구 -> 옵션 -> 환경 -> 키보드를 클릭하십시오 . 그런 다음 Edit.GotoBrace찾으십시오 .

현재 어떤 키 조합이 할당되어 있는지 알려줍니다. 내가 생각하는 당신이 원하는 경우이를 변경할 수 있지만 경우는 유용 Ctrl+가 ]작동하지 않습니다.


3
이것은 다른 언어의 키보드에 대한 키 바인딩을 찾는 데 매우 유용합니다.
Afonso Matos

예, 키보드가 다르거 나 기본 바로 가기가 제거 된 경우 항상 명령 이름으로 명령 질문에 응답해야합니다. 또한 Ctrl. [something]을 Edit.GotoBrace에 매핑하면 Edit.GotoBraceExtend를 확인하십시오. Ctrl + Shift + [something]을 Edit.GotoBraceExtend에 매핑하고 싶을 것입니다.
hsandt

1
이것은 VS 2017에서 전혀 설정되지 않았기 때문에 나에게 유용했습니다.
Mmm

26

참고 : #if / #elif / #endif 일치에도 작동합니다. 캐럿이에 있어야합니다 #.


22

어떤 이유로 든 이것이 작동하지 않으면 키보드 바인딩이 엉망이되었을 수 있습니다 (제대로 작동하지 않음). 그래도 바인딩을 쉽게 쉽게 다시 활성화 할 수 있습니다. 적어도 생각했습니다.

나는이 절차를 시도했다 :

  • 메뉴 도구 -> 옵션 -> 환경 -> 키보드로 이동하십시오.
  • 스크롤하거나 Edit 명령을 검색하십시오.
  • 원하는 바로 가기를 지정하십시오 (광산이 비어 있으므로 CTRL   +를 넣습니다 ])
  • "지정 버튼"을 클릭하십시오

나는 그것을 시도했지만 여전히 작동하지 않았다. Visual Studio를 다시 시작했는데 여전히 작동하지 않습니다. .cs 파일에서만 작동했지만 .vb 파일 및 텍스트 파일에서 작동하고 모든 파일에서 잘 작동해야합니다!


2
VB 파일의 경우 CTRL+ SHIFT+ UP/DOWN(참조 : stackoverflow.com/a/7895072/740639 )
Walter Stabosz

@WalterStabosz 여기서 작동하지 않습니다 (VS2015 VB.NET).
Ivanzinho



12

스페인어 키보드에서는 CTRL+ ¿(또는 CTRL+ ¡)입니다.


2
VS2008 옵션 메뉴에 기록 된대로 10 분 동안 WTF를 발견했습니다. 감사!
로마 Rdgz

11

완전성을 위해 스웨덴어 키보드에서는 CTRL + å 입니다.

또한 논리적이지만 CTRL + shift+ å (자본 Å의 경우)를 언급 할 가치가 있으며 중괄호 안의 모든 항목을 선택하고 일치하는 항목으로 이동합니다.




10

내 포르투갈어 키보드에서와 SO EN VS, 그것의와 CTRL+ «매칭 중괄호로 이동하고 CTRL+ SHIFT+ «당신이 내부 코드를 선택하려는 경우.


9

이탈리아어 키보드에서는 CTRL+ ^입니다.


9

pt-BR (브라질 포르투갈어) 키보드에서는 실제로 CTRL+ [입니다.






6

도구> 옵션> 환경> 글꼴 및 색상으로 이동하여 "중괄호 일치 (직사각형)"를 선택한 다음 "항목 배경"을 노란색으로 변경하십시오. 이것은 C # 괄호 () {} 및 []에서 작동했습니다.


그렇습니다
Catto

나처럼 어두운 테마가 있다면 노랑 대신 녹청이 브래킷 자체를 더 잘 볼 수 있습니다.
보라

5

설명서 에서 볼 수있는 Visual Studio Code의 경우 Ctrl+ Shift+를 사용하십시오 \.

설정은 다음에서 찾을 수 있습니다.

파일 / 환경 설정 / 키보드 단축키

Visual Studio Code 1.8.0을 사용하고 있습니다. 참고 Visual Studio Code는 다국어 키보드에서 다르게 작동 할 수 있습니다 ( 이 답변 에서 볼 수 있듯이 독일어 키보드 )

이것이 누군가를 돕기를 바랍니다.


5

모든 사람에게 도움이되는 세부 정보 (Linux / Win / Mac)

바로 가기 키 메뉴 / 편집기의 명령에 editor.action.jumpToBracket원하는대로 설정할 수 있습니다. editor.action.selectToBracket기본적으로 바로 가기가없는 전화가 있습니다 (적어도 Mac에서는).

기타.

Mac editor.action.jumpToBracket에서는 Cmd+ Shift+ 로 시작하여 다른 사람들의 말과 일치 \ 하도록 Ctrl+ ]로 변경했습니다 . Ctrl+ Shift+ ]를 사용 하여 "선택 항목을 일치하는 대괄호로 확장" 할 수 있기를 바랍니다 . 그것이 위의 세부 사항을 발견하게하는 이유입니다. 나는 + +로 설정 editor.action.selectToBracket하고 내가 원하는 행동을 정확하게 얻었습니다.CtrlShift]



4

약간 관련이 있지만 HTML 태그의 경우 : (내장 솔루션이 없기 때문에 Ctrl+ J는 HTML 태그에서 작동하지 않습니다 :)

여기에 초점을 맞추는 것을 포함하여 내가 만든 매크로의 대답이 있습니다 (토글).

데모는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

그리고 여기 코드가 있습니다. 즐겨!

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics
Imports System.Windows.Forms

Public Module Module2
    Sub beginToEnd()

        'Place the cursor somewhere in the beginning tag, run the macro, to select from beginning to end tag

        DTE.ActiveDocument.Selection.SelectLine()
        Dim objSel As TextSelection = DTE.ActiveDocument.Selection
        Dim topPoint As TextPoint = objSel.TopPoint
        Dim lTopLine As Long = topPoint.Line
        objSel.GotoLine(lTopLine, False)
        '  DTE.ActiveDocument.Selection.StartOfLine()
        DTE.ActiveDocument.Selection.SelectLine()
        Dim line1 As String = DTE.ActiveDocument.Selection.Text()

        If InStr(line1, "/") Then

            ' MsgBox(line1)
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
            DTE.ActiveDocument.Selection.EndOfLine()
            DTE.ActiveDocument.Selection.StartOfLine(vsStartOfLineOptions.vsStartOfLineOptionsFirstText, True)
            objSel.GotoLine(lTopLine, False)
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
        Else
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
            DTE.ActiveDocument.Selection.EndOfLine(False)
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
        End If

        DTE.ActiveDocument.Selection.SelectLine()
        Dim line2 As String = DTE.ActiveDocument.Selection.Text()
        Dim objSel3 As TextSelection = DTE.ActiveDocument.Selection
        Dim topPoint3 As TextPoint = objSel3.TopPoint
        Dim lTopLine3 As Long = topPoint3.Line
        objSel.GotoLine(lTopLine3, False)
        DTE.ActiveDocument.Selection.StartOfLine(vsStartOfLineOptions.vsStartOfLineOptionsFirstText, False)
    End Sub
End Module

<Control> +]의 표준 미국 매핑은 HTML 및 CSS에서도 작동합니다. 두 태그 모두 강조 표시됩니다.
Paul Gorbas

3

독일어 키보드의 Visual Studio Code에서 ctrl+ shift+^

그러나 올바른 확장자를 가진 파일을 열어야합니다. 예를 들어 저장되지 않은 새 파일에서는 작동하지 않습니다.


3

독일어 키보드에서는 ctrl+ shift+ ^입니다.


1
내 프랑스어 키보드에서 이와 같이 작동합니다!
Sylvain P.

Visual Studio 2019 Windows \ German에서 다음을 발견했습니다. [Cntrl] + [´]
Mong Zhu


2

VS2012 스페인어 (스페인) 키보드에있는 Ctrl+는 ¡@Keith에 의해 명시된 바와 같이하지만, 당신이 사용하는 경우 Ctrl+ ¿(로 입력 Ctrl+Shift +¡ )를 사용하면 Matching Brace로 이동하고 두 중괄호 안에있는 모든 코드를 선택하면 다시 다른 버팀대.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.