VBにある古いVisualStudioマクロを実行する必要があります。しかし、マクロはVisual Studioでネイティブにサポートされなくなったことがわかりましたが、ここにマクロの拡張機能があります:https://marketplace.visualstudio.com/items?itemName = VisualStudioPlatformTeam.MacrosforVisualStudio
Visual Studio 2017コミュニティエディションで以下を実行したり、新しい拡張機能がサポートするJavaScriptに変換したりするにはどうすればよいですか?
Sub TemporaryMacro()
DTE.ActiveDocument.Selection.StartOfDocument()
Dim returnValue As vsIncrementalSearchResult
While True
DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.StartForward()
returnValue = DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.AppendCharAndSearch(AscW("{"))
DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.Exit()
If Not (returnValue = vsIncrementalSearchResult.vsIncrementalSearchResultFound) Then
Return
End If
DTE.ExecuteCommand("Debug.ToggleBreakpoint")
DTE.ExecuteCommand("Edit.GotoBrace")
DTE.ActiveDocument.Selection.CharRight()
End While
End Sub
私はMacros拡張機能を自分で試しませんでしたが、古いVBマクロをJSに変換するのは簡単なはずです。VBマクロからのグローバルフィールドDTEは、dteと呼ばれるようになりました。テストされていませんが、JSマクロは次のようになります。
function TemporaryMacro() {
dte.ActiveDocument.Selection.StartOfDocument();
var returnValue;
while (true) {
dte.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.StartForward();
returnValue = dte.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.AppendCharAndSearch("{".charCodeAt(0));
dte.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.Exit();
if(returnValue != vsIncrementalSearchResult.vsIncrementalSearchResultFound) {
return;
}
dte.ExecuteCommand("Debug.ToggleBreakpoint");
dte.ExecuteCommand("Edit.GotoBrace");
dte.ActiveDocument.Selection.CharRight();
}
}
そして、おそらく関数を呼び出す必要があるので、上記のコードの前に次の行を配置します。
TemporaryMacro();
または、コードを変換したくない場合は、VB .NETまたはC#とVisual Commander拡張機能を直接使用できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加