The buffering backend for any Cursive backend. Mainly it is created to address a flickering issue with Termion backend.
Inspired by the comment on the similar issue on Termion itself.
let backend_init = || -> std::io::Result<Box<dyn cursive::backend::Backend>> {
let backend = cursive::backends::termion::Backend::init()?;
let buffered_backend = cursive_buffered_backend::BufferedBackend::new(backend);
Ok(Box::new(buffered_backend))
};
let mut app = Cursive::new();
app.try_run_with(backend_init).ok()?;