diff --git a/crates/editor/src/runnables.rs b/crates/editor/src/runnables.rs index e36658cf0b160dc2e340f11abe76efa5e895b4ee..fb234f9bcf9976fa71ac6cac055d3312f96a3d9a 100644 --- a/crates/editor/src/runnables.rs +++ b/crates/editor/src/runnables.rs @@ -584,7 +584,7 @@ impl Editor { project: Entity, snapshot: MultiBufferSnapshot, prefer_lsp: bool, - runnable_ranges: Vec<(Range, language::RunnableRange)>, + runnable_ranges: Vec<(Range, language::RunnableRange)>, cx: AsyncWindowContext, ) -> Task> { cx.spawn(async move |cx| { @@ -621,7 +621,7 @@ impl Editor { (runnable.buffer_id, row), RunnableTasks { templates: tasks, - offset: snapshot.anchor_before(run_range.start), + offset: run_range.start, context_range, column: point.column, extra_variables: runnable.extra_captures, diff --git a/crates/multi_buffer/src/multi_buffer.rs b/crates/multi_buffer/src/multi_buffer.rs index e3b578c9d5ff274f35ddced24a49f4b31d819bf1..b300b950ca30b723d8543b7bff16e8555d7f6dbd 100644 --- a/crates/multi_buffer/src/multi_buffer.rs +++ b/crates/multi_buffer/src/multi_buffer.rs @@ -6346,7 +6346,7 @@ impl MultiBufferSnapshot { pub fn runnable_ranges( &self, range: Range, - ) -> impl Iterator, language::RunnableRange)> + '_ { + ) -> impl Iterator, language::RunnableRange)> + '_ { let range = range.start.to_offset(self)..range.end.to_offset(self); self.lift_buffer_metadata(range, move |buffer, range| { Some( @@ -6359,7 +6359,12 @@ impl MultiBufferSnapshot { .map(|runnable| (runnable.run_range.clone(), runnable)), ) }) - .map(|(run_range, runnable, _)| (run_range, runnable)) + .map(|(run_range, runnable, _)| { + ( + self.anchor_after(run_range.start)..self.anchor_before(run_range.end), + runnable, + ) + }) } pub fn line_indents(