| Crates.io | fltk-term |
| lib.rs | fltk-term |
| version | 0.2.5 |
| created_at | 2023-10-20 22:42:04.476059+00 |
| updated_at | 2025-10-02 20:00:24.441203+00 |
| description | A minimal terminal widget for fltk |
| homepage | |
| repository | https://github.com/fltk-rs/fltk-term |
| max_upload_size | |
| id | 1009496 |
| size | 103,329 |
The fltk-term terminal is quite minimal, supports a limited subset of ansi escape sequences using vte, i.e. don't expect to run vim in it!, and is powered by portable-pty.
use fltk_term::PPTerm;
use fltk::{prelude::*, *};
fn main() {
let a = app::App::default();
let mut w = window::Window::default().with_size(600, 400);
// Defer PTY start until after window sizing to avoid truncated first prompt
let mut term = PPTerm::new_deferred(0, 0, 0, 0, None).size_of_parent();
w.end();
w.show();
// Start the PTY now that the widget has a real size
term.start();
app::add_timeout3(0.2, move |_| {
term.write_all(b"echo -e \"\x1b[1;31mHELLO\"\n").unwrap();
});
a.run().unwrap();
}