syntax_highlight_lite 0.0.1
syntax_highlight_lite: ^0.0.1 copied to clipboard
A simplified version of syntax_highlight but in pure dart so as to be useful outside of Flutter (e.g. jaspr)
import 'dart:convert';
import 'package:syntax_highlight_lite/syntax_highlight_lite.dart';
main() async {
await Highlighter.initialize(['dart']);
var theme = await HighlighterTheme.loadDarkTheme();
var highlighter = Highlighter(
language: 'dart',
theme: theme,
);
final span = highlighter.highlight('''
void main(List<String> args) async {
await foo();
print('sup dawg');
}
''');
SpanVisitor(
(node, depth) {
var text = node.text ?? '';
if (LineSplitter.split(text).length > 1) {
text = 'NEWLINEs(${LineSplitter.split(text).length})';
}
print(' ' * depth +
'$text - ${(
node.style?.bold,
node.style?.italic,
node.style?.underline,
node.style?.foreground.argb
)}');
},
).visit(span);
}