2006年4月 7日

[ruby-list:41973] Kconv のデフォルト動作とオプション指定

成瀬です。

1. Kconv.to* での -m0 デフォルト化
2. Kconv.to* と -x
3. Kconv のオプション指定
について。

1. Kconv.to* での -m0 デフォルト化

[ruby-dev:28456] のスレッドで、1.8 および 1.9 において、
Kconv.to* が NKF に渡すオプションに -m0 を追加しました。

この変更に異論がある方は今のうちに声をあげてくださいまし。

また、Kconv.to* が MIME デコードを行うことを期待している場合は、
お手数をおかけしますが、今のうちに変更しておいてください。
NKF 自体のデフォルト動作が変わる可能性があるので、
NKF.nkf('-eS -m',str)
などと、明示的に -m を指定しておくのが確実かと思います。

2. Kconv.to* と -x
現在でもまだ Kconv.to* はデフォルトで、いわゆる半角カタカナ
(JIS X 0201) を全角カタカナ (JIS X 0208) に変換しますが、
この動作に意見のある方はいらっしゃいますか?

特に意見がなければこちらはそのままにします。

3. Kconv のオプション指定
話自体は何度か出てきていますが。
例えば、
1案 定数をORで。
Kconv.toeuc(str, Kconv::JIS,
Kconv::H2Z|Kconv::CRLF|Kconv::DECODE_MIME)
欠点
* bit が足りなくなりそう
* オプションが値を取れない

2案 ハッシュで渡す
Kconv.toeuc(str, {:from => Kconv::JIS,
:h2z => true, :newline => :crlf, :decode_mime => true)
欠点
* いちいち => true と書くのが面倒

という感じでしょうか。

他のライブラリを参考にしようと思っても、
他は UCS 正規化前提の、decode/encode な形になっていたり、
オプションを指定するという考えが無いので参考にならないんですよね。

いい案があれば教えてください。

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

投稿者 xml-rpc : 2006年4月 7日 18:47
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/41819
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。