diff --git a/zed/src/editor/buffer_view.rs b/zed/src/editor/buffer_view.rs index d7a4be9aa37d9ffbb0e6c358e2d62fece20c408e..49f72b365fa7409a0101674737e3d3830b69ac01 100644 --- a/zed/src/editor/buffer_view.rs +++ b/zed/src/editor/buffer_view.rs @@ -2145,8 +2145,9 @@ impl BufferView { let mut row = rows.start; let snapshot = self.display_map.snapshot(ctx); let chunks = snapshot.highlighted_chunks_at(rows.start, ctx); + 'outer: for (chunk, capture_ix) in chunks.chain(Some(("\n", None))) { - for (ix, chunk_line) in chunk.split('\n').enumerate() { + for (ix, line_chunk) in chunk.split('\n').enumerate() { if ix > 0 { layouts.push(layout_cache.layout_str(&line, font_size, &styles)); line.clear(); @@ -2157,9 +2158,9 @@ impl BufferView { } } - if !chunk_line.is_empty() { - line.push_str(chunk_line); - styles.push((chunk_line.len(), font_id, ColorU::black())); + if !line_chunk.is_empty() { + line.push_str(line_chunk); + styles.push((line_chunk.len(), font_id, ColorU::black())); } } } diff --git a/zed/src/editor/display_map/mod.rs b/zed/src/editor/display_map/mod.rs index 390ab11685f584d7400ed899127a9a2f713864db..a2582b2cd5818878e3cc5fc8bceaedab75e468be 100644 --- a/zed/src/editor/display_map/mod.rs +++ b/zed/src/editor/display_map/mod.rs @@ -164,7 +164,6 @@ impl DisplayMapSnapshot { tab_size: self.tab_size, chunk: "", capture_ix: None, - skip_leading_tab: false, } } @@ -359,7 +358,6 @@ pub struct HighlightedChunks<'a> { capture_ix: Option, column: usize, tab_size: usize, - skip_leading_tab: bool, } impl<'a> Iterator for HighlightedChunks<'a> { @@ -370,10 +368,6 @@ impl<'a> Iterator for HighlightedChunks<'a> { if let Some((chunk, capture_ix)) = self.fold_chunks.next() { self.chunk = chunk; self.capture_ix = capture_ix; - if self.skip_leading_tab { - self.chunk = &self.chunk[1..]; - self.skip_leading_tab = false; - } } else { return None; }