去匹配支架在Visual Studio?

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

(VB。NET版本的这个问题:键盘快捷键在“;如果/结束如果”之间跳转;)

193771 次浏览

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

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

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

用上面的快捷键,也可以按住转变进行选择。

在MacOS上,使用CMD + 转变 +

在我的丹麦键盘上是CTRL + 一个

在我的葡萄牙语键盘上,所以用EN VS,它是CTRL + «导航到匹配的大括号和CTRL + 转变 + «,如果你打算选择内部代码。

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

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

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

在德语键盘上是Ctrl + ´

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

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

点击菜单工具 -> 选项 -> 环境 -> 键盘。然后寻找编辑。GotoBrace

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

在西班牙语键盘上是CTRL + 他们的(或CTRL + ¡)。

在我的法语键盘上,是CTRL +

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

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

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

我尝试了这个方法:

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

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

为了完整起见,在瑞典键盘上是CTRL + 一个

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

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

在瑞士-法国键盘上:使用CTRL + 转变 +

在西班牙语(西班牙)键盘上,VS2012是Ctrl + ¡,正如@Keith所说,但如果你使用Ctrl + 他们的(键入为Ctrl + 转变 + ¡),然后去匹配大括号+选择两个大括号内的所有代码,然后你不能再去另一个大括号。

在匈牙利键盘上是Ctrl + u

Ctrl + 转变 + 将选择所有的文本。

有点相关,但对于HTML标签:(因为没有内置的解决方案,Ctrl + J不适用于HTML标签:)

下面是答案,作为一个宏,我已经建立了它(切换),包括去焦点:

下面是演示:

Enter image description here

这是代码。享受吧!

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+转变+

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

对于Visual Studio代码(如他们的文档所示),使用Ctrl+转变+

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

文件/参数/键盘快捷键

我使用的是Visual Studio Code 1.8.0。注意:Visual Studio Code对于国际键盘可能表现不同(如这个答案是:德语键盘所示)

希望这能帮助到一些人。

在Mac上使用命令+转变+

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

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

键盘快捷菜单/编辑器中的命令是editor.action.jumpToBracket,你可以设置它为任何你喜欢的。还有一个叫editor.action.selectToBracket的默认没有快捷键(至少在Mac上)。

等。

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

2021年6月

在运行Windows 10的Mac上,Visual Studio 2019和c#并行,并使用美国键盘,对我有效的解决方案是在" 工具 选项 键盘 编辑。GoToBrace < / p >

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

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