SyntaxHighlighter.adaptive constructor

SyntaxHighlighter.adaptive({
  1. AdaptiveChromaTheme? adaptiveTheme,
  2. bool hasDarkBackground = true,
})

Creates a syntax highlighter that adapts to terminal background.

Uses adaptiveTheme to select between light and dark themes based on hasDarkBackground.

final highlighter = SyntaxHighlighter.adaptive(
  adaptiveTheme: AdaptiveChromaTheme.draculaGithub,
  hasDarkBackground: terminalTheme.hasDarkBackground ?? true,
);

Implementation

factory SyntaxHighlighter.adaptive({
  AdaptiveChromaTheme? adaptiveTheme,
  bool hasDarkBackground = true,
}) {
  final theme = (adaptiveTheme ?? AdaptiveChromaTheme.defaultTheme).resolve(
    hasDarkBackground: hasDarkBackground,
  );
  return SyntaxHighlighter(theme: theme);
}