7. 何をやってもダメな場合

最初にすることは、どの ASCII コードが発生しているかを C の 1 行プログラム を使って確認することだ。

どのシーケンスが発生しているかわかったら、現在の terminfo エントリを infocmp を使って確認する必要がある (大量の情報が表示されるが恐れないように!)。 そして kbskdch1 特性が 正しいシーケンス (対応するキーから発生するもののこと) と一致することを確認する。 さらに、stty -a を用いて、削除文字は Backspace キーによって生じるものであることを確認せねばならない (^HBS を意味し、^?DEL を意味することに注意)。

もし不一致があった場合、いくつかの理由が考えられる - TERM 変数の値が違う、端末データベースのエントリが違う、 X の端末エミュレーションが違う、などだ。 ここまでで、あなたが自分で調査を進めるに十分な情報を得てくれたことを期待する。

注意: もし各アプリケーションが異なる動作をする場合、それらのいくつかは 端末データベースを正しく活用していて、残りはそれができていない可能性が高い。 一部のアプリケーションで各キーが正しい動作をしたとしても、 それはそのアプリケーションが端末データベースを正しく使用していることを 保証するわけではない - 覚えているだろうか?それは偶然動いているだけかもしれない。 もしそれらを個別にチェックしたければ ne エディタを 試してみるとよい。nekbskdch1 を含む端末特性の全てを利用し、予想される意味は それ以外が全て適用外だった場合にしか利用されない。