7

起動時に端末のサイズをチェックし、収まらない場合はすぐに終了する ncurses アプリがあります。

Linux では、デフォルトのサイズは 80x24 ですが、このアプリには少なくとも 25 が必要です。修正は簡単です。ncurses アプリを実行する前に、ターミナル エミュレーション ウィンドウのサイズを (X で) 変更するだけです。

pexpectでncursesアプリを自動化したいのですが、pexpectで起動すると必要以上に端末サイズが小さいと判断して動かず困っています。起動時に pexpect で明示的に端末サイズを指定する方法はありますか?

4

2 に答える 2

9

また、使用することができます:

import pexpect
child = pexpect.spawn(cmd)
child.setwinsize(400,400)
于 2012-06-08T09:41:01.933 に答える
7

pexpect を使用する前に、LINES および COLUMNS 環境変数を設定してみてください。

Pexpect は環境をサブタスクに渡し、いくつかの (すべて?) curses プログラムは開始前にこれらの環境変数を読み取ります。

例えば

import os
os.environ['LINES'] = "25"
os.environ['COLUMNS'] = "80"
# run pexpect stuff as before
于 2009-10-04T11:20:19.737 に答える