module Remedy::Console

Constants

TIOCGWINSZ

Public Instance Methods

columns() click to toggle source
# File lib/remedy/console.rb, line 44
def columns
  size.cols
end
Also aliased as: width
cooked!() click to toggle source
# File lib/remedy/console.rb, line 39
def cooked!
  input.echo = true
  input.cooked!
end
height()
Alias for: rows
input() click to toggle source
# File lib/remedy/console.rb, line 18
def input
  @input ||= $stdin
end
interactive?() click to toggle source
# File lib/remedy/console.rb, line 63
def interactive?
  input.isatty
end
output() click to toggle source
# File lib/remedy/console.rb, line 22
def output
  @output ||= $stdout
end
raw() { || ... } click to toggle source
# File lib/remedy/console.rb, line 26
def raw
  raw!
  result = yield
ensure
  cooked!
  return result
end
raw!() click to toggle source
# File lib/remedy/console.rb, line 34
def raw!
  input.echo = false
  input.raw!
end
rows() click to toggle source
# File lib/remedy/console.rb, line 49
def rows
  size.rows
end
Also aliased as: height
set_console_resized_hook!() { |*args| ... } click to toggle source
# File lib/remedy/console.rb, line 67
def set_console_resized_hook!
  Console::Resize.set_console_resized_hook! do |*args|
    yield *args
  end
end
size() click to toggle source
# File lib/remedy/console.rb, line 54
def size
  str = [0, 0, 0, 0].pack('SSSS')
  if input.ioctl(TIOCGWINSZ, str) >= 0 then
    Size.new str.unpack('SSSS').first 2
  else
    raise UnknownConsoleSize, "Unable to get console size"
  end
end
width()
Alias for: columns