すべてのスペースをアンダースコアに変更する Resharper ライブ テンプレートを作成したいと思います。これは、私の「事実」ライブ テンプレート変数 $testname$ 内にあります。
<Fact()> _
Public Sub $testnames$()
' Arrange
$END$
' Act
' Assert
End Sub
私はこれを持っています:
[Macro("applyRegex", ShortDescription = "Run on {#0:variable}", LongDescription = "")]
class ApplyRegexMacro : IMacro
{
public string EvaluateQuickResult(IHotspotContext context, IList<string> arguments)
{
return Regex.Replace(arguments[0], " ", "_", RegexOptions.IgnoreCase);
}
public HotspotItems GetLookupItems(IHotspotContext context, IList<string> arguments)
{
return null;
}
public string GetPlaceholder()
{
return "placeholder";
}
public bool HandleExpansion(IHotspotContext context, IList<string> arguments)
{
return false;
}
public ParameterInfo[] Parameters
{
get
{
return new[] { new ParameterInfo(ParameterType.String), new ParameterInfo(ParameterType.String), new ParameterInfo(ParameterType.VariableReference) };
}
}
}
しかし、これはタブを押したときにのみ実行されます。$testname$ からタブで移動した後にマクロを実行したい。
スペースを含む 1 行のテキストにテスト名を書き込めるようにしたいのですが、マクロはすべてのスペースをアンダースコアに変換します。
これは可能ですか?