#child-process #filter #terminal #linux #unix

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

#338 in Unix APIs

39 downloads per month
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
~34K SLoC