Skip to main content

Colorize your output using RegEx

Project description


A tool for colorizing the output of a terminal.


ChromaTerm (ct) reads from standard input and colors it according to user-configurable rules.

Think of ChromaTerm like grep; just pipe things into it. However, unlike other programs which line-buffer, ct works with interactive applications, like ssh. In fact, I have ssh() { /usr/bin/ssh $* | ct; } in my .bash_profile to give my sessions color.

Here's an example using the rules in the default configuration file:

alt text


pip3 install chromaterm

If you have the legacy version of ChromaTerm, be sure to uninstall it first.

# If installed using HomeBrew
brew uninstall chromaterm

# If installed from source
git clone -b legacy
cd ChromaTerm--/src/ && ./configure && make uninstall


By default, ChromaTerm reads .chromaterm.yml in your home directory. As an example, run the following:

echo "Jul 14 12:28:19: Message from" | ct

During installation, the default config file was copied to home directory.

Highlight Rules

All of the highlight rules are placed under the rules array in the configuration file. Here's an example config file:

- description: My first rule colors the foreground
  regex: hello.+world
  color: f#ff0000

- description: Background this time, but just for "there"
  regex: Hey (there), buddy
  color: b#ff0000
  group: 1


Optional. It's purely for your sake.


The RegEx engine used is Python's re.


The color is a hex string prefixed by b for background (e.g. b#123456) and f for foreground (e.g. f#abcdef).

You can color the foreground and background by separating them with a space, like b#123456 f#abcdef.


Optional. By default, the entire match is colored. That can be changed to a specific group in the regex.


If you've got any questions or suggestions, please open up an issue (always appreciated).

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for chromaterm, version 0.3.96
Filename, size File type Python version Upload date Hashes
Filename, size chromaterm-0.3.96-py3.7.egg (17.2 kB) File type Egg Python version 3.7 Upload date Hashes View hashes
Filename, size chromaterm-0.3.96-py3-none-any.whl (14.6 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size chromaterm-0.3.96.tar.gz (8.0 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page