Quickstart: Render and handle events in EdTUI
mainTo use EdTUI in a Ratatui application, you need to manage an EditorState for the data, an EditorView for rendering, and an EditorEventHandler for processing input. By default, the editor uses Vim-inspired keybindings.
Rendering
Create an EditorState and pass a mutable reference to EditorView::new() during the render loop.
Handling Events (Vim Mode)
Use EditorEventHandler::default() to handle keyboard events in Vim mode.
Handling Events (Emacs Mode)
Use EditorEventHandler::emacs_mode() for modeless editing.
// Rendering
use edtui::{EditorState, EditorView};
use ratatui::widgets::Widget;
let mut state = EditorState::default();
EditorView::new(&mut state).render(area, buf);
// Handling Events (Vim mode)
use edtui::EditorEventHandler;
let mut event_handler = EditorEventHandler::default();
event_handler.on_key_event(key_event, &mut state);
// Handling Events (Emacs mode)
use edtui::{EditorState, EditorEventHandler, Lines};
let mut state = EditorState::new(Lines::from("Hello World"));
let mut event_handler = EditorEventHandler::emacs_mode();
event_handler.on_key_event(key_event, &mut state);