class Terminal

Constants

BINARY_PATH

BINARY_PATH = (File.dirname(__FILE__) + “/../../bin/” + “terminal”).to_s

Attributes

process[R]

Public Class Methods

new(width, height) click to toggle source
# File lib/asciinema/terminal.rb, line 12
def initialize(width, height)
  @process = Process.new("#{BINARY_PATH} #{width} #{height}")
end

Public Instance Methods

cursor() click to toggle source
# File lib/asciinema/terminal.rb, line 28
def cursor
  process.write("c\n")
  c = Yajl::Parser.new.parse(process.read_line)

  Cursor.new(c['x'], c['y'], c['visible'])
end
feed(data) click to toggle source
# File lib/asciinema/terminal.rb, line 16
def feed(data)
  process.write("d\n#{data.bytesize}\n")
  process.write(data)
end
release() click to toggle source
# File lib/asciinema/terminal.rb, line 35
def release
  process.stop
end
snapshot() click to toggle source
# File lib/asciinema/terminal.rb, line 21
def snapshot
  process.write("p\n")
  lines = Yajl::Parser.new.parse(process.read_line)

  Snapshot.build(lines)
end