语法高亮
语法高亮包使用 TextMate 规则进行代码高亮,这被许多流行应用程序(如 VSCode)所使用。目前支持的语言是 Dart 和 YAML,但通过在 grammar 目录中放置新的语法文件,可以轻松扩展语言支持。
用法
在使用 Highligher 类之前,需要对其进行初始化。初始化将加载请求的语法文件并进行解析。
// Initialize the highlighter.
await Highlighter.initialize(['dart', 'yaml']);
接下来,加载一个主题并创建一个高亮器。
// Load the default light theme and create a highlighter.
var theme = await HighlighterTheme.loadLightTheme();
var highlighter = Highlighter(
language: 'dart',
theme: theme,
);
现在,您可以通过调用 highlight 方法来高亮您的代码。highlight 方法将返回一个 TextSpan,您可以在 Text 小部件中使用它。
Widget build(BuildContext context) {
var highlightedCode = highligher.highlight(myCodeString);
return Text.rich(highlightedCode);
}
