私が持っていた場合:
/// <summary>
/// My summary
/// </summary>
/// <param name='args'></param>
メソッドの上に貼り付けたクリップボードでは、次のstatic void Main(string[] args)
ようになります。
class Program
{
/// <summary>
/// This is my summary
/// </summary>
/// <param name='args'></param>
static void Main(string[] args)
{
}
}
注:クリップボードにあるテキストにはインデントがありませんでした(左側に4つの空白)。貼り付けたところ、VisualStudioはインデントが必要であることがわかりました。
マクロでも同じことをしたいと思います。変数()に挿入したいテキストがあるので、クリップボードを使用したくありませんmyText
。私は次のようなものを持っています:
Sub TemporaryMacro()
Dim myText As String = "/// <summary>" _
& vbCrLf & "/// My summary" _
& vbCrLf & "/// </summary>" _
& vbCrLf & "/// <param name='args'></param>"
DTE.ActiveDocument.Selection.Text = myText
End Sub
そのマクロを実行すると、次のようになります。
class Program
{
/// <summary>
/// <summary>
/// /// My summary
/// /// </summary>
/// /// <paramref name=" name='args'></param>"/></summary>
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
}
}
注:別の結果が得られます。
私も試しました:
Public Module RecordingModule
Sub TemporaryMacro()
Dim myText As String = "/// <summary>" _
& vbCrLf & "/// My summary" _
& vbCrLf & "/// </summary>" _
& vbCrLf & "/// <param name='args'></param>"
DTE.ActiveDocument.Selection.Insert(myText)
End Sub
End Module
その結果:
class Program
{
/// <summary>
/// My summary
/// </summary>
/// <param name='args'></param>
static void Main(string[] args)
{
}
}
myText
クリップボードに置いて貼り付けることができることはわかっています。しかし、それは意味がありません。myText
クリップボードに配置せずに貼り付けた場合と同じ動作を実現するにはどうすればよいですか?