TERMCAP(5) Linux Programmer's Manual TERMCAP(5)
termcap - 端末機能のデータベース
termcap データベースは、 文字単位で動作する端末やプリンタの機能を-
述するための旧式の機構である。
この機構は古いプログラムを動作させるためだけに保持されているので、
新しいプログラムは terminfo(5)
データベースとそれに関連したライブラリを用いるべい任△襦
/etc/termcap は、多くの異なる種類の端末に関する機能を列気靴織▲好-
ーファイル (データベースマスター) である。 プログラムは termcap
を読み込んで、
実際に使用している端末に個別のエスケープコード群を取得する。
これを用いると、その端末の視覚的な声舛鮴御することがでい
(端末の他の声舛 stty(1) で制御する)。 termcap データベースは、環曲竸
TERM の値で引かれる。
termcap のエントリは、単一の論理行でなければならない。 ただし、行末に
'\' を用いればそこでの改行を抑制することがでい襦 フィールドは ':'
で分割される。 各エントリの最初のフィールドは左側先頭から始まり、
内容はその端末の名前のリストである。名前の区切りには '|' が用いられる。
最初のサブフィールドは (4.3 以前のバージョンのBSD termcap エントリでは)
2 文字からなる短い名前となっている。この短い名前は
大文字もしくは小文字で構成される。4.4BSD の termcap エントリでは、
このフィールドは省略される。
2 番目 (最新の 4.4BSD フォーマットでは 1 番目) のサブフィールドには、
環曲竸 TERM で用いられる名称が入る。
このフィールドには小文字しか使えない。
選択可能なハードウェア機能は、ハイフンと接尾語 (suffix)
を名称の後に追加することによって示す必要がある。以下の例を見よ。
慣習的な接尾語には、w (80 文字以上の幅がある)、 am (automatic margins:
自動的な行の折り返し)、 nam (non automatic margins:
自動的でない行の折り返し)、 rv (reverse video display: 反転ビデオ表示)
などがある。 3番目のサブフィールドには、 このterm-
capエントリーに対する長い説明的な名称が入る。
この後に続くフィールドには、端末の機能を欺劼垢襦 機能を-
述する行が継続する場合は、
左端から1つのタブをおいてインデントしなければならない。
順序については定義されていないが、
大文字小文字は区別せずにアルファベット順にならべ、
始めはブール値の、次は数値の、最後は文字列の機能を書くことが推奨されている。
同じような働い鬚垢覽’修 1 行にまとめて書くと良い。
例:
Head line: vt|vt101|DEC VT 101 terminal in 80 character mode:\
Head line: Vt|vt101-w|DEC VT 101 terminal in (wide) 132 character mode:\
Boolean: :bs:\
Numeric: :co#80:\
String: :sr=\E[H:\
ブ屐ー璽ル訝値佑で濃指慊定蠅す垢る覽機’能
5i プリンタはスクリーンにエコーしない
am 自動マージン。自動的に行を折り返す
bs コントロール H (ァ璽魁璽 8) をバックスペースとして扱う
bw 左端でのバックスペースを、上の行の右端に折り返す
da 画面の上端から外れていた行を表示する (通常はマルチページ端末で)
db 画面の下端から外れていた行を表示する (通常はマルチページ端末で)
eo 空白文字はカーソル位置の全ての文字を消す
es ステータス行上のエスケープシーケンスや特殊文字は邑に働く
gn 一般的なデバイスである
hc ハードコピー端末である
HC 最下行にないカーソルは見づらい
hs ステータス行がある
hz チルダ文字が表示でい覆っ舎である (Hazeltine 端末のバグ)
in ホワイトスペースを埋めるのに、スペースではなく NULL バイトを挿入する端末である
km 端末にはメタァ爾ある
mi 挿入モードでもカーソル移動がでい
ms 強調/下線モードでもカーソル移動がでい
NP パディング文字がない
NR ti は te を反転しない
nx パディングではなく、XON/XOFF を使わなければならない
os 重ね打ちが可能な端末である
ul 重ね打ちはでい覆い、下線表示のでい訝舎である
xb f1 はエスケープを送信し、f2 は ^C を送信する (Beehive 端末の不具合)
xn 改行/折り返しに不具合がある
xo 端末は xon/xoff プロトコルを用いる
xs 強調文字の上に出力された文字は強調文字として表示される
xt 破壊的なタブと中途半端な強調モード (Teleray 端末の不具合)
数値佑で濃指慊定蠅す垢る覽機’能
co 端末の行数
dB ハードコピー端末において、バックスペースに必要な遅延時間 (ミリ秒単位)
dC ハードコピー端末において、復帰に必要な遅延時間 (ミリ秒単位)
dF ハードコピー端末において、頁送りに必要な遅延時間 (ミリ秒単位)
dN ハードコピー端末において、改行に必要な遅延時間 (ミリ秒単位)
dT ハードコピー端末において、タブストップに必要な遅延時間 (ミリ秒単位)
dV ハードコピー端末において、垂直タブに必要な遅延時間 (ミリ秒単位)
it タブ位置間の文字数
lh ソフトラベルの高さ
lm 画面メモリに収容でい觜埒
lw ソフトラベルの幅
li 行数
Nl ソフトラベルの数
pb パディングが必要となる最低のボーレート
sg 強調表示の不具合 (強調表示に切替えたとい防充┐気譴襯好據璽垢凌)
ug 下線表示の不具合 (強調表示に切替えたとい防充┐気譴襯好據璽垢凌)
vt 仮想端末番号
ws ステータス行の幅 (画面幅と異なる場合)
文源字列鵑で濃指慊定蠅す垢る覽機’能
!1 シフト状態の save ァ
!2 シフト状態の suspend ァ
!3 シフト状態の undo ァ
#1 シフト状態の help ァ
#2 シフト状態の home ァ
#3 シフト状態の input ァ
#4 シフト状態の左カーソルァ
%0 redo ァ
%1 help ァ
%2 markァ
%3 message ァ
%4 move ァ
%5 next-object ァ
%6 open ァ
%7 options ァ
%8 previous-object ァ
%9 print ァ
%a シフト状態の message ァ
%b シフト状態の move ァ
%c シフト状態の next ァ
%d シフト状態の options ァ
%e シフト状態の previous ァ
%f シフト状態の print ァ
%g シフト状態の redo ァ
%h シフト状態の replace ァ
%i シフト状態の右カーソルァ
%j シフト状態の resume ァ
&0 シフト状態の cancel ァ
&1 reference ァ
&2 refresh ァ
&3 replace ァ
&4 restart ァ
&5 resume ァ
&6 save ァ
&7 suspend ァ
&8 undo ァ
&9 シフト状態の begin ァ
*0 シフト状態の find ァ
*1 シフト状態の command ァ
*2 シフト状態の copy ァ
*3 シフト状態の create ァ
*4 シフト状態の delete ァ
*5 シフト状態の delete line ァ
*6 select ァ
*7 シフト状態の end ァ
*8 シフト状態の clear line ァ
*9 シフト状態の exit ァ
@0 find ァ
@1 begin ァ
@2 cancel ァ
@3 close ァ
@4 command ァ
@5 copy ァ
@6 create ァ
@7 end ァ
@8 enter/send ァ
@9 exit ァ
al 1 行挿入する
AL %1 行挿入する
ac 図形文字のペアの集合。代替文字セットにマップするためのもの
ae 代替文字セットの終り
as 図形文字集合に対する、代替文字セットの開始
bc ^H がバックスペースでない場合のバックスペース
bl (音声の) ベルを鳴らす
bt 前のタブストップへ移動
cb 行頭からカーソル位置までのクリア
cc ダミーコマンド文字
cd 画面の最後までをクリア
ce 行の最後までをクリア
ch カーソルを水平方向にだけ移動し、 %1 桁の位置にする
cl 画面を消去し、カーソルをホームポジションへ
cm 画面上の %1 行、 %2 桁へカーソルを移動
CM メモリ上の %1 行、 %2 桁へカーソルを移動
cr 復帰
cs %1 行目から %2 行目までの範囲をスクロールする
ct タブの消去
cv カーソルを垂直方向にだけ移動し、 %1 行の位置にする
dc 一文字削除する
DC %1 文字削除する
dl 一行削除する
DL %1 行削除する
dm delete モード開始
do カーソルを一行下げる
DO カーソルを #1 行下げる
ds ステータス行を無効にする
eA 代替文字集合を邑にする
ec カーソル位置から %1 文字消去する
ed delete モード終了
ei intert モード終了
ff ハードコピー端末での頁送り文字
fs ステータス行に移動する前の位置へ復帰する文字
F1 ファンクションァ f11 が送出する文字列
F2 ファンクションァ f12 が送出する文字列
F3 ファンクションァ f13 が送出する文字列
... ...
F9 ファンクションァ f19 が送出する文字列
FA ファンクションァ f20 が送出する文字列
FB ファンクションァ f21 が送出する文字列
... ...
FZ ファンクションァ f45 が送出する文字列
Fa ファンクションァ f46 が送出する文字列
Fb ファンクションァ f47 が送出する文字列
... ...
Fr ファンクションァ f63 が送出する文字列
hd カーソルを一行の半分だけ下に移動
ho カーソルをホームポジションに移動
hu カーソルを一行の半分だけ上に移動
i1 ログイン時の初期化文字列 1
i3 ログイン時の初期化文字列 3
is ログイン時の初期化文字列 2
ic 一文字挿入
IC %1 文字挿入
if 初期化ファイル
im insert モード開始
ip 挿入後のパディングに必要な時間と特殊文字
iP 初期化プログラム
K1 ァ璽僖奪匹虜絃絅ー
K2 ァ璽僖奪匹涼羆ァ
K3 ァ璽僖奪匹留上ァ
K4 ァ璽僖奪匹虜顕璽ー
K5 ァ璽僖奪匹留Σ璽ー
k0 ファンクションァ 0
k1 ファンクションァ 1
k2 ファンクションァ 2
k3 ファンクションァ 3
k4 ファンクションァ 4
k5 ファンクションァ 5
k6 ファンクションァ 6
k7 ファンクションァ 7
k8 ファンクションァ 8
k9 ファンクションァ 9
k; ファンクションァ 10
ka clea all tabs ァ
kA insert line ァ
kb バックスペースァ
kB back tab ァ
kC clear screen ァ
kd 下カーソルァ
kD カーソル位置の文字を消すァ
ke ァ璽僖奪匹鬟フにする
kE 行末までをクリアするァ
kF 前方向/下方向へスクロールするァ
kh home ァ
kH cursor hown down ァ
kI 文字挿入ァ/insert モードァ
kl 左カーソルァ
kL 行を削除するァ
kM insert モードを終了するァ
kN 次のページへ移動するァ
kP 前のページへ移動するァ
kr 右カーソルァ
kR 後ろ方向/上方向にスクロールするァ
ke ァ璽僖奪匹鬟ンにする
kS 画面最後までをクリアするァ
kt タブクリアァ
kT タブストップ設定ァ
ku 上カーソルァ
l0 0 番目のファンクションァ爾離薀戰 (f0 でない場合)
l1 1 番目のファンクションァ爾離薀戰 (f1 でない場合)
l2 2 番目のファンクションァ爾離薀戰 (f2 でない場合)
... ...
la 10 番目のファンクションァ爾離薀戰 (f10 でない場合)
le カーソルを左へ一文字分移動する
ll カーソルを左下隅に移動する
LE カーソルを左 %1 文字分移動する
LF ソフトラベルをオフにする
LO ソフトラベルをオンにする
mb 点滅開始
MC ソフトマージンをクリア
md bold モード開始
me so, us, mb, md, mr などのモード全てを終了する
mh 半輝度モード開始
mk ダークモード (文字は見えなくなる)
ML 左側のソフトマージンを設定
mm 端末をメタモードに設定する
mo 端末をメタモードでなくする
mp 属席欷逎癲璽匹鬟ンにする
mr 反転モード開始
MR 右端のソフトマージンを設定
nd カーソルを右に一文字分移動
nw 復帰コマンド
pc パディング文字
pf プリンタをオフにする
pk ユーザが入力したとい吠源列 %2 を送出するプログラムァ %1
pl ローカルモードで文字列 %2 を実行するプログラムァ %1
pn 文字列 %2 を表示するためのプログラムソフトラベル %1
po プリンタをオンにする
pO %1 (<256) バイトの間プリンタをオンにする
ps 画面上の内容をプリンタに印刷する
px 文字列 %2 をコンピュータに送出するプログラムァ %1
r1 端末を正常なモードに設定するリセット文字列 1
r2 端末を正常なモードに設定するリセット文字列 2
r3 端末を正常なモードに設定するリセット文字列 3
RA 自動折り返しを無効にする
rc 保存しておいたカーソル位置に復帰する
rf リセット文字列の入ったファイル名
RF 端末からの入力要求
RI カーソルを右へ %1 文字分移動する
rp 文字 %1 を %2 回分繰り返す
rP 置換モードにおいて、文字を送出した後に行うパディング
rs リセット文字列
RX XON/XOFF フロー制御をオフにする
sa 属 %1 %2 %3 %4 %5 %6 %7 %8 %9 を設定
SA 自動折り返しを邑にする
sc カーソル位置を保存する
se 強調モード終了
sf 順方向の 1 行スクロール
SF 順方向の %1 行スクロール
so 強調モード開始
sr 逆スクロール
SR %1 行分逆スクロールする
st 全ての行において、現在の桁位置をタブストップに設定する
SX XON/XOFF フロー制御をオンにする
ta 次のハードウェアタブ位置へ移動
tc 他のエントリから端末の説明を読む込む
te カーソル移動を用いるプログラムの終了
ti カーソル移動を用いるプログラムの開始
ts ステータス行のカーソルを %1 桁へ移動
uc カーソル位置の文字に下線をつけ、右にカーソルを移動
ue 下線モード終了
up カーソルを 1 行分上に移動
UP カーソルを %1 行分上に移動
us 下線モード開始
vb ビジュアルベル
ve カーソルを通常の明るさにする
vi カーソルを見えなくする
vs 強調カーソル
wi ウィンドウ領域を %1〜%2 行、%3〜%4 桁に設定
XF XOFF 制御文字 (^S でない場合)
文字列機能の制御コードを定義するには、いくつかの方法がある。
'^', '\', '%' を除く全ての通常の文字は、それ自身を表す。
'^x' は Control-x を意味する。 Control-A は 10 進数の 1 に等しい。
'\x' は特殊コードとして扱われる。'x' には以下の文字のどれかが入る。
E エスケープ (27)
n ラインフィード (10)
r 復帰 (13)
t タブ (9)
b バックスペース (8)
f 頁送り (12)
0 ヌルゥ礇薀タ。'\xxx' は 8 進数 xxx の文字を表す。
i パラメータを 1 増加させる。
r 一つのパラメータをとる機能
+ 次の文字の値をパラメータに追加し、バイナリで出力する
2 パラメータを 2 桁の数字として ASCII 出力する (printf の %2d
と同じ意味)
d パラメータを数字として ASCII 出力する (printf の %d と同じ意味)
% '%' を表示する
バイナリ出力を行う場合、
文字列を終端されないようにヌル文字を避けねばならない。
タブ文字をパラメータのバイナリ出力とする場合は、
タブ文字の展開をリセットしなければならない。
注意: 上-
のような、パラメータとしてのメタ文字は正しくないかもしれない。
このことは、Minixの termcap と Linux の termcap との間に互換-
がないことに繋がっている。
図形文字は 3 つの文字列機能で指定でい襦
as 代替文字セットの開始
ae 代替文字セットの終了
ac 文字列のペアの集合を指定する。 最初の文字は図形文字の名称で、 2
番目の文字はその定義である。
名称には以下のものがある。
+ 右矢印 (>)
, 左矢印 (<)
. 下矢印 (v)
0 なかを塗りつぶした四角 (#)
I ランタン宜 (#)
(訳注 原文は latern だったが、これは lantern の typo と思われる)
- 上矢印 (^)
' 菱形 (+)
a チェス板 (:)
f 角度 (')
g プラスマイナス (#)
h 四角 (#)
j 右下隅 (+)
k 右上隅 (+)
l 左上隅 (+)
m 左下隅 (+)
n 十字 (+)
o 上水平線 (-)
q 中水平線 (-)
s 下水平線 (_)
t 左 T 字 (+)
u 右 T 字 (+)
v 下 T 字 (+)
w 正 T 字 (+)
x 垂直線 (|)
~ 段落 (???)
括弧内の値は、
指定した機能が存在しない場合に用いられるデフォルトの値である。
ncurses(3), termcap(3), terminfo(5)
訳出にあたっては "termcap & terminfo" (Strang, Mui, O'reilly 共著,
鈴木麗 監訳, アスァ悉佝廼 1992) を参考にした。
ただし本日本語マニュアルにおける誤りは校正者の責任である。
Linux 1996-10-21 TERMCAP(5)