0

ターミナル (TTY) で 2 つのウィンドウを維持する必要がある小さなスクリプトを作成しています。tmux のステータス バーのようなことをしたいのですが、画面の残りの部分に何かを印刷している間に、下部のバーを更新することができません。私はそれが次のようになりたい:

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

Ruby curses lib を試してみましたが、やりたいことにはやり過ぎだと思います。さらに、もっと簡単な方法があると確信しています。ありがとう!

4

2 に答える 2

1

呪いはこれを行う正しい方法です。ANSIスクロール領域とカーソル位置を手動で使用することもできますが、これは移植性が低く、長期的にはより多くの作業が必要になります。

ANSI端末がどのように機能するかについての詳細が必要な場合は、このウィキペディアのページから多くのリンクを入手できます。

しかし、私は呪いを強くお勧めします。1つのターミナルエミュレータでストレートANSIを処理することは、頭痛の種になる可能性があります。複数のOSをサポートし、人気のあるターミナルエミュレーターのわずかな違いは、問題を起こす価値がありません(私の意見では)。

于 2013-03-13T17:32:22.100 に答える
-1

呪いの+1(おそらく進行中の開発のためにncursesが必要ですが)-ターミナルのウィンドウ領域をサポートしています。

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

于 2013-03-13T17:51:31.623 に答える