ncurses (new curses) は、System V Rel 4.0(及びそれ以前)の curses の フリーなソフトウエアエミュレーションです。ncurses は terminfo 型式を 使用し、パッド、カラー、複数のハイライト、フォーム文字、 ファンクションキーマッピングをサポートします。 このライブラリは対話的なものであるため、 Web アプリケーションを作成する際にはほとんど使用されませんが、 コマンドラインから PHP を使用 するスクリプトを書く際には有用です。
警告 |
この拡張モジュールは、 実験的 なものです。この拡張モジュールの動作・ 関数名・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 このモジュールは自己責任で使用してください。 |
Ncurses は以下のプラットフォームで利用可能です。
AIX
BeOS
Cygwin
Digital Unix (aka OSF1)
FreeBSD
GNU/Linux
HPUX
IRIX
OS/2
SCO OpenServer
Solaris
SunOS
注意: この拡張モジュールは PECL レポジトリに移動 されており、以下のバージョン以降 PHP にバンドルされなくなっています。 PHP 6.0.0
ncurses ライブラリおよびヘッダファイルが必要です。最新のバージョンを ftp://ftp.gnu.org/pub/gnu/ncurses/ あるいは他の GNU ミラーサイトからダウンロードしてください。
これらの関数を動作させるには、--with-ncurses[=DIR]
を指定して CGI または
CLI バージョンの PHP をコンパイルする必要があります。
設定ディレクティブは定義されていません。
この拡張モジュールではウィンドウ、パネルおよびパッドリソースを定義しています。
以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。
エラー時に、ncurese 関数は NCURSES_ERR を返します。
表 1. ncurses カラー定数
定数 | 意味 |
---|---|
NCURSES_COLOR_BLACK | 色なし(黒) |
NCURSES_COLOR_WHITE | 白 |
NCURSES_COLOR_RED | 赤 - 端末がカラーモードの場合のみサポート |
NCURSES_COLOR_GREEN | 緑 - 端末がカラーモードの場合のみサポート |
NCURSES_COLOR_YELLOW | 黄 - 端末がカラーモードの場合のみサポート |
NCURSES_COLOR_BLUE | 青 - 端末がカラーモードの場合のみサポート |
NCURSES_COLOR_CYAN | シアン - 端末がカラーモードの場合のみサポート |
NCURSES_COLOR_MAGENTA | マゼンタ - 端末がカラーモードの場合のみサポート |
表 2. ncurses キー定数
定数 | 意味 |
---|---|
NCURSES_KEY_F0 - NCURSES_KEY_F64 | ファンクションキー F1 - F64 |
NCURSES_KEY_DOWN | 下矢印 |
NCURSES_KEY_UP | 上矢印 |
NCURSES_KEY_LEFT | 左矢印 |
NCURSES_KEY_RIGHT | 右矢印 |
NCURSES_KEY_HOME | ホームキー(upward+左矢印) |
NCURSES_KEY_BACKSPACE | バックスペース |
NCURSES_KEY_DL | 行削除 |
NCURSES_KEY_IL | 行挿入 |
NCURSES_KEY_DC | 文字削除 |
NCURSES_KEY_IC | 文字挿入あるいは挿入モード移行 |
NCURSES_KEY_EIC | 文字挿入モード終了 |
NCURSES_KEY_CLEAR | 画面消去 |
NCURSES_KEY_EOS | 画面最下部までを消去 |
NCURSES_KEY_EOL | 行末までを消去 |
NCURSES_KEY_SF | 1 行スクロール |
NCURSES_KEY_SR | 1 行逆スクロール |
NCURSES_KEY_NPAGE | 次ページ |
NCURSES_KEY_PPAGE | 前ページ |
NCURSES_KEY_STAB | タブ |
NCURSES_KEY_CTAB | タブ消去 |
NCURSES_KEY_CATAB | 全タブ消去 |
NCURSES_KEY_SRESET | ソフト(部分)リセット |
NCURSES_KEY_RESET | リセットあるいはハードリセット |
NCURSES_KEY_PRINT | 印刷 |
NCURSES_KEY_LL | 左下 |
NCURSES_KEY_A1 | キーパッドの左上 |
NCURSES_KEY_A3 | キーパッドの右上 |
NCURSES_KEY_B2 | キーパッドの中央 |
NCURSES_KEY_C1 | キーパッドの左下 |
NCURSES_KEY_C3 | キーパッドの右下 |
NCURSES_KEY_BTAB | バックタブ |
NCURSES_KEY_BEG | 先頭 |
NCURSES_KEY_CANCEL | キャンセル |
NCURSES_KEY_CLOSE | 閉じる |
NCURSES_KEY_COMMAND | cmd (コマンド) |
NCURSES_KEY_COPY | コピー |
NCURSES_KEY_CREATE | 作成 |
NCURSES_KEY_END | 行末 |
NCURSES_KEY_EXIT | 終了 |
NCURSES_KEY_FIND | 検索 |
NCURSES_KEY_HELP | ヘルプ |
NCURSES_KEY_MARK | マーク |
NCURSES_KEY_MESSAGE | メッセージ |
NCURSES_KEY_MOVE | 移動 |
NCURSES_KEY_NEXT | 次 |
NCURSES_KEY_OPEN | オープン |
NCURSES_KEY_OPTIONS | オプション |
NCURSES_KEY_PREVIOUS | 前 |
NCURSES_KEY_REDO | やり直し |
NCURSES_KEY_REFERENCE | ref (参照) |
NCURSES_KEY_REFRESH | リフレッシュ |
NCURSES_KEY_REPLACE | 置換 |
NCURSES_KEY_RESTART | 再起動 |
NCURSES_KEY_RESUME | 再開 |
NCURSES_KEY_SAVE | 保存 |
NCURSES_KEY_SBEG | shiftet beg (beginning) |
NCURSES_KEY_SCANCEL | shift + キャンセル |
NCURSES_KEY_SCOMMAND | shift + command |
NCURSES_KEY_SCOPY | shift + コピー |
NCURSES_KEY_SCREATE | shift + create |
NCURSES_KEY_SDC | shift + 文字削除 |
NCURSES_KEY_SDL | shift + 行削除 |
NCURSES_KEY_SELECT | 選択 |
NCURSES_KEY_SEND | shift + end |
NCURSES_KEY_SEOL | shift + 行末 |
NCURSES_KEY_SEXIT | shift + exit |
NCURSES_KEY_SFIND | shift + 検索 |
NCURSES_KEY_SHELP | shift + ヘルプ |
NCURSES_KEY_SHOME | shift + ホーム |
NCURSES_KEY_SIC | shift + input |
NCURSES_KEY_SLEFT | shift + 左矢印 |
NCURSES_KEY_SMESSAGE | shift + メッセージ |
NCURSES_KEY_SMOVE | shift + 移動 |
NCURSES_KEY_SNEXT | shift + 次 |
NCURSES_KEY_SOPTIONS | shift + オプション |
NCURSES_KEY_SPREVIOUS | shift + 前 |
NCURSES_KEY_SPRINT | shift + 印刷 |
NCURSES_KEY_SREDO | shift + やり直し |
NCURSES_KEY_SREPLACE | shift + 置換 |
NCURSES_KEY_SRIGHT | shift + 右矢印 |
NCURSES_KEY_SRSUME | shift + 再開 |
NCURSES_KEY_SSAVE | shift + 保存 |
NCURSES_KEY_SSUSPEND | shift + サスペンド |
NCURSES_KEY_UNDO | 元に戻す |
NCURSES_KEY_MOUSE | マウスイベントが発生 |
NCURSES_KEY_MAX | 最大のキーの値 |
表 3. マウス定数
定数 | 意味 |
---|---|
NCURSES_BUTTON1_RELEASED - NCURSES_BUTTON4_RELEASED | ボタン (1-4) が離された |
NCURSES_BUTTON1_PRESSED - NCURSES_BUTTON4_PRESSED | ボタン (1-4) が押された |
NCURSES_BUTTON1_CLICKED - NCURSES_BUTTON4_CLICKED | ボタン (1-4) がクリックされた |
NCURSES_BUTTON1_DOUBLE_CLICKED - NCURSES_BUTTON4_DOUBLE_CLICKED | ボタン (1-4) がダブルクリックされた |
NCURSES_BUTTON1_TRIPLE_CLICKED - NCURSES_BUTTON4_TRIPLE_CLICKED | ボタン (1-4) がトリプルクリックされた |
NCURSES_BUTTON_CTRL | クリック中に ctrl が押された |
NCURSES_BUTTON_SHIFT | クリック中に shift が押された |
NCURSES_BUTTON_ALT | クリック中に alt が押された |
NCURSES_ALL_MOUSE_EVENTS | すべてのマウスイベントを報告する |
NCURSES_REPORT_MOUSE_POSITION | マウスの位置を報告する |