1
0
mirror of https://github.com/sharkdp/bat synced 2026-08-11 20:11:43 +00:00

Print non-printable characters using caret notation (#2443)

When the new flag is set, non-printable characters are printed using caret notation.
This commit is contained in:
einfachIrgendwer0815
2023-03-14 22:21:30 +01:00
committed by GitHub
parent c5602f9766
commit 8f99a78cf1
11 changed files with 151 additions and 37 deletions
+10 -1
View File
@@ -21,7 +21,7 @@ use bat::{
input::Input,
line_range::{HighlightedLineRanges, LineRange, LineRanges},
style::{StyleComponent, StyleComponents},
MappingTarget, PagingMode, SyntaxMapping, WrappingMode,
MappingTarget, NonprintableNotation, PagingMode, SyntaxMapping, WrappingMode,
};
fn is_truecolor_terminal() -> bool {
@@ -173,6 +173,15 @@ impl App {
}
}),
show_nonprintable: self.matches.get_flag("show-all"),
nonprintable_notation: match self
.matches
.get_one::<String>("nonprintable-notation")
.map(|s| s.as_str())
{
Some("unicode") => NonprintableNotation::Unicode,
Some("caret") => NonprintableNotation::Caret,
_ => unreachable!("other values for --nonprintable-notation are not allowed"),
},
wrapping_mode: if self.interactive_output || maybe_term_width.is_some() {
if !self.matches.get_flag("chop-long-lines") {
match self.matches.get_one::<String>("wrap").map(|s| s.as_str()) {