libedit 0.2.0

Safe Rust bindings to the libedit line-editing library
docs.rs failed to build libedit-0.2.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: libedit-0.2.1

libedit

Safe Rust bindings to the libedit line-editing library (the BSD alternative to GNU readline).

Crates

Crate Description
libedit Safe, ergonomic wrapper with history, completion, hints, and suggestions
libedit-sys Raw FFI bindings generated by bindgen

Example

use libedit::EditLine;

let mut el = EditLine::new("example").unwrap();
if let Some(line) = el.readline("prompt> ").unwrap() {
    println!("got: {line}");
}

A fuller example demonstrating tab completion, history, inline suggestions, and hints is available in libedit/examples/repl.rs:

cargo run --example repl

System dependencies

The libedit development headers and library are required at build time.

Platform Command
Debian/Ubuntu apt install libedit-dev
Fedora/RHEL dnf install libedit-devel
macOS (Homebrew) brew install libedit
Arch Linux pacman -S libedit

To regenerate bindings with the bindgen feature, also install libclang-dev (or equivalent).

MSRV

The minimum supported Rust version is 1.82.

License

Licensed under the BSD 2-Clause License (LICENSE).