Termcap
termcapデータベースは1個以上の端末の記述からなる。
Termcap (terminal capability) はUnix系オペレーティングシステム (OS) で使われるライブラリでありデータベースである。 これを使うと端末をデバイス独立に扱うことができ、移植性の高いテキストモードのアプリケーションを書く労力を大いに軽減できる。 最初のtermcapは1978年にビル・ジョイによってBSD用に書かれ、 その後ほぼすべてのUnix系OSに移植された。それ以前のIncompatible Timesharing Systemにおける端末データベースの設計の影響を受けていると言われる。
termcapデータベースには数百種類ものディスプレイ端末の端末ケーパビリティが記述されている。 これによってプログラムは端末の種類に依存せずにキャラクタベースのインターフェイスを実現できる。 viやEmacsなどのスクリーンエディタはtermcapを使っているであろうプログラムの例である。
データベースには以下のような情報が記述されている:
ディスプレイのカラム幅がいくつであるか
カーソルを任意の位置に移動させるために送信する文字列(行と列の番号をどうエンコーディングするかも含め)
画面を上にスクロールする方法
スクロール操作に必要なパディングの量
環境変数 TERM には端末の種類名をセットする。
環境変数 TERMCAP にはtermcapデータベースをセットできる。 使われ方としては、端末エミュレータがその特性をシェルに伝えるために1個の記述を入れるという手法がよくある。
環境変数 TERMPATH は比較的新しい実装で使われ、termcapファイルを検索するパスをセットする。