Pluggable Output Processor is an engine to wrap any executabe and capture its output through a pluggable module to colorize it and/or (re)format.
- easy (to Python programmers ;-) to extend
- 256 color terminal support ;-) configuration files in addition to standard named colors
may contain color definitions as
rgb(r,g,b)
orgray(n)
- colorizers for
make
,cmake
,gcc
out of the box (more to come ;-) - some modules are not just a stupid colorizers ;-) For example
gcc
can reformat text for better readability (really helps to understand template errors). Alsocmake
module can reduce amount of lines printed during test by collapsing test intro message and result into a single one.
Easy!
$ pip install outproc
For Gentoo users there is a live ebuild in my repository.
Also (for Gentoo users again ;-) eselect
module from contrib/
will be installed by the ebuild.
Users of other distros have to make symlinks to required modules manually (replace <install-prefix>
with your actual path):
$ ln -s <install-prefix>/bin/outproc /usr/lib/outproc/bin/<module-name>
and then make sure /usr/lib/outproc/bin
placed before /usr/bin
(and anything else) in your
user/system PATH
environment. The path /usr/lib/outproc/bin
is just an example. You can choose
whatever you like instead (e.g. /home/<login>/.local/bin/
for user based install layout).
List of available modules (plugins) can be obtained from command:
$ outproc -l
List of available modules:
c++
cc
cmake
diff
g++
gcc
make
mount
For example, to install the make
module do the following:
$ ln -s <install-prefix>/bin/outproc /usr/lib/outproc/bin/make
Then you may edit /etc/outproc/make.conf
to adjust color settings. Note that gcc
, g++
, cc
and c++
are the same module actually (named after typical GCC executables) and use the same /etc/outproc/gcc.conf
config file.