end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転します

Config::Generalのkey-valueのvalueに改行(\n)を登録したい

と思って、Config::Generalのperldocを読んでみましたがよく分かりませんでした。
http://search.cpan.org/perldoc?Config::General
が、次のようなscriptでserializeすればいいだけのことでした。

#!/usr/local/bin/perl
use strict;
use utf8;
use Config::General;

main();

sub main {

    my $conf_src =
	{f_dir => '/home/endo/dev_data',
	 f_ext => '.txt',
	 f_encoding => 'utf8',
	 csv_eol=> "\n"};
    my $conf_obj = new Config::General($conf_src);

    print $conf_obj->save_string();
}

実行結果

$ ./foo.pl 
csv_eol   <<EOF
EOF
f_dir   /home/endo/dev_data
f_encoding   utf8
f_ext   .txt

yamljsonのエスケープ法を調べる際にも使えそう。