Skip to content

🌈 Colorize commands output or STDIN using patterns.

License

Notifications You must be signed in to change notification settings

nicoulaj/rainbow

Repository files navigation

rainbow

last release downloads python versions continuous integration test Coverage gitter chat

Easily colorize commands output using patterns.

rainbow [ --COLOR=PATTERN ... | --conf CONF ] COMMAND

Examples

Using the command line

Prepend rainbow with --COLOR=PATTERN associations to your command, for example:

  • Tail some log file with lines containing ERROR in red:

    rainbow --red=ERROR tail -f /var/log/my.log
    
  • You can also pipe commands output into rainbow:

    tail -f /var/log/my.log | rainbow --red=ERROR
    

Using configs

Rainbow can load configuration for each command from files, which is the most convenient way to use it. When running rainbow mycommand, rainbow will automatically look for a config named mycommand.cfg in ~/.config/rainbow, ~/.rainbow, /etc/rainbow, or builtin configs:

  • Colorize the diff command output using the builtin config:

    rainbow diff file1 file2
    
  • Start my custom command, using ~/.rainbow/mycommand.cfg:

    rainbow mycommand
    

The syntax for writing configs is straightforward, see the builtin configs for examples. See also the commands support table.

Installation

Using packages

System Installation instructions
Debian / RPM based rainbow repository (sources here)
Arch Linux AUR/rainbow / AUR/rainbow-git
pip PyPI: rainbow

Building from sources

You can build from sources this way:

git clone git://github.com/nicoulaj/rainbow.git
cd rainbow
python setup.py build install --user

Contributing

Contributions are welcome, please see CONTRIBUTING.

License

This project is a fork of Linibou's colorex. It is is released under the terms of the GNU General Public License. See COPYING for details.