#read-line #multiline #input #history #crossterm #async #unicode

rustyline-async

一个支持多行和异步的精简 readline

17 个版本

0.4.3 2024 年 8 月 5 日
0.4.2 2024 年 2 月 2 日
0.4.1 2023 年 12 月 13 日
0.4.0 2023 年 9 月 7 日
0.2.1 2022 年 3 月 31 日

#109文本处理 中排名

Download history 816/week @ 2024-05-01 787/week @ 2024-05-08 860/week @ 2024-05-15 757/week @ 2024-05-22 1108/week @ 2024-05-29 778/week @ 2024-06-05 1093/week @ 2024-06-12 852/week @ 2024-06-19 877/week @ 2024-06-26 919/week @ 2024-07-03 990/week @ 2024-07-10 845/week @ 2024-07-17 1027/week @ 2024-07-24 1298/week @ 2024-07-31 952/week @ 2024-08-07 979/week @ 2024-08-14

每月下载量 4,436
用于 7 个 Crates

Unlicense 协议

28KB
621

RustyLine Async

Docs

一个支持多行和异步的精简 readline。

rustylineasync-readlinetermion-async-input 的启发。使用 crossterm 构建。

特性

  • crossterm 支持的所有平台上运行。
  • 完整的 Unicode 支持(包括图形群组)
  • 多行编辑
  • 内存历史记录
  • Ctrl-C、Ctrl-D 返回为 Ok(Interrupt)Ok(Eof) ReadlineEvent
  • Ctrl-U 清除光标前的行
  • Ctrl-left 和 Ctrl-right 移动到下一个或上一个空白处
  • Home/Ctrl-A 和 End/Ctrl-E 跳到输入的开始和结束位置(Ctrl-A 和 Ctrl-E 可以通过禁用 "emacs" 功能来切换)
  • Ctrl-L 清屏
  • Ctrl-W 删除到上一个空格之前
  • 基于 crosstermevent-stream 功能的可扩展设计

欢迎提交 PR 添加更多功能!

示例

cargo run --example readline

rustyline-async

许可协议

此软件根据 The Unlicense 许可协议授权。

依赖

~4–14MB
~177K SLoC