20 releases

0.6.0 Apr 26, 2019
0.5.4 Dec 7, 2018
0.5.3 Sep 17, 2018
0.5.1 Jul 19, 2018
0.2.0 Nov 22, 2016

#1082 in Command-line interface

Download history 801/week @ 2024-07-19 764/week @ 2024-07-26 467/week @ 2024-08-02 579/week @ 2024-08-09 706/week @ 2024-08-16 636/week @ 2024-08-23 962/week @ 2024-08-30 732/week @ 2024-09-06 570/week @ 2024-09-13 706/week @ 2024-09-20 1513/week @ 2024-09-27 375/week @ 2024-10-04 635/week @ 2024-10-11 490/week @ 2024-10-18 765/week @ 2024-10-25 758/week @ 2024-11-01

2,709 downloads per month
Used in 40 crates (35 directly)

MIT/Apache

250KB
5.5K SLoC

linefeed

linefeed is a configurable, concurrent, extensible, interactive input reader for Unix terminals and Windows console.

API Documentation

linefeed follows the paradigm of GNU Readline, binding key sequences to commands that modify input state. linefeed supports many GNU Readline commands. However, linefeed does not implement all commands supported by GNU Readline. If there's a command you want to be implemented, file an issue!

linefeed also interprets GNU Readline inputrc configuration files. First, it will check for a filename in the environment variable INPUTRC. Then, on Unix, it will check $HOME/.inputrc or /etc/inputrc; while, on Windows, it will check %APPDATA%\linefeed\inputrc. Only the first of these that is present is parsed and evaluated.

Building

To include linefeed in your project, add the following to your Cargo.toml:

[dependencies]
linefeed = "0.6"

Demo

The linefeed project contains a demo program for testing functionality. To run the demo, run the following from a clone of the linefeed project:

cargo run --example demo

License

linefeed is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

Dependencies

~6MB
~127K SLoC