Crates.io | unsegen_terminal |
lib.rs | unsegen_terminal |
version | 0.3.1 |
source | src |
created_at | 2019-03-04 18:41:54.008563 |
updated_at | 2022-01-14 16:34:23.375443 |
description | A pluggable `unsegen` ANSI terminal |
homepage | |
repository | https://github.com/ftilde/unsegen_terminal |
max_upload_size | |
id | 118695 |
size | 110,517 |
unsegen_terminal
provides an ANSI pseudoterminal that can be easily integrated into applications using unsegen.
unsegen_terminal
is available on crates.io. You can install it by adding this line to your Cargo.toml
:
unsegen_terminal = "0.3.1"
There is an example at the root of the crate documentation which should be sufficient to get you going.
For a fully fledged application using unsegen_terminal
, you can have a look at ugdb, which was developed alongside unsegen
and the primary motivation for it.
The current API for passing on bytes from the pty to the terminal widget is a bit rough, but on the flip side is quite flexible and not tied to a specific event loop. In the future, support for specific event loops (especially using Futures once they are stable) could be added.
Moreover, there are still a few unimplemented OSC handlers (see terminalwindow.rs
), but the functionality is quite usable already.
Most notably, ugdb, which uses unsegen_terminal
itself, can debug itself.
Feel free to contribute missing functionality or to create issues if you hit a roadblock.
The majority of unsegen_terminal
is released under the MIT license. This applies to all files that do not explicitly state to be licensed differently.