我在Linux(和konsole,如果它有所作为)工作,并希望对屏幕有一些基本的控制。我需要的是简单而且不需要ncurses的全部功能,我真的需要三个简单的命令,“清除屏幕”,“转到x和y”和“使用这种颜色”。
有人可以提出建议吗?
答案 0 :(得分:2)
要控制屏幕,您需要发送(或打印)ANSI控制序列。
要清除屏幕,序列为\e[2J
,您可以puts
或print
到STDOUT
,具体取决于您的需求。
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/