ふり返る暇なんて無いね

日々のメモ書きをつらつらと。メインブログに書くほどでもないことを流してます

2013-01-16日誌

grepとか

grep -Fは、fgrepと同じ
grep -Eは、egrepと同じ

Data::Dumperあれこれ

Data::Dumperの日本語出力をなんとかしたかったり、いらない$VAR1を消したり。

#!/usr/bin/env perl -w
use strict;
use warnings;
use utf8;
use 5.10.0;

use Data::Dumper;
use Data::Recursive::Encode;

my $data = +{
    ほげほげ   => 'ふがふが',
    FIZZ       => 'BUZZ',
    さんきゅー => 'Спасибо',
};

do {
    say Dumper( $data );
};

do {
    say Dumper( Data::Recursive::Encode->encode_utf8( $data ));
};

do {
    local $Data::Dumper::Terse = 1;
    say Dumper( Data::Recursive::Encode->encode_utf8( $data ));
};

出力

$VAR1 = {
          "\x{307b}\x{3052}\x{307b}\x{3052}" => "\x{3075}\x{304c}\x{3075}\x{304c}",
          'FIZZ' => 'BUZZ',
          "\x{3055}\x{3093}\x{304d}\x{3085}\x{30fc}" => "\x{421}\x{43f}\x{430}\x{441}\x{438}\x{431}\x{43e}"
        };

$VAR1 = {
          'ほげほげ' => 'ふがふが',
          'FIZZ' => 'BUZZ',
          'さんきゅー' => 'Спасибо'
        };

{
          'ほげほげ' => 'ふがふが',
          'FIZZ' => 'BUZZ',
          'さんきゅー' => 'Спасибо'
        }

Data::Section::Simpleのメモ

毎回忘れるので。簡単なサンプル

#!/usr/bin/env perl -w
use strict;
use warnings;
use utf8;
use 5.10.0;

use Data::Section::Simple qw( get_data_section );
use Text::Xslate;

sub main {
    my $class = shift;

    my $tx = Text::Xslate->new(path => [Data::Section::Simple->new->get_data_section]);
    say $tx->render( 'class_data' => +{ class => $class } );
}

main($ARGV[0]);


__DATA__
@@ class_data
package Hoge::<: $class :>;
use strict;
use warnings;
use utf8;
use 5.10.0;


1;

__END__

perl test.pl Fuga

出力

% perl hoge.pl Hoo
package Hoge::Hoo;
use strict;
use warnings;
use utf8;
use 5.10.0;


1;