Terminfo

Terminfo(タームインフォ)は、ディスプレイ端末をデバイスに依存せず利用するためのライブラリデータベースです。1981年から1982年にかけて、Mark Hortonによってtermcapの改良版として開発されました。

Terminfoの主な改良点:

高速なアクセス: 端末の記述へのアクセスを高速化しました。
分かりやすいケーパビリティ名: 端末の機能を表すケーパビリティ名を、より長く分かりやすいものに変更しました。
汎用的な文字列評価式: 端末へ送信する文字列を、より一般的に評価できる式で記述できるようにしました。

TerminfoはUNIX System V Release 2に採用され、System V環境ではtermcapよりも広く利用されるようになりました。一方、BSD系システムでは引き続きtermcapが使われました。1982年から1984年にかけてPavel Curtisによって開発されたpcursesは、terminfoをモデルにしており、Mark Hortonによる修正を取り込みつつ、他のUNIX環境でも利用できるようになりました。より詳細な情報は、1986年12月からcomp.sources.unixニュースグループで公開された一連の投稿で確認できます。

Terminfoデータベースには、数百種類ものディスプレイ端末のケーパビリティが記述されています。これにより、プログラムは利用する端末の種類を意識することなく、キャラクタベースのインターフェースを実装することが可能です。データベースには、以下のような情報が含まれています。

画面の行数
モノクロモード(色を使用しない)の設定
ビープ音の代わりに画面フラッシュを使用する設定

Termcapとは異なり、terminfoデータベースにはソース形式とコンパイル済み形式の2種類が存在します。コンパイル済み形式の上限は仕様として定義されていませんが、多くの実装ではtic(terminal information compiler)のドキュメントにおいて、コンパイルされたエントリは4,096バイトを超えてはならないとされています。

関連情報:

端末: ディスプレイなどの入出力装置。
curses: キャラクターベースの画面制御を行うためのライブラリ
Termcap: terminfoの前身となる端末情報データベース
tput: 端末の機能を制御するコマンド。

参考文献:

Current terminfo data
Termcap/Terminfo Resources Page at Eric S. Raymond's website
* man terminfo(5)

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。