[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:49566] Re: tcshがセグメンテーション違反
> > オリジナルの .history に対して以下のコマンドを実行してみて
> > 何かエラーは発生しますか?
> >
> > iconv -f euc-jp -t utf-8 < .history > /tmp/.history.utf-8
>
> また再現してしまったので、上記コマンドを実行してみました。
> エラーはなく、変換されました。
不正な文字がヒストリーに紛れ込んでいるわけではないようですね。
> 履歴をxとxのみに置換したものでも、同様の現象となりました。
> #添付します。
1個だけ 720バイト越えのコマンドがあるようですが、
これがあってもなくても、問題は再現しますか?
> xとxだけで再現することから、不正文字で異常動作をしているわけでは
> なさそうです。
> ちょっと文字を追加したり削除するだけで落ちないので、ある条件が重なっ
> たときだけ、コード変換のためのバッファが足りなくなるとかの気がします。
しかも、ja_JP.eucJP 環境でないと再現しないという条件もつくわけですね。
> #utf8環境に移れということでしょうか・・・。
上の iconv コマンドの例は不正文字がヒストリーに紛れ込んでいないことを
確かめたかっただけなので、UTF-8 に移行した方がいいという意味ではありま
せん。誤解されたようでしたら申し訳ありません。
さて、これからの選択肢ですが ... 一見して明らかな原因というのを特定す
るのもどうやら大変そうです。
(a) 問題が再現する条件を特定するためにとにかく頑張る
o 問題が再現する条件が特定できた場合
(a-1) バグ報告を投げて修正されるのを気長に待つ
(a-2) 自分で tcsh を直す
(a-3) 回避法をみつける
o 問題が再現する条件が特定できない場合
(b) あるいは (c) に逃げる
(b) さっさとあきらめて別の環境に乗り換える
(b-1) tcsh の UTF-8 環境に移行してみる
(b-2) いっそのこと zsh か別のシェルに移行してしまう
(c) 回避法をなんとかみつける
(c-1) コマンドラインで日本語を使わない
(c-2) 短いコマンドを使用する
(c-3) シェルスクリプトなどを利用して、コマンドラインでの
編集を、日本語の使用を極力避ける
...
もちろん複数の選択肢を同時に試してもよいと思います。
どうもお役にたてなかったようで申し訳ありません。
----
Keni