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



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

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

#bg(sym) ⇒ Object



240
241
242
# File 'lib/pretty_debug.rb', line 240

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



237
238
239
# File 'lib/pretty_debug.rb', line 237

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



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

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

#ellipsis(n) ⇒ Object



286
287
288
289
290
291
# File 'lib/pretty_debug.rb', line 286

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



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

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

#terminal_escapeObject



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

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

#unchompObject



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

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

#unchomp!Object



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

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

#underlineObject



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

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

#unindentObject



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

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

#verbatimObject



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

def verbatim; bg(:blue) end