Module: Elasticsearch::Extensions::ANSI::Helpers
Instance Method Summary collapse
-
#___ ⇒ Object
Output divider.
-
#date(date, interval = 'day') ⇒ Object
Return date formatted by interval.
-
#humanize(string) ⇒ Object
Humanize a string.
-
#table(data, options = {}, &format) ⇒ Object
Shortcut for ANSI::Table.new.
-
#width ⇒ Object
Terminal width, based on ANSI::Terminal.terminal_width.
Instance Method Details
#___ ⇒ Object
Output divider
71 72 73 |
# File 'lib/elasticsearch/extensions/ansi/helpers.rb', line 71 def ___ ('─'*Helpers.width).ansi(:faint) end |
#date(date, interval = 'day') ⇒ Object
Return date formatted by interval
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/elasticsearch/extensions/ansi/helpers.rb', line 46 def date(date, interval='day') case interval when 'minute' date.strftime('%a %m/%d %H:%M') + ' – ' + (date+60).strftime('%H:%M') when 'hour' date.strftime('%a %m/%d %H:%M') + ' – ' + (date+60*60).strftime('%H:%M') when 'day' date.strftime('%a %m/%d') when 'week' days_to_monday = date.wday!=0 ? date.wday-1 : 6 days_to_sunday = date.wday!=0 ? 7-date.wday : 0 start = (date - days_to_monday*24*60*60).strftime('%a %m/%d') stop = (date+(days_to_sunday*24*60*60)).strftime('%a %m/%d') "#{start} – #{stop}" when 'month' date.strftime('%B %Y') when 'year' date.strftime('%Y') else date.strftime('%Y-%m-%d %H:%M') end end |
#humanize(string) ⇒ Object
Humanize a string
40 41 42 |
# File 'lib/elasticsearch/extensions/ansi/helpers.rb', line 40 def humanize(string) string.to_s.gsub(/\_/, ' ').split.map { |s| s.capitalize}.join(' ') end |
#table(data, options = {}, &format) ⇒ Object
Shortcut for ANSI::Table.new
28 29 30 |
# File 'lib/elasticsearch/extensions/ansi/helpers.rb', line 28 def table(data, ={}, &format) ::ANSI::Table.new(data, , &format) end |
#width ⇒ Object
Terminal width, based on ANSI::Terminal.terminal_width
34 35 36 |
# File 'lib/elasticsearch/extensions/ansi/helpers.rb', line 34 def width ::ANSI::Terminal.terminal_width-5 end |