colorize
1 Procedure Reference
colorize
colorize/  argv
colorized?
2 Usage Example
7.7

colorize

 (require colorize) package: colorize
Colorize the output text of your console as you wish, source code.
NOTE: this is a exported version of ruby gem colorize.

    1 Procedure Reference

    2 Usage Example

1 Procedure Reference

procedure

(colorize str    
  color1    
  #:background color2    
  #:style style)  string?
  str : string?
  color1 : symbol?
  color2 : symbol?
  style : symbol?
Colorize str with color1 as it’s foreground color, color2 as it’s background color, and style as the it’s style.

procedure

(colorize/argv sym)  list?

  sym : symbol?
show a list of value for the colorize’s possible arguments.

procedure

(colorized? str)  boolean?

  str : string?
check if #code{str} is colorized or not.

2 Usage Example

Examples:
> (require colorize)
> (colorize/argv 'color)

'(black

  light-black

  red

  light-red

  green

  light-green

  yellow

  light-yellow

  blue

  light-blue

  magenta

  light-magenta

  cyan

  light-cyan

  white

  light-white

  default)

> (colorize/argv 'style)

'(default bold italic underline blink swap hide)

> (colorize/argv 'all)

'((color

   black

   light-black

   red

   light-red

   green

   light-green

   yellow

   light-yellow

   blue

   light-blue

   magenta

   light-magenta

   cyan

   light-cyan

   white

   light-white

   default)

  (style default bold italic underline blink swap hide))

> (colorize "this is a raw red string" 'red)

"\e[0;31;49mthis is a raw red string\e[0m"

; below is an example about how to display the the red string to your terminal
> (displayln (colorize "this is a raw red string" 'red))

this is a raw red string

> (colorize "this is a raw red string on blue with underline" 'red
                                                              #:background 'blue
                                                              #:style 'underline)

"\e[4;31;44mthis is a raw red string on blue with underline\e[0m"

; a practical usage example shown below:
> (string-join `("\n"
                 ,(colorize "Happy" 'light-red)
                 ,(colorize "Hacking" 'blue)
                 ,(colorize (string-titlecase (getenv "USER")) 'green)
                 "-"
                 ,(colorize "Racket" 'cyan)
                 ,(colorize "♥" 'magenta)
                 ,(colorize "You" 'light-magenta)
                 ,(colorize "!!!" 'red)
                 "\n\n")
               " ")

string-titlecase: contract violation

  expected: string?

  given: #f