2013-03-13 119 views
0

我正在構建一個小腳本,我需要在終端中維護兩個窗口(TTY)。我想做一些類似tmux的狀態欄,但無法設置底部欄來進行更新,同時我在屏幕的其餘部分上打印了一些東西。我希望它看起來像:有沒有辦法在終端中維護兩個窗口?

|------------------------------------------| 
| Whatever I 'puts' here     | 
|           | 
|           | 
|           | 
|           | 
|------------------------------------------| 
| Status bar with whatever I 'puts' here | 
|------------------------------------------| 

我試圖用Ruby詛咒的lib,但我認爲這是什麼,我想要做的矯枉過正,再加上我敢肯定有一個更簡單的方法。謝謝!

回答

1

curses是正確的做法。您可以手動使用ANSI滾動區域和光標定位,但從長遠角度來看,這樣可以減少移植和更多工作。

如果您想了解有關ANSI終端如何工作的更多信息,這wikipedia page是一個很好的起點,有很多鏈接。

儘管我強烈建議詛咒。在一臺終端仿真器上處理直接的ANSI可能會令人頭疼;支持多個操作系統和流行的終端仿真器的細微差別是不值得的麻煩(在我看來)。(在我看來)

-1

+1對於curses(儘管你可能想要ncurses進行開發) - 它支持終端的窗口區域。

例如。 http://linux.die.net/man/3/newwin

+0

ruby​​的curses綁定將使用ncurses。 – 2013-03-13 17:56:12

相關問題