代码之家  ›  专栏  ›  技术社区  ›  nikib3ro

HTML键盘快捷方式中的匹配标记

  •  35
  • nikib3ro  · 技术社区  · 14 年前

    在VisualStudio(2008)中有没有一个快捷方式允许我跳转到匹配的HTML标记。。。当您在“代码”视图中时,是否像CTRL+]那样匹配大括号?

    例子:

    <table>
      <tr>
        <td>
        </td>
      </tr>
    </table|>
    

    光标在结束表标记上,我想按CTRL+]这样的键跳转到开始表标记。

    有什么想法吗?

    7 回复  |  直到 13 年前
        1
  •  5
  •   Royi Namir    10 年前

    好的,下面是我创建的宏的答案,它会执行(切换)操作,包括转到焦点:

    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 cursor somewhere in beginning tag, run 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
    
        2
  •  64
  •   Hulk1991 moinudin    11 年前

    如果您想开始匹配HTML标记,那么请执行以下步骤。

    1. Ctrl键 + M [折叠整个标记]
    2. 键[在开始标记前将光标放置在]
    3. Ctrl键 + M +

    如果你想去结束匹配的HTML标签,然后按照下面的步骤。

    1. 将光标放在开始匹配的HTML标记处。
    2. Ctrl键 + M + M
    3. 终点
    4. M
        3
  •  13
  •   Steve Cooper    8 年前

    在Visual Studio中 2015

    • ctrl+] 从开始标记跳到结束标记。
    • ctrl+shift+]

    不过,它看起来相当敏感,要选择整个标记及其内容,您需要从 < 打开标签。

        4
  •  8
  •   nikib3ro    14 年前

    之后 http://www.jetbrains.com/resharper/ 已安装用于匹配大括号的CTRL+]在HTML编辑模式下工作。。。

        5
  •  3
  •   Dan B Steve Cooper    10 年前

    它不是一个键盘快捷键,但它确实提供了您正在寻找的选择行为,并且您不需要再通过眼睛匹配标记。

    (编辑)如果将鼠标悬停在面包屑上,将看到一个下拉箭头。单击向下箭头并单击“选择标记内容”。然后你可以上下滚动直到你找到没有突出显示的文本。

        6
  •  2
  •   Jorge Vargas    14 年前

    当您使用XML编辑器打开HTML文件时(右键单击->打开方式-&燃气轮机;XML编辑器)。

        7
  •  1
  •   JuliaJ    5 年前

    我正在Windows10中使用Visual Studio代码。当前版本为1.34.0。要跳转到匹配的html标记,我通过File设置它->首选项->键盘快捷键。寻找“匹配标签:跳转到匹配标签”。。当你把它悬停在+上时,我设置了keybinding Shift + ] .. 您可以设置自己的,只要它不用于其他功能。所以现在我可以跳转到结束的HTML标记。希望这有帮助。

        8
  •  1
  •   Ritik Kamboj    4 年前
    • 我的解决方案:

    ctrl+shift+p 这将打开命令托盘,然后写入 emmet:go to matching pair 搜索栏 .

    点击 setting ctrl+shift+/ 然后按 输入。 这绝对管用。

        9
  •  0
  •   John Kugelman Michael Hodel    12 年前

    不,您不能在VisualStudio2010中这样做,不能在当前版本或旧版本中这样做。也许下一个版本会有这个功能。

        10
  •  0
  •   Ihor    5 年前

    VSCode Highlight Matching Tag

    安装后,您可以使用命令调色板(Win/Linux: Ctrl+Shift+P ; 雨衣: Cmd+Shift+P )和搜索命令名: Jump to matching tag . 或者为该命令配置键盘快捷键。下面是我的密钥绑定示例 shift+5 就我而言:

      {
        "key": "shift+5",
        "command": "highlight-matching-tag.jumpToMatchingTag",
        "when": "editorLangId == html"
      }