filterm

Filter terminal data to and from a child process

11 unstable releases (3 breaking)

0.4.2 Sep 18, 2023
0.4.0 Dec 26, 2022
0.2.4 Sep 11, 2022
0.2.3 Jun 17, 2022
0.1.0 Oct 27, 2021


Used in monoterm

GPL-3.0-or-later

41KB
947 lines

Filterm

Filterm lets you run a child process while piping all terminal data to and from the child through a custom filter. This lets you modify things like ANSI escape sequences that get sent from the child.

The main way of using Filterm is to define a custom filter by implementing the Filter trait, and then call run.

For an example of Filterm in use, see Monoterm.

Platform support

Filterm has been tested on GNU/Linux. It may work on other Unix-like operating systems, as it avoids using Linux- and GNU-specific functionality and sticks to POSIX whenever possible.


lib.rs:

Filterm lets you run a child process while piping all terminal data to and from the child through a custom filter. This lets you modify things like ANSI escape sequences that get sent from the child.

The main way of using Filterm is to define a custom filter by implementing the Filter trait, and then call [run].

For an example of Filterm in use, see Monoterm.

Platform support

Filterm has been tested on GNU/Linux. It may work on other Unix-like operating systems, as it avoids using Linux- and GNU-specific functionality and sticks to POSIX whenever possible.

Dependencies

~1.5MB
~36K SLoC