ソフト・ラベルの操作

curses は、ソフト・ファンクション・キー・ラベルを操作するためのサブルーチンを提供します。

これらのラベルは、スクリーンのボトムに表示され、エディターなどのアプリケーションを使いやすくします。 ソフト・ラベルを使用するには、slk_init サブルーチンを呼び出してから、initscr または newterm サブルーチンを呼び出す必要があります。

サブルーチン 説明
slk_clear スクリーンからソフト・ラベルをクリアします。
slk_init ソフト・ファンクション・キー・ラベルを初期化します。
slk_label 現在のラベルを戻します。
slk_noutrefresh ソフト・ラベルをリフレッシュします。 このサブルーチンは wnoutrefresh サブルーチンと機能的に等価です。
slk_refresh ソフト・ラベルをリフレッシュします。 このサブルーチンは refresh サブルーチンと機能的に等価です。
slk_restore slk_clear サブルーチンへのコールの後に、 ソフト・ラベルをスクリーンに復元します。
slk_set ソフト・ラベルを設定します。
slk_touch slk_noutrefresh サブルーチンに対する次のコールで、ソフト・ラベルを更新します。

ソフト・ラベルを管理するために、curses は stdscr のサイズを 1 行削減します。 この行は、ソフト・ラベル関数で使用するために予約されます。 この予約は、LINES 環境変数の値も削減されることを意味します。 多くの端末は、組み込まれたソフト・ラベルをサポートしています。 組み込まれたソフト・ラベルがサポートされている場合、curses はそれらのラベルを使用します。 それ以外の場合、curses はソフトウェアを使用してソフト・ラベルをシミュレートします。

ソフト・ラベルをサポートする多くの端末は、8 つのラベルを持っているので、curses は同じ標準に従います。 ラベル文字列は 8 文字に制限されます。 curses はラベルを以下の 2 つのパターンのいずれかを使用して並べます。 3-2-3 (左 3、中央 2、右 3) または 4-4 (左 4、右 4)。

特定のラベルの文字列を指定するには、slk_set サブルーチンを呼び出します。 このサブルーチンは、ラベル上で文字列を左揃え、右揃え、 または中央揃えにするかどうかについても、curses に指示します。 ラベル名を、slk_set サブルーチンによって位置調整する前に入手するには、slk_label サブルーチンを使用します。 slk_clear および slk_restore サブルーチンはそれぞれ、ソフト・ラベルをクリアおよび復元します。 通常、ソフト・ラベルを更新するために、ユーザーのプログラムはラベルごとに slk_noutrefresh サブルーチンを呼び出してから、slk_refresh サブルーチンを 1 回呼び出して、実際の出力を実行する必要があります。 slk_noutrefresh サブルーチンに対する次のコールですべてのソフト・ラベルを出力するには、slk_touch サブルーチンを使用します。