visual studio - studio - Coincidencia de etiqueta en el atajo de teclado HTML
visual studio code html (7)
¿Existe un acceso directo en Visual Studio (2008) que me permita pasar a la etiqueta HTML coincidente ... como lo hace CTRL +] para unir llaves cuando estás en la vista de código?
Ejemplo:
<table> <tr> <td> </td> </tr> </table|>
El cursor está en la etiqueta de cierre de la tabla y me gustaría presionar algo como CTRL +] para saltar a la etiqueta de la tabla de apertura.
¿Algunas ideas?
Busco y no pude encontrar el atajo directo. Pero puedes usar ...
Si desea comenzar a emparejar la etiqueta HTML, siga los pasos a continuación.
- Coloque el cursor al finalizar la coincidencia de la etiqueta HTML.
- Presiona Ctrl + M + M [Para contraer toda la etiqueta]
- Presione la tecla de inicio [para colocar el cursor antes de comenzar la etiqueta]
- Presiona Ctrl + M + M [Para expandir toda la etiqueta]
Si desea finalizar la coincidencia de la etiqueta HTML, siga los pasos a continuación.
- Coloque el cursor al comenzar a hacer coincidir la etiqueta HTML.
- Presiona Ctrl + M + M [Para contraer toda la etiqueta]
- Presione la tecla Finalizar [Para colocar el cursor al lado de la etiqueta de finalización]
- Presiona Ctrl + M + M [Para expandir toda la etiqueta]
Después de que http://www.jetbrains.com/resharper/ esté instalado CTRL +] para que coincidan las llaves, funciona en el modo de edición HTML ...
En Visual Studio 2012, en la vista ''fuente'', justo en la parte inferior de la ventana del documento, hay una descripción de estilo de ruta de navegación del DOM. Puede hacer clic en cualquier punto para seleccionar.
No es un atajo de teclado, pero sí te da el comportamiento de selección que estás buscando, y ya no necesitas unir las etiquetas por ojo.
(Editar) Si pasa el mouse sobre la ruta de navegación, verá una flecha desplegable. Haga clic en la flecha hacia abajo y haga clic en "Seleccionar contenido de etiqueta". Luego puede desplazarse hacia arriba o hacia abajo hasta que encuentre texto que no esté resaltado.
En Visual Studio 2015 , ahora es compatible con las combinaciones de teclas de coincidencia de corchetes habituales;
-
ctrl+]
salta desde la etiqueta de inicio hasta la etiqueta de fin. -
ctrl+shift+]
selecciona todo entre la etiqueta de inicio y la etiqueta de finalización.
Sin embargo, parece bastante sensible, y para seleccionar una etiqueta completa y sus contenidos, debe comenzar justo en el <
que abre la etiqueta.
Esto funciona totalmente cuando abre un archivo HTML con el Editor XML (clic derecho -> Abrir con ... -> Editor XML).
No, no puede hacer eso en Visual Studio 2010, no en la versión actual o en versiones anteriores. Tal vez la próxima versión tendrá esta característica.
Ok aquí está la respuesta como macro que he creado, que lo hace (alternar), incluyendo ir a foco:
Aquí está la demostración:
Y aquí está el código, ¡disfrútalo!
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