14 releases

0.5.2 May 26, 2025
0.5.0 Oct 29, 2024
0.4.2 Sep 18, 2023
0.4.0 Dec 26, 2022
0.1.0 Oct 27, 2021

#273 in Unix APIs

Download history 3/week @ 2025-02-17 1/week @ 2025-02-24 1/week @ 2025-03-03 1/week @ 2025-03-10 1/week @ 2025-03-24 4/week @ 2025-05-05 10/week @ 2025-05-12 120/week @ 2025-05-19 153/week @ 2025-05-26 7/week @ 2025-06-02

291 downloads per month
Used in monoterm

GPL-3.0-or-later

40KB
945 lines

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.


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.

Dependencies

~2MB
~38K SLoC