No. 326/622 Index Prev Next
Path: titcca!ccut!ascgw!fgw!flab!brish!ichikawa
From: ichikawa@brish.stars.flab.fujitsu.junet (Ichikawa)
Newsgroups: fj.kanji
Subject: JIS73 and JIS83 (was Re: name in JIS-78 and JIS-83)
Keywords: JIS83 JIS78
Message-ID: < 4282@flab.flab.fujitsu.JUNET> 
Date: 24 Oct 88 02:52:04 GMT
Sender: news@flab.flab.fujitsu.JUNET
Reply-To: ichikawa@brish.stars.flab.fujitsu.junet (Ichikawa)
Distribution: fj
Organization: Software Lab. Fujitsu Labs Ltd., Kawasaki, Japan
Lines: 78
Posted: Mon Oct 24 11:52:04 1988


新版のnkfには何らかの形でJIS78とJIS83が区別して扱えるようにするつもり
でいます。そこで、新版のnkfのBタイブ(何でもあり)には、沼田@富士通さ
んの変換プログラムを流用し、JIS78とJIS83の置換が可能になるようにしました。
これについては、沼田@富士通さんからは了解をもらいました。

しかし、その時に問題となったのは、EUCやMS漢字がJIS78,JIS83のいずれを使用
しているのだろうか?でそれはどういう扱いにするのか?という問題でした。こ
れについては、ネットで議論してみたほうがよいだろうということになったので、
ここに問題提起するものです。以下に市川@富士通研(I> で引用)と沼田@富士
通さん(N> で引用)とのメールでのやりとりの一部を引用して、その経緯を示そ
うと思います。どのようにすべきかの意見をいただきたいと思います。

N> あの機能はオプションで選択できるようにしたほうがよかったかな,とも思っ
N> ているのです.JIS-78 とJIS-83 の違いを意識してエスケープ・シーケンスを
N> 使っている人ばかりではないようなので...  
N> 
N>  それから,あのパッチは入力が JIS でない場合は出力がどうなるかわから
N> ないので,そこのところをちゃんとしないとなりませんね.(もともと「入力
N> のエスケープ・シーケンスを自動的に判別して文字の置き換えをする」ことだ
N> けしか考えてなかったので,「その他」の場合にどうしていいのか分からなか
N> ったのですが)

I> EUCやMS漢字(シフトJIS)について、JIS78, JIS83の変換ですが、オプション
I> の設定が難かしいですね。JISコードならば、区別があるんですが、EUCやMS漢
I> 字といっても、JIS78なのかJIS83なのかはっきりしませんからね。とにかく、
I> オプションなどで何らかの形で、JIS78かJIS83のどちらかを区別しないといけ
I> ませんね。
I> 
I>  例えば、
I>		JIS(83)  EUC 	       EUC  JIS(78)
I>  		             |			|
I>  			      communication line
I>  
I> というような形になった時に、EUCに変換した時も、^[$@ か^ [$B あたり
I> を埋め込んでおいた方がいいのでしょうか?それとも出力のEUCは常にJIS83に
I> しておいた方がいいのでしょうか?(入力は区別するようにする)

N>  EUC や MS漢字が JIS78 か JIS83 かは決定しがたいですね.第二水準の最
N> 後の4文字が入っていれば新版だとわかりますけど,全ての文章にそんな字が
N> あるわけじゃないでしょうし.といって,EUC や MS 漢字のファイルにエスケ
N> ープ・シーケンスがはいっているのも変だし.実際のところは,EUC や MS 漢
N> 字の場合は新版か旧版かは不明ということにしておくんでしょうかね.
N> 
N>  新旧どちらかわからない場合のプログラムとしての対処方法とし
N> て,私の思いついた限りでは,以下の3つがあると思います.
N> 
N> (1) 入力なり出力なりが新旧どちらなのかわからない場合は,なにもしない.
N> (2) わざわざ置き換えオプションを指定しているのだから,とりあえず置き換
N>     えをしてやる.(このやり方では,第二水準の最後に移動された4文字の扱
N>     いをどうするかが問題です.私のパッチにある関数 swap では,入力と出
N>     力の両方とも JIS でない場合(SET_UNKNOWN) には,この4文字を無視して
N>     しまいます.入力あるいは出力のどちらかが JIS ならば,反対側は多分
N>     違う版なのだろうと適当に解釈します:-))
N> (3) EUC や MS 漢字の場合は,常に新版 (あるいは旧版) ということにしてし
N>     まう.
N> 
N>  どれにしてもイマイチですねぇ.

I>  確かに、この問題はけっこう面倒ですね。ネットの上で多くの人と論議した
I>  方がいいかもしれません。

N>  そうしましょう.

皆様の御意見をお待ちしております。

−−−(い)

PS:
それから、思い付きなんですが、簡単なシェルスクリプトあたりを使って、もし
これが○○ならば、あなたの表示装置は、JIS78(JIS83)の表ですというふうに
教えて(示して)くれるようなコマンドがあった方が便利だと思えます。無論、
簡単なCプログラムでもいいのですが。まあ、ほとんどの人は、今の議論の記事
を見て自分がどちらであるかは判っていると思いますが、広く使えるそういった
ツールがあると便利だと思います。診断出力のコード系の指定は、nkfの出力の
指定に類似させるといいと思います。そうですね、nkfをちょちょいと改造すれ
ばできるような気がしてきました。あると便利だけど、一度使用すれば終りにな
りそうですね。
Next
Continue < 567@kei16.ks.fujitsu.JUNET>