mirror of
https://github.com/sharkdp/bat.git
synced 2025-10-23 04:03:59 +01:00
committed by
Louis Maddox
parent
20db989fb1
commit
52a792d46f
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
## Bugfixes
|
## Bugfixes
|
||||||
|
|
||||||
|
- Fix negative values of N not being parsed in <N:M> line ranges without `=` flag value separator, see #3442 (@lmmx)
|
||||||
|
|
||||||
## Other
|
## Other
|
||||||
|
|
||||||
## Syntaxes
|
## Syntaxes
|
||||||
|
@@ -194,6 +194,7 @@ Options:
|
|||||||
'--line-range :40' prints lines 1 to 40
|
'--line-range :40' prints lines 1 to 40
|
||||||
'--line-range 40:' prints lines 40 to the end of the file
|
'--line-range 40:' prints lines 40 to the end of the file
|
||||||
'--line-range 40' only prints line 40
|
'--line-range 40' only prints line 40
|
||||||
|
'--line-range -10:' prints the last 10 lines
|
||||||
'--line-range 30:+10' prints lines 30 to 40
|
'--line-range 30:+10' prints lines 30 to 40
|
||||||
'--line-range 35::5' prints lines 30 to 40 (line 35 with 5 lines of context)
|
'--line-range 35::5' prints lines 30 to 40 (line 35 with 5 lines of context)
|
||||||
'--line-range 30:40:2' prints lines 28 to 42 (range 30-40 with 2 lines of context)
|
'--line-range 30:40:2' prints lines 28 to 42 (range 30-40 with 2 lines of context)
|
||||||
|
@@ -519,6 +519,7 @@ pub fn build_app(interactive_output: bool) -> Command {
|
|||||||
.short('r')
|
.short('r')
|
||||||
.action(ArgAction::Append)
|
.action(ArgAction::Append)
|
||||||
.value_name("N:M")
|
.value_name("N:M")
|
||||||
|
.allow_hyphen_values(true)
|
||||||
.help("Only print the lines from N to M.")
|
.help("Only print the lines from N to M.")
|
||||||
.long_help(
|
.long_help(
|
||||||
"Only print the specified range of lines for each file. \
|
"Only print the specified range of lines for each file. \
|
||||||
@@ -527,6 +528,7 @@ pub fn build_app(interactive_output: bool) -> Command {
|
|||||||
'--line-range :40' prints lines 1 to 40\n \
|
'--line-range :40' prints lines 1 to 40\n \
|
||||||
'--line-range 40:' prints lines 40 to the end of the file\n \
|
'--line-range 40:' prints lines 40 to the end of the file\n \
|
||||||
'--line-range 40' only prints line 40\n \
|
'--line-range 40' only prints line 40\n \
|
||||||
|
'--line-range -10:' prints the last 10 lines\n \
|
||||||
'--line-range 30:+10' prints lines 30 to 40\n \
|
'--line-range 30:+10' prints lines 30 to 40\n \
|
||||||
'--line-range 35::5' prints lines 30 to 40 (line 35 with 5 lines of context)\n \
|
'--line-range 35::5' prints lines 30 to 40 (line 35 with 5 lines of context)\n \
|
||||||
'--line-range 30:40:2' prints lines 28 to 42 (range 30-40 with 2 lines of context)",
|
'--line-range 30:40:2' prints lines 28 to 42 (range 30-40 with 2 lines of context)",
|
||||||
|
@@ -207,7 +207,7 @@ fn line_range_from_back_last_two() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn line_range_from_back_last_two_single_line() {
|
fn line_range_from_back_last_two_single_line_eq_sep() {
|
||||||
bat()
|
bat()
|
||||||
.arg("single-line.txt")
|
.arg("single-line.txt")
|
||||||
.arg("--line-range=-2:")
|
.arg("--line-range=-2:")
|
||||||
@@ -216,6 +216,17 @@ fn line_range_from_back_last_two_single_line() {
|
|||||||
.stdout("Single Line");
|
.stdout("Single Line");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn line_range_from_back_last_two_single_line_no_sep() {
|
||||||
|
bat()
|
||||||
|
.arg("single-line.txt")
|
||||||
|
.arg("--line-range")
|
||||||
|
.arg("-2:")
|
||||||
|
.assert()
|
||||||
|
.success()
|
||||||
|
.stdout("Single Line");
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn line_range_first_two() {
|
fn line_range_first_two() {
|
||||||
bat()
|
bat()
|
||||||
|
Reference in New Issue
Block a user