[#44909] VRDdeClientについて — Toshiyasu Soejima <clev@...2.so-net.ne.jp>
#
17 messages
2008/05/11
[#44911] Re: VRDdeClientについて
— yukimi_sake <yukimi_sake@...>
2008/05/11
こんにちは、雪見酒です。
[#44923] Re: VRDdeClientについて
— Takahiro Kambe <taca@...>
2008/05/13
In message <4826942F.4080102@ck2.so-net.ne.jp>
[#44910] SimpleDelegator#dupの引数objについて — "SHIMADA Koji" <snoozer.05@...>
しまだです。
6 messages
2008/05/11
[#44936] yamlとencoding — "Yutaka Kanemoto" <kinpoco@...>
金本と申します。
16 messages
2008/05/14
[#44937] Re: yamlとencoding
— "NARUSE, Yui" <naruse@...>
2008/05/14
成瀬です。
[#44952] Re: yamlとencoding
— "NARUSE, Yui" <naruse@...>
2008/05/17
成瀬です。
[#44997] Re: yamlとencoding
— "Yutaka Kanemoto" <kinpoco@...>
2008/06/03
金本と申します.
[#44942] Gemでhpricotインストールエラー — "Yangkook Kim" <yangkookkim@...>
Kimと申します。
8 messages
2008/05/16
[#44945] Re: Gemでhpricotインストールエラー
— rubikitch@...
2008/05/16
From: "Yangkook Kim" <yangkookkim@gmail.com>
[#44980] 重いタスクと平行にirbを使うと遅い? — "takeru sasaki" <sasaki.takeru@...>
佐々木と申します。
8 messages
2008/05/31
[#44981] Re: 重いタスクと平行にirbを使うと遅い?
— rubikitch@...
2008/05/31
From: "takeru sasaki" <sasaki.takeru@gmail.com>
[#44986] Ruby 1.8.7 has been released — "Akinori MUSHA" <knu@...>
Ruby 1.8.7 をリリースしました。
5 messages
2008/05/31
[ruby-list:44952] Re: yamlとencoding
From:
"NARUSE, Yui" <naruse@...>
Date:
2008-05-17 07:43:22 UTC
List:
ruby-list #44952
成瀬です。
> この例では encoding は UTF-8 になるのが正しい動作のように感じます。
> ただ、UTF-16 の場合や EUC-JP の場合にどうするのが妥当なのかわからないので、
> その辺をちゃんと勉強しておきます。
UTF-16 は Syck が非対応で、EUC-JP 等は YAML で規定されていないので無視とすると、
--- lib/yaml/rubytypes.rb (revision 16447)
+++ lib/yaml/rubytypes.rb (working copy)
@@ -149,6 +149,7 @@ class String
val = val.unpack("m")[0] if tag == "tag:yaml.org,2002:binary"
val = { 'str' => val } if String === val
if Hash === val
+ val['str'].force_encoding("UTF-8") unless tag == "tag:yaml.org,2002:binary"
s = klass.allocate
# Thank you, NaHi
String.instance_method(:initialize).
@@ -184,6 +185,7 @@ class Symbol
def Symbol.yaml_new( klass, tag, val )
if String === val
val = YAML::load( val ) if val =~ /\A(["']).*\1\z/
+ val.force_encoding("UTF-8")
val.intern
else
raise YAML::TypeError, "Invalid Symbol: " + val.inspect
@@ -258,6 +260,7 @@ class Regexp
end
if Hash === val
mods = nil
+ val['regexp'].force_encoding("UTF-8")
unless val['mods'].to_s.empty?
mods = 0x00
mods |= Regexp::EXTENDED if val['mods'].include?( 'x' )
他のエンコーディングの文字列も工夫すれば一応保持できるようにできそうですが、
その辺はニーズがあったらで。
--
NARUSE, Yui <naruse@airemix.jp>