He estado usando CodeMaid para esto, pero es muy lento con archivos de gran tamaño.Para replicar el comportamiento de CodeMaid con una macro, He combinado soluciones de Ray Vega y javs' en lo siguiente:
Sub JoinLines()
DTE.ActiveDocument.Selection.EndOfLine()
DTE.ExecuteCommand("Edit.WordDeleteToEnd")
DTE.ActiveDocument.Selection.Insert(" ")
End Sub
Nota: Como las macros se han caído en VS2013, estoy usando la extensión de Visual comandante, por lo que la macro realmente se parece más a:
Imports EnvDTE
Imports EnvDTE80
Imports Microsoft.VisualBasic
Public Class C
Implements VisualCommanderExt.ICommand
Sub Run(DTE As EnvDTE80.DTE2, package As Microsoft.VisualStudio.Shell.Package) Implements VisualCommanderExt.ICommand.Run
DTE.ActiveDocument.Selection.EndOfLine()
DTE.ExecuteCommand("Edit.WordDeleteToEnd")
DTE.ActiveDocument.Selection.Insert(" ")
End Sub
End Class
No voy a hacer el trabajo de campo por ti, pero podrías ver cómo VsVim implementa el operador 'J' para unir líneas. –
¿Qué quieres decir? Eliminar al principio/final de las líneas unirá dos líneas. ¿Qué estás pensando en hacer? –
Eso es cuando en la línea X en cualquier lugar, presiono una tecla rápida una vez, y luego la línea X + 1 se une a la línea X (eliminando CR entre ellos por así decirlo) – Greg