Class: String

Inherits:
Object show all
Defined in:
lib/pretty_debug.rb,
lib/pretty_debug.rb

Constant Summary collapse

@@indent =
"  "

Instance Method Summary collapse

Instance Method Details

#bfObject



265
# File 'lib/pretty_debug.rb', line 265

def bf; "#{vt100("01".freeze)}#{self}#{vt100}" end

#bg(sym) ⇒ Object



270
271
272
# File 'lib/pretty_debug.rb', line 270

def bg sym; "#{vt100(40+
{black: 0, red: 1, green: 2, yellow: 3, blue: 4, magenta: 5, cyan: 6, white: 7}[sym.to_sym]
)}#{self}#{vt100}" end

#color(sym) ⇒ Object



267
268
269
# File 'lib/pretty_debug.rb', line 267

def color sym; "#{vt100(30+
{black: 0, red: 1, green: 2, yellow: 3, blue: 4, magenta: 5, cyan: 6, white: 7}[sym.to_sym]
)}#{self}#{vt100}" end

#de_vt100Object



273
# File 'lib/pretty_debug.rb', line 273

def de_vt100; gsub(/\e\[\d*m/, "") end

#ellipsis(n) ⇒ Object



316
317
318
319
320
321
# File 'lib/pretty_debug.rb', line 316

def ellipsis n
  if length <= n then self
  elsif n.odd? then "#{slice(0..n/2-3)}...#{slice(-n/2+2..-1)}"
  else "#{slice(0..n/2-3)}...#{slice(-n/2+1..-1)}"
  end
end

#indent(n = 1) ⇒ Object



312
# File 'lib/pretty_debug.rb', line 312

def indent n = 1; gsub(/^/, @@indent * n) end

#terminal_escapeObject



264
# File 'lib/pretty_debug.rb', line 264

def terminal_escape; "\"#{self}\"" end

#unchompObject



314
# File 'lib/pretty_debug.rb', line 314

def unchomp; sub(/#$/?\z/, $/) end

#unchomp!Object



315
# File 'lib/pretty_debug.rb', line 315

def unchomp!; sub!(/#$/?\z/, $/) end

#underlineObject



266
# File 'lib/pretty_debug.rb', line 266

def underline; "#{vt100("04".freeze)}#{self}#{vt100}" end

#unindentObject



313
# File 'lib/pretty_debug.rb', line 313

def unindent; gsub(/^#{match(/^\s+/)}/, "".freeze).chomp end

#verbatimObject



263
# File 'lib/pretty_debug.rb', line 263

def verbatim; bg(:blue) end