ensure highlight scopes are skipped properly
This commit is contained in:
parent
22dfad605a
commit
2023445a08
1 changed files with 3 additions and 6 deletions
|
@ -68,10 +68,7 @@ impl<H: Iterator<Item = HighlightEvent>> Iterator for StyleIter<'_, H> {
|
|||
HighlightEvent::HighlightEnd => {
|
||||
self.active_highlights.pop();
|
||||
}
|
||||
HighlightEvent::Source { start, mut end } => {
|
||||
if start == end {
|
||||
continue;
|
||||
}
|
||||
HighlightEvent::Source { mut end, .. } => {
|
||||
let style = self
|
||||
.active_highlights
|
||||
.iter()
|
||||
|
@ -300,12 +297,12 @@ pub fn render_text<'t>(
|
|||
}
|
||||
|
||||
// acquire the correct grapheme style
|
||||
if char_pos >= syntax_style_span.1 {
|
||||
while char_pos >= syntax_style_span.1 {
|
||||
syntax_style_span = syntax_styles
|
||||
.next()
|
||||
.unwrap_or((Style::default(), usize::MAX));
|
||||
}
|
||||
if char_pos >= overlay_style_span.1 {
|
||||
while char_pos >= overlay_style_span.1 {
|
||||
overlay_style_span = overlay_styles
|
||||
.next()
|
||||
.unwrap_or((Style::default(), usize::MAX));
|
||||
|
|
Loading…
Add table
Reference in a new issue