3
我知道你可以按Ctrl +移+\匹配的括號之間跳轉。我希望將光標放在括號後面,並儘可能簡單地刪除該括號及其匹配的一個。如何刪除VS代碼中的匹配括號?
由於與Alt鍵 +點擊你可以有多個選擇,我一直在尋找類似的東西:按Ctrl + 移 + Alt鍵 + \用於放置在匹配支架另一光標,然後用一個單獨的退格鍵刪除這兩個文件。
刪除一對匹配的括號/括號是否有任何快捷方式?
我知道你可以按Ctrl +移+\匹配的括號之間跳轉。我希望將光標放在括號後面,並儘可能簡單地刪除該括號及其匹配的一個。如何刪除VS代碼中的匹配括號?
由於與Alt鍵 +點擊你可以有多個選擇,我一直在尋找類似的東西:按Ctrl + 移 + Alt鍵 + \用於放置在匹配支架另一光標,然後用一個單獨的退格鍵刪除這兩個文件。
刪除一對匹配的括號/括號是否有任何快捷方式?
這適用於(){}和[]
Sub DeleteMatchingBrace()
Dim sel As TextSelection = DTE.ActiveDocument.Selection
Dim ap As VirtualPoint = sel.ActivePoint
If (sel.Text() <> "") Then Exit Sub
' reposition
DTE.ExecuteCommand("Edit.GoToBrace") : DTE.ExecuteCommand("Edit.GoToBrace")
If (ap.DisplayColumn <= ap.LineLength) Then sel.CharRight(True)
Dim c As String = sel.Text
Dim isRight As Boolean = False
If (c <> "(" And c <> "[" And c <> "{") Then
sel.CharLeft(True, 1 + IIf(c = "", 0, 1))
c = sel.Text
sel.CharRight()
If (c <> ")" And c <> "]" And c <> "}") Then Exit Sub
isRight = True
End If
Dim line = ap.Line
Dim pos = ap.DisplayColumn
DTE.ExecuteCommand("Edit.GoToBrace")
If (isRight) Then sel.CharRight(True) Else sel.CharLeft(True)
sel.Text = ""
If (isRight And line = ap.Line) Then pos = pos - 1
sel.MoveToDisplayColumn(line, pos)
sel.CharLeft(True)
sel.Text = ""
End Sub
然後一個快捷方式添加到該宏VS
如何將它添加到VS代碼? – Guimo
如果你想要,你可以創建一個專門爲那個或一個方法的類。 –
但該語言是Visual Basic,對不對?請注意,我希望它在Visual Studio Code中工作,而不是在Visual Studio中,也許你在考慮後者(如果沒有,我完全失去了)。 – Guimo