getSeparator function
Separator glyphs by style. The plain table is font-safe unicode; the
nerd table swaps the powerline shapes for Nerd Font private-use
glyphs (only the nerd preset sets StatusLineSpec.nerdSymbols).
Implementation
StatusLineSeparator getSeparator(
StatusLineSeparatorStyle style, {
bool nerd = false,
}) => switch (style) {
StatusLineSeparatorStyle.powerline => StatusLineSeparator(
left: _glyph(nerd, '\u{e0b0}', '▶'),
right: _glyph(nerd, '\u{e0b2}', '◀'),
capAfterLeft: _glyph(nerd, '\u{e0b2}', '◀'),
capBeforeRight: _glyph(nerd, '\u{e0b0}', '▶'),
),
StatusLineSeparatorStyle.powerlineThin => StatusLineSeparator(
left: _glyph(nerd, '\u{e0b1}', '>'),
right: _glyph(nerd, '\u{e0b3}', '<'),
// Full-width caps even for the thin style (omp verbatim).
capAfterLeft: _glyph(nerd, '\u{e0b2}', '◀'),
capBeforeRight: _glyph(nerd, '\u{e0b0}', '▶'),
),
StatusLineSeparatorStyle.slash => const StatusLineSeparator(
left: '/',
right: '/',
),
StatusLineSeparatorStyle.pipe => const StatusLineSeparator(
left: '│',
right: '│',
),
StatusLineSeparatorStyle.block => StatusLineSeparator(
left: _glyph(nerd, '█', '▌'),
right: _glyph(nerd, '█', '▌'),
),
StatusLineSeparatorStyle.space => const StatusLineSeparator(
left: ' ',
right: ' ',
),
StatusLineSeparatorStyle.ascii => const StatusLineSeparator(
left: '>',
right: '<',
),
};