#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

#328 in Unix APIs

Download history 1/week @ 2024-02-13 35/week @ 2024-02-20 15/week @ 2024-02-27 2/week @ 2024-03-05 29/week @ 2024-03-12 16/week @ 2024-03-26 67/week @ 2024-04-02

83 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
~35K SLoC