Module: Gherkin::Formatter::AnsiEscapes
- Included in:
- PrettyFormatter, PrettyFormatter::ColorFormat
- Defined in:
- lib/gherkin/formatter/ansi_escapes.rb
Overview
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 <a href=“mipsisrisc.com/rambling/2008/06/27/lscolorsls_colors-now-with-linux-support/”>$LSCOLORS/$LS_COLORS</a>
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
Constant Summary collapse
- 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/ h[$1] + ',bold' end end.merge({ 'undefined' => 'yellow', 'pending' => 'yellow', 'executing' => 'grey', 'failed' => 'red', 'passed' => 'green', 'outline' => 'cyan', 'skipped' => 'cyan', 'comments' => 'grey', 'tag' => 'cyan' })
Instance Method Summary collapse
Instance Method Details
#reset ⇒ Object
86 87 88 |
# File 'lib/gherkin/formatter/ansi_escapes.rb', line 86 def reset "\e[0m" end |
#up(n) ⇒ Object
90 91 92 |
# File 'lib/gherkin/formatter/ansi_escapes.rb', line 90 def up(n) "\e[#{n}A" end |