トップ 新規 編集 差分 一覧 ソース 検索 ヘルプ RSS ログイン

Ya2YAML

任意のオブジェクトをYAML形式に変換するライブラリ。pure ruby。

https://rubyforge.org/projects/ya2yaml/

標準添付のYAMLライブラリには、マルチバイト文字列をbinary形式として出力してしまう問題(ruby-list:42204)があるが、こちらのライブラリを使えばマルチバイト文字列をそのままYAML内へ出力することができる。日本語の出力もOK。

ただしYAMLを読み込む(パースする)機能は持っていないため、読み込みには別のライブラリを使う必要がある。

使い方

(READMEより転載)

$KCODE = 'UTF8'
require 'ya2yaml'

obj = [
  "abc\nxyz\n",
  "日本語\n文字列\n",
  "\xfd\xfe\xff",
]
puts obj.ya2yaml(:syck_compatible => true)
--- 
- |
    abc
    xyz
- |
    日本語
    文字列
- !binary |
    /f7/

既知のバグ

  • 複数のドキュメントを一つのyamlファイルに出力し、rubyに標準添付のyamlライブラリで(YAMLストリームとして)読み込むと、エラーで落ちる。→最新版では修正されている

最終更新時間:2011年06月26日 08時13分43秒