Sha256: e72c7386c8ef1855c70f0fb50ae587a3f87cf646f28c1c6363d5ec7aca465371
Contents?: true
Size: 1.64 KB
Versions: 30
Compression:
Stored size: 1.64 KB
Contents
# encoding: utf-8 module Elasticsearch module Extensions module ANSI module Helpers # Shortcut for {::ANSI::Table.new} # def table(data, options={}, &format) ::ANSI::Table.new(data, options, &format) end # Terminal width, based on {::ANSI::Terminal.terminal_width} # def width ::ANSI::Terminal.terminal_width-5 end # Humanize a string # def humanize(string) string.to_s.gsub(/\_/, ' ').split.map { |s| s.capitalize}.join(' ') end # Return date formatted by interval # 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 # Output divider # def ___ ('─'*Helpers.width).ansi(:faint) end extend self end end end end
Version data entries
30 entries across 30 versions & 1 rubygems