Crate rustyline

source ·
Expand description

Readline for Rust

This implementation is based on Antirez’s Linenoise

Example

Usage

let mut rl = rustyline::Editor::<()>::new()?;
let readline = rl.readline(">> ");
match readline {
    Ok(line) => println!("Line: {:?}", line),
    Err(_) => println!("No input"),
}

Re-exports

pub use crate::config::Behavior;
pub use crate::config::ColorMode;
pub use crate::config::CompletionType;
pub use crate::config::Config;
pub use crate::config::EditMode;
pub use crate::config::HistoryDuplicates;

Modules

Completion API
Customize line editor
Contains error type for handling I/O and Errno errors
Syntax highlighting
Hints (suggestions at the right of the prompt as you type).
History API
Line buffer with current cursor position
Input validation API (Multi-line editing)

Structs

Completion/suggestion context
Line editor
Give access to user input.
Input key pressed and modifiers
The set of modifier keys that were triggered along with a key press.

Enums

Where to paste (relative to cursor position)
Where to move with respect to word boundary
character search
Commands
Input event
Event handler
Vi input modes
Input key pressed
Where to move
Different word definitions

Traits

May behave differently depending on:
External printer
Syntax specific helper.

Type Definitions

The number of times one command should be repeated.
The error type for I/O and Linux Syscalls (Errno)