public static Colorize ( |
||
engine | ||
code | string | |
proc | TokenInfo>.Action | |
리턴 | List |
public static List<Run> Colorize(DlrEngine engine, string code, Action<Run, TokenInfo> proc)
{
var result = new List<Run>();
int position = 0;
foreach (TokenInfo token in engine.GetTokenInfos(code)) {
result.Add(CreateLeadingWhitespaceRun(code, position, token));
var run = CreateTextRun(code, token);
if (proc != null)
proc(run, token);
result.Add(run);
position = token.SourceSpan.Start.Index + token.SourceSpan.Length;
}
return result;
}
private Inline InsertColorizedCode(Inline position, string code) { return(InsertElements(position, Colorizer.Colorize(CurrentEngine, code, null))); }