class Bundler::Thor::Shell::HTML
Inherit from Bundler::Thor::Shell::Basic and add set_color behavior. Check Bundler::Thor::Shell::Basic to see all available methods.
Constants
- BLACK
- Set the terminal’s foreground - HTMLcolor to black.
- BLUE
- Set the terminal’s foreground - HTMLcolor to blue.
- BOLD
- The start of an - HTMLbold sequence.
- CYAN
- Set the terminal’s foreground - HTMLcolor to cyan.
- GREEN
- Set the terminal’s foreground - HTMLcolor to green.
- MAGENTA
- Set the terminal’s foreground - HTMLcolor to magenta.
- ON_BLACK
- Set the terminal’s background - HTMLcolor to black.
- ON_BLUE
- Set the terminal’s background - HTMLcolor to blue.
- ON_CYAN
- Set the terminal’s background - HTMLcolor to cyan.
- ON_GREEN
- Set the terminal’s background - HTMLcolor to green.
- ON_MAGENTA
- Set the terminal’s background - HTMLcolor to magenta.
- ON_RED
- Set the terminal’s background - HTMLcolor to red.
- ON_WHITE
- Set the terminal’s background - HTMLcolor to white.
- ON_YELLOW
- Set the terminal’s background - HTMLcolor to yellow.
- RED
- Set the terminal’s foreground - HTMLcolor to red.
- WHITE
- Set the terminal’s foreground - HTMLcolor to white.
- YELLOW
- Set the terminal’s foreground - HTMLcolor to yellow.
Public Instance Methods
Ask something to the user and receives a response.
Example¶ ↑
ask(“What is your name?”)
TODO: Implement ask for Bundler::Thor::Shell::HTML
# File bundler/vendor/thor/lib/thor/shell/html.rb, line 70 def ask(statement, color = nil) raise NotImplementedError, "Implement #ask for Bundler::Thor::Shell::HTML" end
Set color by using a string or one of the defined constants. If a third option is set to true, it also adds bold to the string. This is based on Highline implementation and it automatically appends CLEAR to the end of the returned String.
# File bundler/vendor/thor/lib/thor/shell/html.rb, line 51 def set_color(string, *colors) if colors.all? { |color| color.is_a?(Symbol) || color.is_a?(String) } html_colors = colors.map { |color| lookup_color(color) } "<span style=\"#{html_colors.join('; ')};\">#{Bundler::Thor::Util.escape_html(string)}</span>" else color, bold = colors html_color = self.class.const_get(color.to_s.upcase) if color.is_a?(Symbol) styles = [html_color] styles << BOLD if bold "<span style=\"#{styles.join('; ')};\">#{Bundler::Thor::Util.escape_html(string)}</span>" end end
Protected Instance Methods
# File bundler/vendor/thor/lib/thor/shell/html.rb, line 76 def can_display_colors? true end