Feature #1951
Updated by nobu (Nobuyoshi Nakada) about 2 years ago
=begin
#747と#802で議論された、openのBOM指定拡張ですが、現在の仕様は、
* BOMを捨てる
* BOMを見てencodingを設定する
という2つの機能が混在しています。
このために、たとえば「`UTF-8-BOM`」という指定でも、
このために、たとえば「UTF-8-BOM」という指定でも、
BOMがUTF-16LEを示していた場合には実際に返ってくるStringはUTF-16LEになってしまいます。
この問題に対する解決案として、
* UTF-*-BOM はBOMを捨てるだけ。別のencodingだった場合は例外
* `BOM|UTF-*`を追加、これが現在の`UTF-*-BOM`相当の動作 BOM|UTF-*を追加、これが現在のUTF-*-BOM相当の動作 (BOMを見る OR `UTF-*`と指定、というイメージ) UTF-*と指定、というイメージ)
というものを考えています。
皆さんはどのように思われますか?
=end
#747と#802で議論された、openのBOM指定拡張ですが、現在の仕様は、
* BOMを捨てる
* BOMを見てencodingを設定する
という2つの機能が混在しています。
このために、たとえば「`UTF-8-BOM`」という指定でも、
このために、たとえば「UTF-8-BOM」という指定でも、
BOMがUTF-16LEを示していた場合には実際に返ってくるStringはUTF-16LEになってしまいます。
この問題に対する解決案として、
* UTF-*-BOM はBOMを捨てるだけ。別のencodingだった場合は例外
* `BOM|UTF-*`を追加、これが現在の`UTF-*-BOM`相当の動作 BOM|UTF-*を追加、これが現在のUTF-*-BOM相当の動作 (BOMを見る OR `UTF-*`と指定、というイメージ) UTF-*と指定、というイメージ)
というものを考えています。
皆さんはどのように思われますか?
=end