highlightCodeSpanWithReHighlight function
Implementation
TextSpan highlightCodeSpanWithReHighlight({
required BuildContext context,
required String code,
required String languageOrFilename,
required TextStyle textStyle,
Map<String, TextStyle>? theme,
String fallbackLanguageId = plaintextLanguageId,
}) {
final languageId = resolveLanguageIdForFilename(languageOrFilename) ?? fallbackLanguageId;
final codeTheme = theme ?? _codeTheme(context);
try {
final result = _markdownHighlighter.highlight(code: code, language: languageId);
final renderer = TextSpanRenderer(textStyle, codeTheme);
result.render(renderer);
return renderer.span ?? TextSpan(text: code, style: textStyle);
} catch (_) {
return TextSpan(text: code, style: textStyle);
}
}