Frage

Ein Kollege von mir verwendet ein Gräuel Texteditor, dass routinemäßig verlässt Kommentarblöcke der ganzen Code. Unnötig zu sagen, das macht mich ziemlich verrückt. Die Kommentarblöcke wie folgt aussehen:

/* EasyCODE ) */
/* EasyCODE ( 0 
WndProc */
/* EasyCODE F */

d. sie alle mit EasyCODE beginnen und die meisten von ihnen mehrere Zeilen erstrecken. Zum Glück kann VS2010 Kommentarblocks kollabiert, so dass ich nicht wird zu sehen, wie sie die ganze Zeit.

Gibt es eine Möglichkeit, das zu automatisieren? Ein Weg, um automatisch alle diese schrecklichen EasyCODE Blöcke zusammenbrechen würde Godsent!

War es hilfreich?

Lösung

Hier ist ein Makro, das es tun soll. Es gibt einige weirder Easycode Kommentare, dass es nicht fangen, aber es tut meist der Trick.

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a ' remove for VS2008
Imports EnvDTE100 ' remove for VS2008
Imports System.Diagnostics
Imports System.Collections.Generic

Public Module HideEasyCODEComments
    ''
    '' Collapse all EasyCODE comment blocks
    ''
    Sub ToggleSummaryCommentsOutlineExpansion()
        If (DTE.ActiveDocument Is Nothing) Then
            Exit Sub
        End If

        If (DTE.UndoContext.IsOpen) Then
            DTE.UndoContext.Close()
        End If

        DTE.SuppressUI = True

        Try
            DTE.UndoContext.Open("ToggleSummaryCommentsOutline")
        Catch
        End Try

        Dim objSelection As TextSelection = DTE.ActiveDocument.Selection
        Dim line As Integer = objSelection.CurrentLine
        objSelection.StartOfDocument()

        ' find all EasyCODE blocks
        While objSelection.FindText("^.*\/\* EasyCODE.*((\n.*\*\/)|(\n.*\/\*.*)|(\n\/\/.*))*", vsFindOptions.vsFindOptionsRegularExpression)
            DTE.ExecuteCommand("Edit.HideSelection")
        End While
        objSelection.StartOfDocument()
        objSelection.GotoLine(line)

        DTE.UndoContext.Close()
        DTE.SuppressUI = False
    End Sub

End Module

Erstellen Sie ein neues Makro in der Makro-IDE (Tools-> Makros-> Makro IDE), fügen Sie den obigen Code hinein, dann weisen Sie eine Tastenkombination, um es (Tools-> Optionen-> Umfeld-> Tastatur, suchen Sie nach es in der Listbox). Drücken Sie die Tastenkombination und alle Easycode Kommentare verschwunden sein.

Haben Sie Spaß!

Andere Tipps

Sie können es nicht automatisch. Sie können jedoch ein Stück Code wählen, und wählen Sie aus dem Kontextmenü Outlining / Hide Auswahl (Strg + M Strg + H). So die hässlichen Kommentare auswählen und es auf diese Weise tun.

Genommen von hier .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top