Change summary
zed/src/editor/buffer_view.rs | 9 +++++----
zed/src/editor/display_map/mod.rs | 6 ------
2 files changed, 5 insertions(+), 10 deletions(-)
Detailed changes
@@ -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()));
}
}
}
@@ -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<usize>,
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;
}