climate
climate.cr  
  
 
Small helper utility to make your CLI program output 🌈 coloured by means of configurable markup styles. Think of it as your CLI-mate :)
Installation
- 
Add the dependency to your shard.yml:dependencies: climate: github: Sija/climate.cr
- 
Run shards install
Usage
require "climate"
message = "Usage: {#{PROGRAM_NAME}} <required-arg> [optional-arg]"
# you can call `Climate.parse` method directly
puts Climate.parse(message)
# or use a `String#climatize` extension
puts message.climatize
Defaults
Default styles are:
- <>colored in green (keeping delimiters)
- []colored in yellow (keeping delimiters)
- {}colored in blue (hiding delimiters)
- !¡colored in red (hiding delimiters)
Configuration
You can change the global settings with a #configure block:
Climate.configure do |settings|
  # use defaults
  settings.use_defaults!
  # and/or configure your own styles
  settings.styles << Climate::Style.new(
    delimiters: {'?', '¿'},
    keep_delimiters: false,
    colors: {
      fore: :magenta,
      back: :default,
    },
    decoration: :bold
  )
end
For the colors and decoration reference values see
documentation for the Colorize
module (which Climate uses under the hood).
Contributing
- Fork it (https://github.com/Sija/climate.cr/fork)
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request
Contributors
- Sijawusz Pur Rahnama - creator and maintainer