From 471e90f888368cdb1d4afc2faf4c8d6db675e433 Mon Sep 17 00:00:00 2001 From: nojhan Date: Wed, 3 Apr 2013 19:24:18 +0200 Subject: [PATCH] scale example + code on separate line --- cmake_scale.png | Bin 0 -> 30386 bytes index.html | 47 ++++++++++++++++++++++++++--------------------- 2 files changed, 26 insertions(+), 21 deletions(-) create mode 100644 cmake_scale.png diff --git a/cmake_scale.png b/cmake_scale.png new file mode 100644 index 0000000000000000000000000000000000000000..e04c562b29c7c13c942415f7fa144c4d063edefb GIT binary patch literal 30386 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 Z8%D{RY-+S>colout is a simple command to add colors to a text stream in your terminal.

The colout command line interface has been carefully designed to be simple. Basically, you will call it like: <text -stream> | colout <pattern to color> [color [style]].

+stream> | colout <pattern to color> [color [style]]

colout has the ability to use 8 colors mode, 256 colors mode, colormaps, themes and source code syntax coloring. Patterns are regular expressions.

@@ -60,20 +60,20 @@ powerful coloring capabilites.

In the most simple use, you just have to call colout word to highlight what you want to spot in a text stream. This is particularly useful when examining logs.

-

Color every occurence of the word "fail" in bold red, in the boot log: -tail /var/log/boot.log | colout fail

+

Color every occurence of the word "fail" in bold red, in the boot log:

+

tail /var/log/boot.log | colout fail

Using regular expressions, you can highlight anything you want in a text stream.

-

Color every line containing the word "fail" in bold red, in the boot log: -tail /var/log/boot.log | colout "^.*fail.*$" red bold

+

Color every line containing the word "fail" in bold red, in the boot log:

+

tail /var/log/boot.log | colout "^.*fail.*$" red bold

-

Color in blue the user name of the ps output that have been greped: -ps aux | grep firefox | colout "^\w+\s" blue

+

Color in blue the user name of the ps output that have been greped:

+

ps aux | grep firefox | colout "^\w+\s" blue

@@ -82,24 +82,29 @@ particularly useful when examining logs.

Using groups in the regular expressions, you can highlight several matchs in different colors.

Highlight the different parts of the permissions of files in your home directories, that are rwx for user and group, -but r-x for others: -ls -l ~ | colout "^(d*)-*(rwx)(rwx)(r-x)" blue,red,yellow,green

+but r-x for others:

+

ls -l ~ | colout "^(d*)-*(rwx)(rwx)(r-x)" blue,red,yellow,green

Using colormaps, you can change the colors for each lines, this is particularly useful for reading logs that have long lines that are wrapped. -tail /var/log/kern.log | colout "^.*$" rainbow

+

tail /var/log/kern.log | colout "^.*$" rainbow

-

If you want more colors, you can highlight each line of your log with a random one among the 256 ANSI colors: -tail /var/log/dmesg | colout "^.*$" Random

+

If you want more colors, you can highlight each line of your log with a random one among the 256 ANSI colors:

+

tail /var/log/dmesg | colout "^.*$" Random

-

You can even fill your screen with esoteric disco characters (not that useful, but fun): -cat /dev/urandom | colout "." Random

+

You can color numbers according to their value on a linear scale:

+

cmake .. && make 2>&1 | colout --scale 0,100 "\[(.*)%\]" scale

+ +

+ +

You can even fill your screen with esoteric disco characters (not that useful, but fun):

+

cat /dev/urandom | colout "." Random

@@ -107,16 +112,16 @@ lines that are wrapped.

You can use colout as a basic proxy to the pygments library, if you want to highlight a source code.

-

For example, let say you want to have a quick look at a source file, without being bothered by comments and empty lines: -tail colout.py | grep -v "#" | grep -v "^\s*$" | colout -s Python monokai

+

For example, let say you want to have a quick look at a source file, without being bothered by comments and empty lines:

+

tail colout.py | grep -v "#" | grep -v "^\s*$" | colout -s Python monokai

But even more interesting, you can highlight the syntax of the matching parts of your text stream, which is useful for spotting code in a log.

-

For example, color the code parts in the output of g++ (they come inside single quotes): -make 2>&1 | colout "'.*'" Cpp vim

+

For example, color the code parts in the output of g++ (they come inside single quotes):

+

make 2>&1 | colout "'.*'" Cpp vim

@@ -126,12 +131,12 @@ for spotting code in a log.

For example, if you often build your software with cmake but find its coloring scheme a bit boring, you can use the following shortcut: -make 2>&1 | colout -t cmake

+

make 2>&1 | colout -t cmake

You can, of course, combine several calls to colout using pipes: -make 2>&1 | colout -t cmake | colout -t g++

+

make 2>&1 | colout -t cmake | colout -t g++

@@ -159,4 +164,4 @@ several calls to colout in pipes, with the possibility to use python code around - \ No newline at end of file +