2013-04-28 52 views
0

我正在Linux(和konsole,如果這使得sifference),並希望對屏幕有一些基本的控制。我需要的是簡單的,並不需要ncurses的全部力量,我真的需要三個簡單的命令,「清除屏幕」,「去x和y」和「使用這種顏色」。紅寶石終端輸出沒有詛咒?

任何人都可以提出建議嗎?

+1

什麼問題ncurses的?對於您正在查找的這三個命令而言,這非常明智 – 2013-04-28 18:40:20

回答

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/

+0

另一個有用的博客文章讓您開始: http://trainofthought.segfault.gr/2011/11/29/ruby-terminal-manipulation-without-ncurses/ – 2013-08-28 04:26:56