diff options
Diffstat (limited to 'src/ansi/iterator.rs')
-rw-r--r-- | src/ansi/iterator.rs | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/src/ansi/iterator.rs b/src/ansi/iterator.rs index e5beb18a..49c8e091 100644 --- a/src/ansi/iterator.rs +++ b/src/ansi/iterator.rs @@ -35,9 +35,9 @@ struct Performer { #[derive(Clone, Debug, PartialEq)] pub enum Element { - CSI(ansi_term::Style, usize, usize), - ESC(usize, usize), - OSC(usize, usize), + Csi(ansi_term::Style, usize, usize), + Esc(usize, usize), + Osc(usize, usize), Text(usize, usize), } @@ -57,9 +57,9 @@ impl<'a> AnsiElementIterator<'a> { pub fn dbg(s: &str) { for el in AnsiElementIterator::new(s) { match el { - Element::CSI(_, i, j) => println!("CSI({}, {}, {:?})", i, j, &s[i..j]), - Element::ESC(i, j) => println!("ESC({}, {}, {:?})", i, j, &s[i..j]), - Element::OSC(i, j) => println!("OSC({}, {}, {:?})", i, j, &s[i..j]), + Element::Csi(_, i, j) => println!("CSI({}, {}, {:?})", i, j, &s[i..j]), + Element::Esc(i, j) => println!("ESC({}, {}, {:?})", i, j, &s[i..j]), + Element::Osc(i, j) => println!("OSC({}, {}, {:?})", i, j, &s[i..j]), Element::Text(i, j) => println!("Text({}, {}, {:?})", i, j, &s[i..j]), } } @@ -101,9 +101,9 @@ impl<'a> Iterator for AnsiElementIterator<'a> { let start = self.start; self.start = self.pos; let element = match self.element.as_ref().unwrap() { - Element::CSI(style, _, _) => Element::CSI(*style, start, self.pos), - Element::ESC(_, _) => Element::ESC(start, self.pos), - Element::OSC(_, _) => Element::OSC(start, self.pos), + Element::Csi(style, _, _) => Element::Csi(*style, start, self.pos), + Element::Esc(_, _) => Element::Esc(start, self.pos), + Element::Osc(_, _) => Element::Osc(start, self.pos), Element::Text(_, _) => unreachable!(), }; self.element = None; @@ -131,7 +131,7 @@ impl vte::Perform for Performer { // Attr::Reset // Probably doesn't need to be handled: https://github.com/dandavison/delta/pull/431#discussion_r536883568 } else { - self.element = Some(Element::CSI( + self.element = Some(Element::Csi( ansi_term_style_from_sgr_parameters(&mut params.iter()), 0, 0, @@ -158,11 +158,11 @@ impl vte::Perform for Performer { fn unhook(&mut self) {} fn osc_dispatch(&mut self, _params: &[&[u8]], _bell_terminated: bool) { - self.element = Some(Element::OSC(0, 0)); + self.element = Some(Element::Osc(0, 0)); } fn esc_dispatch(&mut self, _intermediates: &[u8], _ignore: bool, _byte: u8) { - self.element = Some(Element::ESC(0, 0)); + self.element = Some(Element::Esc(0, 0)); } } @@ -288,13 +288,13 @@ mod tests { if *git_style_string == "normal" { // This one has a different pattern assert!( - matches!(it.next().unwrap(), Element::CSI(s, _, _) if s == ansi_term::Style::default()) + matches!(it.next().unwrap(), Element::Csi(s, _, _) if s == ansi_term::Style::default()) ); assert!( matches!(it.next().unwrap(), Element::Text(i, j) if &git_output[i..j] == "text") ); assert!( - matches!(it.next().unwrap(), Element::CSI(s, _, _) if s == ansi_term::Style::default()) + matches!(it.next().unwrap(), Element::Csi(s, _, _) if s == ansi_term::Style::default()) ); continue; } @@ -302,7 +302,7 @@ mod tests { // First element should be a style let element = it.next().unwrap(); match element { - Element::CSI(style, _, _) => assert!(style::ansi_term_style_equality( + Element::Csi(style, _, _) => assert!(style::ansi_term_style_equality( style, style::Style::from_git_str(git_style_string).ansi_term_style )), @@ -317,12 +317,12 @@ mod tests { // Third element is the reset style assert!(matches!( it.next().unwrap(), - Element::CSI(s, _, _) if s == ansi_term::Style::default())); + Element::Csi(s, _, _) if s == ansi_term::Style::default())); // Fourth element should be a style let element = it.next().unwrap(); match element { - Element::CSI(style, _, _) => assert!(style::ansi_term_style_equality( + Element::Csi(style, _, _) => assert!(style::ansi_term_style_equality( style, style::Style::from_git_str(git_style_string).ansi_term_style )), @@ -337,7 +337,7 @@ mod tests { // Sixth element is the reset style assert!(matches!( it.next().unwrap(), - Element::CSI(s, _, _) if s == ansi_term::Style::default())); + Element::Csi(s, _, _) if s == ansi_term::Style::default())); assert!(matches!( it.next().unwrap(), @@ -354,7 +354,7 @@ mod tests { assert_eq!( actual_elements, vec![ - Element::CSI( + Element::Csi( ansi_term::Style { foreground: Some(ansi_term::Color::Red), ..ansi_term::Style::default() @@ -363,7 +363,7 @@ mod tests { 5 ), Element::Text(5, 9), - Element::CSI(ansi_term::Style::default(), 9, 12), + Element::Csi(ansi_term::Style::default(), 9, 12), Element::Text(12, 13), ] ); @@ -378,7 +378,7 @@ mod tests { assert_eq!( actual_elements, vec![ - Element::CSI( + Element::Csi( ansi_term::Style { foreground: Some(ansi_term::Color::Red), ..ansi_term::Style::default() @@ -387,7 +387,7 @@ mod tests { 5 ), Element::Text(5, 9), - Element::CSI(ansi_term::Style::default(), 9, 12), + Element::Csi(ansi_term::Style::default(), 9, 12), Element::Text(12, 16), ] ); @@ -402,7 +402,7 @@ mod tests { assert_eq!( actual_elements, vec![ - Element::CSI( + Element::Csi( ansi_term::Style { foreground: Some(ansi_term::Color::Red), ..ansi_term::Style::default() @@ -411,7 +411,7 @@ mod tests { 5 ), Element::Text(5, 11), - Element::CSI(ansi_term::Style::default(), 11, 15), + Element::Csi(ansi_term::Style::default(), 11, 15), ] ); assert_eq!("バー", &s[5..11]); @@ -435,7 +435,7 @@ mod tests { assert_eq!( actual_elements, vec![ - Element::CSI( + Element::Csi( ansi_term::Style { foreground: Some(ansi_term::Color::Fixed(4)), ..ansi_term::Style::default() @@ -443,12 +443,12 @@ mod tests { 0, 9 ), - Element::OSC(9, 58), - Element::ESC(58, 59), + Element::Osc(9, 58), + Element::Esc(58, 59), Element::Text(59, 80), - Element::OSC(80, 86), - Element::ESC(86, 87), - Element::CSI(ansi_term::Style::default(), 87, 91), + Element::Osc(80, 86), + Element::Esc(86, 87), + Element::Csi(ansi_term::Style::default(), 87, 91), Element::Text(91, 92), ] ); |