Class: SQLColor
- Inherits:
-
Object
- Object
- SQLColor
- Defined in:
- lib/tasks/sql_color.rb
Constant Summary collapse
- BLACK =
30- RED =
31- GREEN =
32- YELLOW =
33- BLUE =
34- MAGENTA =
35- CYAN =
36- WHITE =
37
Class Method Summary collapse
Class Method Details
.apply(color_code, text, bold = false) ⇒ Object
24 25 26 27 |
# File 'lib/tasks/sql_color.rb', line 24 def self.apply(color_code, text, bold=false) bold = bold ? ";1" : "" "\e[#{color_code}#{bold}m#{text}\e[0m" end |
.colorize(sql) ⇒ Object
14 15 16 17 18 19 20 21 22 |
# File 'lib/tasks/sql_color.rb', line 14 def self.colorize(sql) if sql.strip.start_with?('--') return apply(CYAN, sql) end sql = sql.gsub(/(CREATE|ALTER|TABLE|COLUMN|ADD|TYPE|BEGIN|TRANSACTION|COMMIT|GRANT|REVOKE| ON |INDEX|UPDATE|SET|WHERE)/){|s|apply(GREEN, s)} sql = sql.gsub(/(DROP)/){|s|apply(RED, s)} sql = sql.gsub(/("[^"]*")/){|s|apply(WHITE, s, bold=true)} return sql end |