Module | Gherkin::Formatter::AnsiEscapes |
In: |
lib/gherkin/formatter/ansi_escapes.rb
|
Defines aliases for ANSI coloured output. Default colours can be overridden by defining a GHERKIN_COLORS variable in your shell, very much like how you can tweak the familiar POSIX command ls with $LSCOLORS: linux-sxs.org/housekeeping/lscolors.html
The colours that you can change are:
undefined: | defaults to yellow |
pending: | defaults to yellow |
pending_arg: | defaults to yellow,bold |
executing: | defaults to grey |
executing_arg: | defaults to grey,bold |
failed: | defaults to red |
failed_arg: | defaults to red,bold |
passed: | defaults to green |
passed_arg: | defaults to green,bold |
outline: | defaults to cyan |
outline_arg: | defaults to cyan,bold |
skipped: | defaults to cyan |
skipped_arg: | defaults to cyan,bold |
comment: | defaults to grey |
tag: | defaults to cyan |
For instance, if your shell has a black background and a green font (like the "Homebrew" settings for OS X’ Terminal.app), you may want to override passed steps to be white instead of green. Examples:
export GHERKIN_COLORS="passed=white" export GHERKIN_COLORS="passed=white,bold:passed_arg=white,bold,underline"
(If you‘re on Windows, use SET instead of export). To see what colours and effects are available, just run this in your shell:
ruby -e "require 'rubygems'; require 'term/ansicolor'; puts Term::ANSIColor.attributes"
Although not listed, you can also use grey
COLORS | = | { 'black' => "\e[30m", 'red' => "\e[31m", 'green' => "\e[32m", 'yellow' => "\e[33m", 'blue' => "\e[34m", 'magenta' => "\e[35m", 'cyan' => "\e[36m", 'white' => "\e[37m", 'grey' => "\e[90m", 'bold' => "\e[1m" |
ALIASES | = | Hash.new do |h,k| if k.to_s =~ /(.*)_arg/ |