Ncurses

ncurses は、Unix 系オペレーティングシステムで利用される端末制御ライブラリであり、文字表示を基本とするターミナル…

Ncurses
ncurses
開発元 GNUプロジェクト
最新版
6.5[1] / 2024年4月27日 (2年前) (2024-04-27)
リポジトリ ウィキデータを編集
対応OS POSIX互換
種別 ウィジェット・ツールキット
ライセンス MIT
公式サイト ncurses
テンプレートを表示

ncurses は、Unix 系オペレーティングシステムで利用される端末制御ライブラリであり、文字表示を基本とするターミナル上で、画面を持つ対話的なアプリケーションを作成するための基盤を提供する。

ncurses はテキストユーザインタフェース (TUI) そのものではなく、TUI を支える基盤技術である。具体的には、文字セル単位での画面描画、差分更新による効率的な再描画、入力イベントの取得、描画領域を分割するウィンドウ機構、文字属性や色の管理など、端末上で対話的な画面を構成するための基本的な機能を提供する。

概要

ncursesは、4.4 BSDに含まれていたcursesライブラリの後継として開発された実装であり、名称は “new curses” に由来する。ncurses は、既存の curses 向けプログラムとの互換性を維持しながら、安定した動作を実現することを目的として設計された。

ncurses では、アプリケーションが扱う仮想的な画面と、実際に端末へ出力される画面とを分離して管理する方式を採用している。これにより、画面全体を毎回描き直すのではなく、変更があった部分のみを更新することが可能となり、低速な回線やリモートシェル環境においても効率的な画面表示が行える。

端末ごとの制御情報には主にterminfoデータベースが用いられるが、互換性のためにtermcapを使うことができる。この仕組みにより、実際のハードウェア端末から端末エミュレータまで、多様な環境で同一のアプリケーションを動作させることが可能となっている。

ncurses の開発と保守は、長年にわたり Thomas E. Dickey が中心となって行っており、現在も事実上のメンテナとしてプロジェクトを主導している。

外部リンク

脚注

  1. ^ ncurses 6.5”. 2025年1月15日閲覧。

関連項目

ツールキット

言語バインディング

ディストリビューションとパッケージ

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.