visual studio objetos multilinea linea generar documentar documentacion dinamicos configurar comment comentario codigo code ajuste vb.net visual-studio xml-comments autocommenting

vb.net - objetos - ¿Cómo personalizo el texto de comentarios automáticos en Visual Studio?



objetos dinamicos c# (4)

Creo que podrías usar una herramienta como dijo Dgarcia pero intenta elegir una que haga que el control de la versión se inserte, Personalmente no soy un gran fan de mantener la "historia" o la pista del proyecto usando comentarios en el código.

Si te gusta de esa manera, puedes crear tu propia versión personalizada del fragmento, esto es más fácil si usas una herramienta como Snippy

Copia este archivo a tu

Mis documentos / Visual Studio 2005 / Fragmentos de código [Idioma] / My Code Snippets /

Solo tenga cuidado de cambiar el archivo si va a usarlo en VB.NET

Espero que esto ayude

Cuando escribo el disparador la función de comentario automático en Visual Studio (escribiendo "'''' ''" o "///"), la mayoría de los comentarios XML aparecen como me gustan. Sin embargo, normalmente agrego la etiqueta de historial a la documentación para poder rastrear y los cambios que se realizan en el método a lo largo del tiempo.

¿Hay alguna forma de personalizar la función de comentarios automáticos para que agregue la etiqueta del historial y, potencialmente, un nombre genérico - Fecha - Cambiar el texto del marcador de posición?


Sugeriría usar GhostDoc . Genera comentarios muy inteligentes utilizando /// en función de los nombres y parámetros de tu método. Además, es completamente personalizable.


Solo como seguimiento del comentario a Olivier. Aquí hay una copia de la macro ahora, busque la sección "Hacer historial" para ver dónde inserté el código.

''''// InsertDocComments goes through the current document using the VS Code Model ''''// to add documentation style comments to each function. '''' Sub InsertDocComments() Dim projectItem As ProjectItem Dim fileCodeModel As FileCodeModel Dim codeElement As CodeElement Dim codeElementType As CodeType Dim editPoint As EditPoint Dim commentStart As String projectItem = DTE.ActiveDocument.ProjectItem fileCodeModel = projectItem.FileCodeModel codeElement = fileCodeModel.CodeElements.Item(1) ''''// For the sample, don''t bother recursively descending all code like ''''// the OutlineCode sample does. Just get a first CodeType in the ''''// file. If (TypeOf codeElement Is CodeNamespace) Then codeElement = codeElement.members.item(1) End If If (TypeOf codeElement Is CodeType) Then codeElementType = CType(codeElement, CodeType) Else Throw New Exception("Didn''t find a type definition as first thing in file or find a namespace as the first thing with a type inside the namespace.") End If editPoint = codeElementType.GetStartPoint(vsCMPart.vsCMPartHeader).CreateEditPoint() ''''// Make doc comment start. commentStart = LineOrientedCommentStart() If (commentStart.Length = 2) Then commentStart = commentStart & commentStart.Chars(1) & " " ElseIf (commentStart.Length = 1) Then commentStart = commentStart & commentStart.Chars(0) & commentStart.Chars(0) & " " End If ''''// Make this atomically undo''able. Use Try...Finally to ensure Undo ''''// Context is close. Try DTE.UndoContext.Open("Insert Doc Comments") ''''// Iterate over code elements emitting doc comments for functions. For Each codeElement In codeElementType.Members If (codeElement.Kind = vsCMElement.vsCMElementFunction) Then ''''// Get Params. Dim parameters As CodeElements Dim codeFunction As CodeFunction Dim codeElement2 As CodeElement Dim codeParameter As CodeParameter codeFunction = codeElement editPoint.MoveToPoint(codeFunction.GetStartPoint(vsCMPart.vsCMPartHeader)) ''''//editPoint.LineUp() parameters = codeFunction.Parameters ''''// Do comment. editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.LineUp() editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "<summary>") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "Summary of " & codeElement.Name & ".") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "</summary>") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart) For Each codeElement2 In parameters codeParameter = codeElement2 editPoint.Insert("<param name=" & codeParameter.Name & "></param>") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart) Next ''''//param ''''// Do history tag. editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.LineUp() editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "<history>") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "Name MM/DD/YYYY [Created]") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart & "</history>") editPoint.Insert(Microsoft.VisualBasic.Constants.vbCrLf) editPoint.Insert(Microsoft.VisualBasic.Constants.vbTab & commentStart) End If ''''//we have a function Next ''''//code elt member Finally DTE.UndoContext.Close() End Try End Sub

Por alguna razón, después de guardar, reconstruir y reiniciar Visual Studio, no obtengo la etiqueta del historial. ¿Alguien puede ver algo aquí que me falta?


vb usa un archivo xml para cargar los defults. Es VBXMLDoc.xml y depende de qué versión esté ejecutando en cuanto a la ubicación del archivo.