[Lha-users] Re: LHa for UNIX (autoconf) 2005-09-24 release

Back to archive index

OKUMURA N. Shin-ya oku.n****@dream*****
2005年 10月 8日 (土) 01:29:52 JST


おくむら@練馬です。
返信が遅くなって申し訳ありません。 _o_

On Mon, Sep 26, 2005 at 11:36:01PM +0900, Koji Arai wrote:

> とりあえず、今設定しているゴールって、euc や sjis や 
> eucJP-ms や cp932 などなど(iconv()がサポートしている)任意の
> コードを指定可能にするってことでいいのですよね?

基本的にはそういう発想です。

但し、iconv()の積極的な使用で不便になっては本末転倒ですので
以下のような事を考えていました。

(1) 基本的に文字コード変換は iconv() を使用したい。

(2) 内部 encoding は LHa の伝統と格式に則れば cp932。
 cp932 を選択できない環境ならば sjis-x0213 あたり?
 sjis-x0213 すら選択不可能ならば sjis。

 しかし一口に「Shift-JIS」と言っても、
 ・昔の Solaris では PCK
 ・libiconv では cp932
 ・少し前の glibc では sjis、最近のものなら cp932
 ・他の HP-UX とか AIX とかはどうなってるのか不明...

 これらのうち、どの encoding 名を採用すべきか?
 できれば configure で決定したいが、実行時に決定するという
 選択肢もありかもしれない。

 なお、内部 encoding をユーザが明示的に指定したのであれば
 原則としてそれに従うべきだろうが、UTF-16/32 のような \0 を
 文字列中に含んでしまう encoding は蹴りたいところ。

(3) 外部 encoding は現在の locale での nl_langinfo(CODESET) 
 の戻り値を仮定しても良さそう(根拠レス)。

 但し、nl_langinfo() は SUSv2 で出現した API っぽいので
 果たして可搬性があると仮定していいのかどうか?

徒然なるままに自分の考えを並べてみました。
ご意見や、その他なんでも歓迎いたします。
-- 
OKUMURA N. Shin-ya (oku.n****@dream*****)
if (it == misfeature && it != bug) it = bug;



Lha-users メーリングリストの案内
Back to archive index