RoslynHighlighter Pennington.Roslyn.Highlighting
Roslyn-based code highlighter for C# and VB. Priority 100 (beats TextMate at 50). Uses AdhocWorkspace + Classifier API -- no solution workspace needed.
Properties
Priorityint- Priority — higher wins when multiple highlighters support a language.
SupportedLanguagesSystem.Collections.Generic.IReadOnlySet<string>- Default:
new HashSet<string> { "csharp", "cs", "c#", "vb", "vbnet" }Languages this highlighter handles (e.g., "csharp", "python").
Constructors
.ctor
#public RoslynHighlighter(SyntaxHighlighter highlighter);Creates a new highlighter that delegates to the supplied SyntaxHighlighter.
Parameters
highlighterSyntaxHighlighter
Methods
Highlight
#public string Highlight(string code, string language);Highlight code. Returns HTML with spans.
Parameters
codestringlanguagestring
Returns
stringPennington.Roslyn.Highlighting.RoslynHighlighter
namespace Pennington.Roslyn.Highlighting;
/// Roslyn-based code highlighter for C# and VB. Priority 100 (beats TextMate at 50). Uses AdhocWorkspace + Classifier API -- no solution workspace needed.
public class RoslynHighlighter
{
/// Creates a new highlighter that delegates to the supplied SyntaxHighlighter.
public RoslynHighlighter(SyntaxHighlighter highlighter);
/// Highlight code. Returns HTML with spans.
public string Highlight(string code, string language);
/// Priority — higher wins when multiple highlighters support a language.
public int Priority => 100;
/// Languages this highlighter handles (e.g., "csharp", "python").
public IReadOnlySet<string> SupportedLanguages { get; } =
new HashSet<string> { "csharp", "cs", "c#", "vb", "vbnet" };
}