diff --git a/src/formatting.rs b/src/formatting.rs index 9a9f07e..26617c3 100644 --- a/src/formatting.rs +++ b/src/formatting.rs @@ -563,14 +563,15 @@ impl<'a> Formatter<'a> { /// Format a range expression fn format_range(&mut self, range: &nu_protocol::ast::Range) { + let op = range.operator.to_string(); if let Some(from) = &range.from { self.format_expression(from); } - self.write(".."); + self.write(&op); if let Some(next) = &range.next { self.format_expression(next); // For step ranges (start..step..end), write the operator again before end - self.write(".."); + self.write(&op); } if let Some(to) = &range.to { self.format_expression(to); diff --git a/tests/fixtures/expected/range.nu b/tests/fixtures/expected/range.nu index 768df1b..60e61c0 100644 --- a/tests/fixtures/expected/range.nu +++ b/tests/fixtures/expected/range.nu @@ -4,3 +4,5 @@ 1..2..10 0.. ..10 +0..<300 +1..<10 diff --git a/tests/fixtures/input/range.nu b/tests/fixtures/input/range.nu index 8ed1a15..fb17c33 100644 --- a/tests/fixtures/input/range.nu +++ b/tests/fixtures/input/range.nu @@ -4,3 +4,5 @@ 1..2..10 0.. ..10 + 0..<300 + 1..<10