2013-11-14 9 views
5

Hat jemand ein Skript oder Snippet für Visual Studio, das automatisch Kommentar-Header für Funktionen oder Klassen entfernt?Wie kann ich das Entfernen von XML-Dokumentationskommentaren automatisieren?

Ich möchte Kommentare wie entfernen.

/// <summary> 
/// 
/// </summary> 

Eigentlich alles, was wirklich helfen würde beginnen Kommentare mit /// entfernt. Wir haben Projekte mit einer großen Menge an GhostDoc-Kommentaren, die wirklich nur den Code verbirgt und wir verwenden nicht die Dokumentenausgabe. Es ist eine mühsame Arbeit für uns, diese Kommentare zu entfernen.

Antwort

3

öffnen Quick Replace (CTRL + H) in Visual Studio und ersetzen :b+///.*\n mit einem leeren String (stellen Sie sicher, Use gesetzt zu Regular expressions). Dadurch sollten Sie die Kommentare im angegebenen Bereich loswerden können.

+0

Das funktioniert einfach super! Die Regex-Anweisung wurde in '[\ t] * ///. * \ N' geändert, sodass sie mit führenden Leerzeichen funktioniert. – Poxet

0

Sie könnten Suchen und Ersetzen in Dateien in Notepad ++ (oder einem anderen erweiterten Texteditor) mit Regex verwenden.

0

Sie können nur suchen und durch eine leere Zeichenfolge im Visual Studio ersetzen. Sie haben bereits die Zeichenfolgen, die Sie loswerden möchten. Sie können die Codedateien auch als Text analysieren und alle Zeilen entfernen, die mit einem Kommentarzeichen beginnen.

2

Sie können diese Regex \/\/\/.*<summary>.*<\/summary> mit diesen Optionen gms verwenden, um die Zeichenfolge abzustimmen. Sie können das durch nichts ersetzen. Dies kann in Notepad ++ oder Visual Studio erfolgen.

Hier ist eine Regex 101, um es zu beweisen.

1

Sie können Python (mit regexps, wenn Sie möchten):

#! /usr/bin/python 
import sys 
if len(sys.argv) < 2: 
    print("Usage: removelines <source-file>") 
    exit(0) 
InFileName = sys.argv[1] 
Out = open(InFileName + ".out", "w"); 
for Line in open(InFileName).readlines(): 
    if Line.lstrip().find("///") == 0: 
     print("Skipping line", Line) 
     continue 
    Out.write(Line) 
Verwandte Themen