ratatui_input
ratatui_input is a simple input widget like <input /> in HTML for ratatui.
UNDER CONSTRUCTION This crate is still under heavy construction and not ready or use yet
Features
- Single line input with baisc operations (insert/delet characters, copy, cut, jumps, ...)
- Windows style shortcuts (
Ctrl-v,Ctrl-v,Ctrl-x,Home,End, ...) - Text selection
- Does not use the terminal cursor and does not need to capture it, because it has its own cursor implemented
- Crossterm support
- Backend agnostic
- Autoscroll
Comming soon
- Undo/Redo
- Masking
- Placeholder
Exmaple
Running cargo run --example in this repository can demonstrate usage of ratatui_input
TODO: Upload a GIF of the exmaple running
Instalation
Add ratatui_input crate to dependecies in your Cargo.toml
[]
= "*"
= "*"
Key mappings
| Mappings | Description |
|---|---|
→ |
Move cursor forawrd by one character |
← |
Move cursor back by one character |
Shift + → |
Select under cursor and move forawrd by one character |
Shift + ← |
Select under cursor and move back by one character |
Ctrl+C |
Copy selected text or whole input |
Ctrl+V |
Replace selected text or insert at cursor |
Ctrl+X |
Cut selected text or whole input |
Home |
Jump to start |
End |
Jump to end |
Shift+Home |
Select from cursor to start |
Shift+End |
Select from cursor to end |
Backspace |
Delete character before cursor |
Delete |
Delete character under cursor |
Insert |
Toggle insert mode |
TODO: Ctrl+A |
Select everything |
TODO: Ctrl+W |
Select current word |
License
[ratatui_input][] is distributed under The MIT License.