在Visual Studio 2008中是否有一种方法可以将结束大括号转换为开始大括号?我发现了大量关于突出显示大括号的内容,但没有关于将光标移到大括号上的内容。

(VB。这个问题的NET版本:键盘快捷键在“If/End If”之间跳转)


使用CTRL +]在它们之间切换。使用时将光标放在其中一个花括号上。


我为你找到了这个:在Visual Studio的括号之间跳转:

将光标放在大括号的前面或后面(由您选择),然后按CTRL +]。它适用于括号(),大括号[]和大括号{}。从现在开始你不需要玩沃尔多在哪?为了找到那个支架。

使用上述快捷键,也可以按住SHIFT键进行选择。

在MacOS上,使用CMD + SHIFT + \。


在我的丹麦键盘上是CTRL + Å。


在我的葡萄牙语键盘上,使用EN VS, CTRL +«导航到匹配的大括号,如果您打算选择内部代码,则CTRL + SHIFT +«。


注意:它也适用于#if / #elif / #endif匹配。插入符号必须在#上。


在我的斯洛文尼亚键盘上是ALT + Đ


在我的pt-BR(巴西葡萄牙语)键盘上,它实际上是CTRL +[。


在德语键盘上是Ctrl +´。


在我的荷兰(比利时)键盘上,它是CTRL + ^。


我使用Visual Studio 2008,你可以自定义你想要的快捷方式。

单击菜单工具->选项->环境->键盘。然后寻找Edit.GotoBrace。

这将告诉您当前分配的键组合是什么。我认为如果你愿意,你可以更改它,但如果Ctrl +]不起作用,它是有用的。


在西班牙键盘上是CTRL +¿(或CTRL +±)。


在我的法语键盘上,CTRL + ^。


在土耳其键盘上,它是Ctrl + ü。


选择工具>选项>环境>字体和颜色,选择“括号匹配(矩形)”,并更改“项目背景”为例如黄色。这适用于c#括号(){}和[]。


如果出于某种原因,这对你来说不工作,可能是某些东西打乱了你的键盘绑定(这对我来说不工作)。不过,你可以很容易地重新启用绑定-至少我是这么想的:

我尝试了这个方法:

进入菜单工具->选项->环境->键盘 滚动到或搜索“编辑”命令。GotoBrace 指定所需的快捷方式(我的快捷方式是空的,所以我输入CTRL +]) 请务必点击“分配按钮”。

我试过了,还是不行。我重新启动了Visual Studio,它仍然不能工作-好吧,它只工作于。cs文件,但我需要它工作于。vb文件和文本文件,以及…所有文件!


为了完整起见,在瑞典键盘上,它是CTRL + å。

另外,我认为这是合乎逻辑的,但值得一提的是CTRL + shift + å(对于大写Å),选择括号内的所有内容并转到匹配的内容。


在我的意大利语键盘上,CTRL + ^。


在瑞士法语键盘上:使用CTRL + SHIFT + ^


在西班牙语(西班牙)键盘上,VS2012是由@Keith表示的Ctrl +±,但如果你使用Ctrl +¿(键入为Ctrl + Shift +±),然后去匹配大括号+选择两个大括号内的所有代码,然后你不能再去另一个大括号。


在匈牙利键盘上是Ctrl + ú。


Ctrl + Shift +]将选中所有文本。


有点相关,但对于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

在德语键盘上的Visual Studio Code中是ctrl+shift+^

但是你必须用正确的扩展名打开一个文件——例如,它不能在新的未保存的文件中工作。


对于Visual Studio Code(见其文档),使用Ctrl+Shift+\。

设置可以在以下地址找到:

文件/参数/键盘快捷键

我使用的是Visual Studio Code 1.8.0。注意:对于国际键盘,Visual Studio Code的行为可能有所不同(参见这个回答re: German keyboard)

希望这能帮助到一些人。


在Mac上使用command+shift+\。

来源:对这个答案的评论:https://stackoverflow.com/a/37877082/3345085。 在Visual Studio Code版本1.10.2中测试。


能让每个人受益的细节(Linux/Win/Mac)

键盘快捷菜单/编辑器中的命令是editor.action. jumptobracket,你可以设置它为任何你喜欢的。还有一个叫做editor.action. selectto括号,默认情况下没有快捷方式(至少在Mac上)。

Etc.

在Mac编辑器中。action. jumptobracket以Cmd+Shift+\开头 我把它改为Ctrl+],以与其他人在这里说的一致。我这样做是希望我可以使用Ctrl+Shift+]来“扩展选择到匹配的括号”。这就是我发现上面细节的原因。我将editor.action. selectto括号设置为Ctrl+Shift+],得到了我想要的行为。


2021年6月

在运行Windows 10的Mac上,在Visual Studio 2019和c#的并行下,使用美国键盘,对我来说有效的解决方案是编辑快捷方式。 工具 选项 键盘 编辑。GoToBrace

在我的系统中,快捷键是空白的…

按下Ctl键和[键保存快捷方式