Q. FreeBSD 4.x (4.8-RELEASE 以前)で kterm を使っているときに、vi など
で画面の文字がゴミとなって残ることがあります。
A. FreeBSD 4.x で画面制御ライブラリに ncurses(3) を使用するように
なったため、termcap(5) データベースの kterm に関するエントリに
潜んでいたバグが顕在化しました。
今のところ 2 通りの解決方法があります。
1) /usr/share/misc/termcap の kterm のエントリを以下のように修正し、
/usr/share/misc で cap_mkdb termcap を実行して下さい。
kterm|kterm kanji terminal emulator (X window system):\
:hs:es:ts=\E[?E\E[?%i%dT:fs=\E[?F:ds=\E[?H:\
:KJ:sc=\E7:rc=\E8:cs=\E[%i%d;%dr:TY=ascii:\
:eA@:as=\E(0:ae=\E(B:tc=xterm-r6:
2) $HOME/.termcap (なければ作成する) に以下の記述を追加し、
eval `tset -s` をシェルの初期化ファイルなどで実行して下さい。
ただし setuid/setgid された一部のプログラム( systat(1) , top(1)
など)には、このやり方では対応できません( ncurses(3) 参照)。
kterm|kterm kanji terminal emulator (X window system):\
:hs:es:ts=\E[?E\E[?%i%dT:fs=\E[?F:ds=\E[?H:\
:KJ:sc=\E7:rc=\E8:cs=\E[%i%d;%dr:TY=ascii:\
:eA@:as=\E(0:ae=\E(B:tc=xterm-r6:
なお 4.9-RELEASE からは、この修正が標準で /usr/share/misc/termcap
に入っています。
グループ名: termcap