Trait rustyline::highlight::Highlighter [−][src]
pub trait Highlighter {
fn highlight<'l>(&self, line: &'l str, pos: usize) -> Cow<'l, str> { ... }
fn highlight_prompt<'b, 's: 'b, 'p: 'b>(
&'s self,
prompt: &'p str,
default: bool
) -> Cow<'b, str> { ... }
fn highlight_hint<'h>(&self, hint: &'h str) -> Cow<'h, str> { ... }
fn highlight_candidate<'c>(
&self,
candidate: &'c str,
completion: CompletionType
) -> Cow<'c, str> { ... }
fn highlight_char(&self, line: &str, pos: usize) -> bool { ... }
}Expand description
Syntax highlighter with ANSI color. Rustyline will try to handle escape sequence for ANSI color on windows when not supported natively (windows <10).
Currently, the highlighted version must have the same display width as the original input.
Provided methods
Takes the currently edited line with the cursor position and
returns the highlighted version (with ANSI color).
For example, you can implement blink-matching-paren.
Takes the prompt and
returns the highlighted version (with ANSI color).
fn highlight_hint<'h>(&self, hint: &'h str) -> Cow<'h, str>
fn highlight_hint<'h>(&self, hint: &'h str) -> Cow<'h, str>
Takes the hint and
returns the highlighted version (with ANSI color).
fn highlight_candidate<'c>(
&self,
candidate: &'c str,
completion: CompletionType
) -> Cow<'c, str>
fn highlight_candidate<'c>(
&self,
candidate: &'c str,
completion: CompletionType
) -> Cow<'c, str>
Takes the completion candidate and
returns the highlighted version (with ANSI color).
Currently, used only with CompletionType::List.
fn highlight_char(&self, line: &str, pos: usize) -> bool
fn highlight_char(&self, line: &str, pos: usize) -> bool
Tells if line needs to be highlighted when a specific char is typed or
when cursor is moved under a specific char.
Used to optimize refresh when a character is inserted or the cursor is moved.