没有诅咒的红宝石终端输出?

时间:2013-04-28 13:47:59

标签: ruby ncurses

我在Linux(和konsole,如果它有所作为)工作,并希望对屏幕有一些基本的控制。我需要的是简单而且不需要ncurses的全部功能,我真的需要三个简单的命令,“清除屏幕”,“转到x和y”和“使用这种颜色”。

有人可以提出建议吗?

1 个答案:

答案 0 :(得分:2)

要控制屏幕,您需要发送(或打印)ANSI控制序列。 要清除屏幕,序列为\e[2J,您可以putsprintSTDOUT,具体取决于您的需求。

Ruby中的一些示例方法:

def clear_screen
  print "\e[2J"
end

def clear_line
  print "\e[2K"
end

def reset_cursor
  print "\e[H"
end

def position_cursor(y,x)
  print "\e[#{y};#{x}H"
end

def red
  print "\e[0;31m"
end

序列表在这里: http://ascii-table.com/ansi-escape-sequences.php

您可以在此处查看颜色序列表: http://www.pixelbeat.org/docs/terminal_colours/