[#24698] NKF(nkf2)を1.8ブランチに入れました — "NARUSE, Yui" <naruse@...>

naruseです。

14 messages 2004/11/03
[#24734] Re: NKF(nkf2)を1.8ブランチに入れました — 堀川 久 <vzw00011@...> 2004/11/06

こんにちは。

[#24720] メール関係ライブラリの標準添付について — MoonWolf <moonwolf@...>

MoonWolfです。

17 messages 2004/11/05
[#24721] Re: メール関係ライブラリの標準添付について — Yukihiro Matsumoto <matz@...> 2004/11/05

まつもと ゆきひろです

[#24722] Re: メール関係ライブラリの標準添付について — MoonWolf <moonwolf@...> 2004/11/05

MoonWolfです。

[#24804] Re: まつもとさんの負担を減らすために、何ができるだろう — "URABE Shyouhei aka.mput" <root@...>

mput です。 ruby-dev に移動します。

21 messages 2004/11/13
[#24805] Re: まつもとさんの負担を減らすために、何ができるだろう — Tanaka Akira <akr@...17n.org> 2004/11/13

In article <2D6284E3-351D-11D9-B7EF-000393735AAE@mput.dip.jp>,

[#24806] Re: まつもとさんの負担を減らすために、何ができるだろう — "URABE Shyouhei aka.mput" <root@...> 2004/11/13

mput です。

[#24808] Re: まつもとさんの負担を減らすために、何ができるだろう — Masayoshi Takahashi <maki@...> 2004/11/13

高橋征義です。

[#24809] Re: まつもとさんの負担を減らすために、何ができるだろう — "URABE Shyouhei aka.mput" <root@...> 2004/11/13

mput です。

[#24834] Process.getrlimit and Process.setrlimit — Tanaka Akira <akr@...17n.org>

Process.getrlimit と Process.setrlimit が欲しいので実装してみました。

25 messages 2004/11/13

[#24965] sync and stdio buffering — Tanaka Akira <akr@...17n.org>

ちょっとした思いつきなのですが、

12 messages 2004/11/26

[#24993] rb_io_sysread dumps core [BUG] rb_sys_fail() - errno == 0 — Tietew <tietew-ml-ruby-dev@...>

ソケットとスレッドを大量に使うアプリ(具体的には IRCbot です)を

13 messages 2004/11/29

[#25003] IO#flush dumps core again — Tanaka Akira <akr@...17n.org>

次のようにすると core を吐きます。

28 messages 2004/11/30
[#25004] Re: IO#flush dumps core again — nobu@... 2004/11/30

なかだです。

[#25005] Re: IO#flush dumps core again — Yukihiro Matsumoto <matz@...> 2004/11/30

まつもと ゆきひろです

[#25009] Re: IO#flush dumps core again — Tanaka Akira <akr@...17n.org> 2004/12/01

In article <1101836040.635395.27476.nullmailer@x31.priv.netlab.jp>,

[#25014] Re: IO#flush dumps core again — Tanaka Akira <akr@...17n.org> 2004/12/01

In article <1101878558.979715.1359.nullmailer@x31.priv.netlab.jp>,

[#25015] Re: IO#flush dumps core again — Yukihiro Matsumoto <matz@...> 2004/12/01

まつもと ゆきひろです

[#25056] Re: IO#flush dumps core again — Tanaka Akira <akr@...17n.org> 2004/12/05

In article <1101888165.570792.4192.nullmailer@x31.priv.netlab.jp>,

[#25074] Re: IO#flush dumps core again — Tanaka Akira <akr@...17n.org> 2004/12/06

In article <1102293033.356112.2288.nullmailer@x31.priv.netlab.jp>,

[ruby-dev:24793] Re: NKF(nkf2)を1.8ブランチに入れました

From: "NARUSE, Yui" <naruse@...>
Date: 2004-11-12 10:34:25 UTC
List: ruby-dev #24793
naruseです。

Kazuhiro NISHIYAMA wrote:
> どちらが以前と同じ挙動なのかはわかっていないのですが、
> 1.8.1の頃のnkfとの互換性を優先させるというのが良いのでは
> ないでしょうか?

互換性は確かに大きな要素だと思います。
標準や有力な実装と矛盾しない場合や、どの実装に従うか迷った時、
互換性は判断基準になりますね。

ちなみに、デフォルトで EUC(fcf1)→Shift_JIS(eeef) が、
以前、そして現在の実装です。


MoonWolf wrote:
> http://www.opengroup.or.jp/jvc/cde/sjis-euc.html
> このあたりが、参考になるのかな?
>
> 今回の問題にどの用に反映すべきかまでは考えがまとまっていませんが、
> とりあえず情報として提供します。

おぉ、その文書の、
[4] 日本語EUCとシフトJIS間のコード変換とコード系名
[4.1] 日本語EUCとシフトJIS間のコード変換 注記: 3.に
「日本語EUCからSJISへの変換において
 IBM 拡張文字から NEC選定IBM拡張文字への変換は行なわない.」
と、ありますね。
つまり、EUC(fcf1)→Shift_JIS(eeef)、と。


過去・現在の互換性と標準が一致しているので、そちらを優先し、
CP932互換性は、EUCとShift_JISの変換ではデフォルトでは切ることにします。
CP932互換の変換をしたい場合は、--cp932invオプションを指定してください。


参考までにサンプルを以下に載せて起きます。
NKF.nkf('-eS,"\xfa\x40") #=>"\xfc\xf1" #=>"\xee\xef"とみなして変換
NKF.nkf('-eS --no-cp932',"\xfa\x40") #=>"" #変換できないので空文字
NKF.nkf('-sE,"\xfc\xf1") #=>"\xee\xef" #IBM拡張文字
NKF.nkf('-sE --cp932inv',"\xfc\xf1") #=>"\xfa\x40" #NEC選定IBM拡張文字

ちなみにnkf1系のNKFモジュールの挙動は以下のとおり。
NKF.nkf('-eS,"\xfa\x40") #=>"" #変換できないので空文字
#--no-cp932 オプションは存在しない
NKF.nkf('-sE,"\xfc\xf1") #=>"\xee\xef" #IBM拡張文字
# --cp932inv オプションは存在しない

###

ただ、UnicodeからShift_JISの変換まで、
EUCとShift_JISの変換に引っ張られて、IBM拡張文字(\xee\xef)になるのは、
正直どうかと思うところではあります。
UnicodeとShift_JISの変換は、標準規格がなく、
CP932がデファクトスタンダートとなっているんですよね。
IconvはIBM拡張文字に変換するようですが、これについては、
CP932の方が権威があるみたいで。。

まぁ、とりあえず現状維持で行きます。


-- 
NARUSE, Yui  <naruse@airemix.com>
DBDB A476 FDBD 9450 02CD 0EFC BCE3 C388 472E C1EA

In This Thread