pub struct ArrowsColorTheme {}Expand description
A simple colorful theme using arrows
use termdiff::{ArrowsColorTheme, diff};
let old = "The quick brown fox and\njumps over the sleepy dog";
let new = "The quick red fox and\njumps over the lazy dog";
let theme = ArrowsColorTheme::default();
let mut buffer: Vec<u8> = Vec::new();
diff(&mut buffer, old, new, &theme).unwrap();
let actual: String = String::from_utf8(buffer).expect("Not valid UTF-8");
assert_eq!(
actual,
"\u{1b}[38;5;9m< left\u{1b}[39m / \u{1b}[38;5;10m> right\u{1b}[39m
\u{1b}[38;5;9m<\u{1b}[39m\u{1b}[38;5;9mThe quick \u{1b}[39m\u{1b}[38;5;9m\u{1b}[4mbrown\u{1b}[0m\u{1b}[39m\u{1b}[38;5;9m fox and
\u{1b}[39m\u{1b}[38;5;9m<\u{1b}[39m\u{1b}[38;5;9mjumps over the \u{1b}[39m\u{1b}[38;5;9m\u{1b}[4msleepy\u{1b}[0m\u{1b}[39m\u{1b}[38;5;9m dog\u{1b}[39m
\u{1b}[38;5;10m>\u{1b}[39m\u{1b}[38;5;10mThe quick \u{1b}[39m\u{1b}[38;5;10m\u{1b}[4mred\u{1b}[0m\u{1b}[39m\u{1b}[38;5;10m fox and
\u{1b}[39m\u{1b}[38;5;10m>\u{1b}[39m\u{1b}[38;5;10mjumps over the \u{1b}[39m\u{1b}[38;5;10m\u{1b}[4mlazy\u{1b}[0m\u{1b}[39m\u{1b}[38;5;10m dog\u{1b}[39m
"
);Trait Implementations§
Source§impl Clone for ArrowsColorTheme
impl Clone for ArrowsColorTheme
Source§fn clone(&self) -> ArrowsColorTheme
fn clone(&self) -> ArrowsColorTheme
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ArrowsColorTheme
impl Debug for ArrowsColorTheme
Source§impl Default for ArrowsColorTheme
impl Default for ArrowsColorTheme
Source§fn default() -> ArrowsColorTheme
fn default() -> ArrowsColorTheme
Returns the “default value” for a type. Read more
Source§impl Theme for ArrowsColorTheme
impl Theme for ArrowsColorTheme
Source§fn highlight_insert<'this>(&self, input: &'this str) -> Cow<'this, str>
fn highlight_insert<'this>(&self, input: &'this str) -> Cow<'this, str>
How to format the text when highlighting it for inserts
Source§fn highlight_delete<'this>(&self, input: &'this str) -> Cow<'this, str>
fn highlight_delete<'this>(&self, input: &'this str) -> Cow<'this, str>
How to format the text when highlighting it for deletes
Source§fn delete_content<'this>(&self, input: &'this str) -> Cow<'this, str>
fn delete_content<'this>(&self, input: &'this str) -> Cow<'this, str>
How to format bits of text that are being removed
Source§fn equal_prefix<'this>(&self) -> Cow<'this, str>
fn equal_prefix<'this>(&self) -> Cow<'this, str>
The prefix to give lines that are equal
Source§fn delete_prefix<'this>(&self) -> Cow<'this, str>
fn delete_prefix<'this>(&self) -> Cow<'this, str>
The prefix to give lines that are being removed
Source§fn insert_line<'this>(&self, input: &'this str) -> Cow<'this, str>
fn insert_line<'this>(&self, input: &'this str) -> Cow<'this, str>
How to format bits of text that are being added
Source§fn insert_prefix<'this>(&self) -> Cow<'this, str>
fn insert_prefix<'this>(&self) -> Cow<'this, str>
The prefix to give lines that are being added
Source§fn equal_content<'this>(&self, input: &'this str) -> Cow<'this, str>
fn equal_content<'this>(&self, input: &'this str) -> Cow<'this, str>
How to format unchanged content
Source§fn line_end<'this>(&self) -> Cow<'this, str>
fn line_end<'this>(&self) -> Cow<'this, str>
If a diff line doesn’t end with a newline, what should we insert
Source§fn trailing_lf_marker<'this>(&self) -> Cow<'this, str>
fn trailing_lf_marker<'this>(&self) -> Cow<'this, str>
If one of the two strings ends with a newline, and the other does not,
insert this character before the newline, and then re-add the newline
impl Copy for ArrowsColorTheme
Auto Trait Implementations§
impl Freeze for ArrowsColorTheme
impl RefUnwindSafe for ArrowsColorTheme
impl Send for ArrowsColorTheme
impl Sync for ArrowsColorTheme
impl Unpin for ArrowsColorTheme
impl UnwindSafe for ArrowsColorTheme
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more