Module: Term

Extended by:
Term
Included in:
Term
Defined in:
lib/epitools/term.rb

Overview

Example usage:

puts Term::Table[ (1..100).to_a ].horizontally #=> prints all the numbers, ordered across rows
puts Term::Table[ (1..100).to_a ].vertically #=> prints all the numbers, ordered across columns
puts Term::Table[ [[1,2], [3,4]] ] #=> prints the table that was supplied

Term::Table.new do |t|
  t.row [...]
  t.rows[5] = [...]
  t.rows << [...]
  t.col []
end.to_s

table.compact.to_s #=> minimize the table's columns

Defined Under Namespace

Classes: Table, Window

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#wrapObject

Returns the value of attribute wrap.



26
27
28
# File 'lib/epitools/term.rb', line 26

def wrap
  @wrap
end

#xObject

Returns the value of attribute x.



26
27
28
# File 'lib/epitools/term.rb', line 26

def x
  @x
end

#yObject

Returns the value of attribute y.



26
27
28
# File 'lib/epitools/term.rb', line 26

def y
  @y
end

Instance Method Details

#clearObject



40
41
42
# File 'lib/epitools/term.rb', line 40

def clear
  print "\e[H\e[J"
end

#color(fore, back = nil) ⇒ Object



44
45
46
47
# File 'lib/epitools/term.rb', line 44

def color(fore, back=nil)
  @fore = fore
  @back = back if back
end

#goto(x, y) ⇒ Object



37
# File 'lib/epitools/term.rb', line 37

def goto(x,y); @x, @y = x, y; end

#heightObject



36
# File 'lib/epitools/term.rb', line 36

def height; size[1]; end

#posObject



38
# File 'lib/epitools/term.rb', line 38

def pos; [@x, @y]; end

#puts(s) ⇒ Object



49
50
51
# File 'lib/epitools/term.rb', line 49

def puts(s)
  # some curses shit
end

#sizeObject

Return the [width,height] of the terminal.



31
32
33
# File 'lib/epitools/term.rb', line 31

def size
  STDIN.winsize.reverse
end

#widthObject



35
# File 'lib/epitools/term.rb', line 35

def width;  size[0]; end