curs_get_wch 3x

curs_get_wch(3x)                                       curs_get_wch(3x)




名前

       get_wch,  wget_wch, mvget_wch, mvwget_wch, unget_wch 
       - curses 端末キーボードからワイド文字を取得 (または返却) する


書式

       #include <curses.h>

       int get_wch(wint_t *wch);
       int wget_wch(WINDOW *win, wint_t *wch);
       int mvget_wch(int y, int x, wint_t *wch);
       int mvwget_wch(WINDOW *win, int y, int x, wint_t *wch);
       int unget_wch(const wchar_t wch);


説明

        get_wch, wget_wch, mvget_wch, mvwget_wch 関数は、
       現在のウインドウまたは指定のウインドウに対応する端末から
       文字を読み込みます。
         遅延なしモードでは、待っている入力がない場合、ERR 値 を
       返します。
         遅延モードでは、プログラムはシステムから文字を渡されるまで
       待ちます。
         これは cbreakの設定により、cbreak モードでは 1 文字の後、
       nocbreak モードでは最初の改行の後になります。  
         半遅延モードでは、プログラムは文字がタイプされるか、指定
       されたタイムアウトに達するまで待ちます。

        noecho が設定されていないかぎり、これらのルーチンは
       指定されたウインドウに文字をエコーします。

        ウィンドウがパッドでなく、かつ、最後に wrefresh が
       呼び出されて以降に移動または修正された場合、他の文字が読み
       込まれる前に wrefresh が呼び出されます。

        keypad が有効な場合、ファンクションキーが押されると
       これらの関数は応答として、<curses.h> で定義され、押されたキーに
       対応する KEY_ の値を wch の指すオブジェクトにセットして 
       KEY_CODE_YES を返します。
        ファンクションキーの始まりとなりうる文字 (エスケープなど) を
       受け取ると、curses はタイマをセットします。
        シーケンスの残りが指定された時間内に来ない場合、文字は
       そのまま渡されます (訳注: not を補って訳した)。そうでなければ、
       ファンクションキーの値が渡されます。
         この理由により、大半の端末では、エスケープキーを押してから
       プログラムにエスケープが渡されるまでに遅れが発生します。

        unget_wch 関数はワイド文字 wch を入力キューの先頭に戻し、
       次の get_wch 呼び出しでこのワイド文字が返されるようにします。
        1 文字の返却は保証されます。
        get_wch 呼び出しをはさむことなく unget_wch を何度も
       呼び出すと、操作は失敗することがあります。


注意

        ヘッダファイル <curses.h> はヘッダファイル <stdio.h> を
       自動的に取り込みます (include)。

        アプリケーション自身でエスケープキーを 1 文字の機能として
       定義してはいけません。

         get_wchwget_wchmvget_wch あるいは mvwget_wch を
       使うとき、nocbreak モードと echo モードを同時に使っては
       いけません。
        各文字がタイプされた時の tty ドライバの状態によっては、
       プログラムは望ましくない結果を出す可能性があります。

        wget_wchunget_wch を除くすべての関数は、
       マクロであるかもしれないことに注意してください。


戻り値

        get_wch, wget_wch, mvget_wch, mvwget_wch 関数は
       ファンクションキーが押されたことを正常に報告するとき 
       KEY_CODE_YES を返します。
        正常にワイド文字を報告するとき OK を、その他のときに ERR を
       返します。

        unget_wch は正常終了のとき OK を返します。
       その他のときに ERR を返します。

         mv で始まる関数は、最初に wmove を使用してカーソルを移動し、
       位置がウィンドウの外だった場合、またはウィンドウポインタが
       ヌルの場合にエラーを返します。


SEE ALSO 関連項目

       curses(3x),       curs_getch(3x),        curs_ins_wch(3x),
       curs_inopts(3x), curs_move(3x), curs_refresh(3x)



                                                       curs_get_wch(3x)