我正在使用ncurses
來獲取用戶輸入的簡單UI。 輸入是1行高度的窗口,所有的都是光標。我正在使用wgetnstr(inputwindow, input, inputlen)
。使用stdin和ncurses
我想要的是能夠編輯輸入行,就像readline一樣。也就是說,能夠使用^ W(^ U工作btw),回到緩衝區並進行更改等。 如果我可以保留輸入的歷史記錄並能夠使用「向上」箭頭訪問它,那也會很棒。
但是,我一直無法使stdin與除ncurses
提供的函數之外的任何其他工作無關。如果這能讓我獲得上述好處,那麼放棄inputwindow
就可以了。但我不確定是否有可能。
所以,
- 是否有可能使用
readline
或使用ncurses
並提供輸入功能具有這樣的功能? 和/或 - 是否有可能以及如何在curses窗口下方有空行,這將允許用戶直接使用stdin提供輸入(即所有常見的讀取輸入函數,因此即使直接使用
readline
) ?
如果這些都是可行的,一些簡單的代碼將是巨大的,但指導和指針也很棒。如果不是這樣,那麼知道這件事會很高興,而不是浪費時間去努力工作。
[這裏](http://stackoverflow.com/questions/1706678/ncurses-and-stdin-blocking-problem)是一個類似的問題,但不是真的一樣。 – c00kiemon5ter 2012-04-03 09:54:12
可能是我想要的最好的東西,是客戶如何處理輸入。例如。 'irssi'和'weechat'。我會挖一點。 – c00kiemon5ter 2012-04-03 10:10:39