Visual Studioで自動コメント機能のトリガーを入力すると(「'''」または「///」と入力して)、ほとんどのXMLコメントの詳細が表示されます。ただし、私は通常、履歴タグをドキュメントに追加して、時間の経過とともにメソッドに加えられた変更を追跡および変更できるようにします。
自動コメント機能をカスタマイズして、履歴タグを追加し、場合によっては一般的な名前-日付-プレースホルダーテキストを変更する方法はありますか?
Visual Studioで自動コメント機能のトリガーを入力すると(「'''」または「///」と入力して)、ほとんどのXMLコメントの詳細が表示されます。ただし、私は通常、履歴タグをドキュメントに追加して、時間の経過とともにメソッドに加えられた変更を追跡および変更できるようにします。
自動コメント機能をカスタマイズして、履歴タグを追加し、場合によっては一般的な名前-日付-プレースホルダーテキストを変更する方法はありますか?
GhostDocの使用をお勧めします。メソッド名とパラメータに基づいて///を使用して非常にスマートなコメントを生成します。また、完全にカスタマイズ可能です。
dgarcia が言ったようにツールを使用できると思いますが、バージョン管理を insetad にするツールを選択してみてください。
この方法が気に入った場合は、スニペットの独自のカスタマイズされたバージョンを作成できます。Snippyなどのツールを使用すると、これがより簡単になります。
My Documents\Visual Studio 2005\Code Snippets[言語]\My Code Snippets\
VB.NETで使用する場合は、ファイルを変更するように注意してください
この助けを願っています
vb は、xml ファイルを使用してデフォルトをロードします。それは VBXMLDoc.xml であり、ファイルの場所に関して実行しているバージョンによって異なります。
Olivier へのコメントのフォローアップとして。ここにマクロのコピーがあります。「Do History」セクションを探して、コードを挿入した場所を確認してください。
''// 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
何らかの理由で、保存、再構築、および Visual Studio の再起動後、履歴タグを取得できません。ここで私が見逃しているものを見ることができますか?