[#42196] YAML でEUC は使えないのでしょうか。 — Tomokiyo Nomura <tnomura@...>
野村@延岡です。
8 messages
2006/05/05
[#42214] [ANN] RubyKaigi 2006 Announcement — SASADA Koichi <ko1@...>
日本Rubyの会、日本Rubyカンファレンス2006実行委員のささだです。
4 messages
2006/05/10
[#42235] ftp:// のリストを open-uri で得られないでしょうか — "Hideo Konami" <konami@...>
小波です。
5 messages
2006/05/20
[#42243] コミュニティと宗教の分離について — Beyond <beyond@...>
14 messages
2006/05/21
[#42245] Re: コミュニティと宗教の分離について
— Masayoshi Takahashi <takahashi@...>
2006/05/22
高橋征義です。「日本Rubyの会」という集まりの代表をしております。
[#42253] File objectがいつのまにか nilに、 — しん <dezawa@...>
出沢です
9 messages
2006/05/23
[#42267] メニューのループについて — リックス <rubyer4649@...>
りっくすです
21 messages
2006/05/27
[#42276] Re: メニューのループについて
— Hiroshi Yuki <hyuki@...>
2006/05/27
結城です。
[#42301] Re: メニューのループについて — "conundrum /" <conundrum@...>
conundrumです。
11 messages
2006/05/28
[#42306] Re: メニューのループについて
— rubikitch <rubikitch@...>
2006/05/29
From: "conundrum /" <[email protected]>
[ruby-list:42206] Re: YAML でEUC は使えないのでしょうか。
From:
Tomokiyo Nomura <tnomura@...>
Date:
2006-05-06 23:25:23 UTC
List:
ruby-list #42206
野村です。 岩月さんレスポンスをありがとうございました。YAML 入力データのコードが EUC として取りこめるかどうかが、一番知りたかったことでした。これで安心して YAMLファイルを利用することができます。 オブジェクトのデータの書き出しについては、$KCODE = "e" とすれば、inspect でも EUC で出力してくれるようなので、リテラルオブジェクトに関しては、そのまま、 ファイルに書き出せば良さそうなのに気がつきました。Ruby のリテラルオブジェクト の表記は => を : に変えれば、そのまま JSON になるので、自分で勝手に RON(Ruby Object Notation) と呼んでいます。inspect の出力をインデント表示に して、YAMLに変換することはできると思います。 $ irb irb(main):001:0> $KCODE = "e" => "e" irb(main):002:0> a = ['本田', '山田'] => ["本田", "山田"] irb(main):003:0> a.inspect => "[\"本田\", \"山田\"]" 入力データも RON で表記してみたのですが、括弧やコンマやダブルクォートの 入力がわずらわしくて、また、バグになりやすく、YAMLでやれないのだろうかと 悩んでいたところでした。 ありがとうございました。 野村朝清 [email protected] On Sun, 7 May 2006 00:02:59 +0900 "Hiroyuki Iwatsuki" <[email protected]> wrote: > 岩月と申します。 > > Ruby 1.8.4現在、YAMLライブラリは入力データの文字コードに > ついては一切考慮していないため、EUC-JPな文字列をそのまま > YAMLファイルに書けば、YAML.loadによって読み出される > 文字列の文字コードはYAMLのままです。 > > まとめますと、Ruby 1.8.4 現在、YAMLライブラリへの入力しては > 文字コードは何を使ってもかまいません。逆にYAMLライブラリによる > 出力では日本語を日本語として出力できません。 > これが仕様か不具合かどうかはYAMLライブラリのメンテナに尋ねるしか > ないのではないかなあ、と思います。 >