The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Array::Columnize - arrange list data in columns.

SYNOPSIS

    use Array::Columnize;
    print columnize($array_ref, $optional_hash_or_hash_ref);

DESCRIPTION

In showing long lists, sometimes one would prefer to see the values arranged and aligned in columns. Some examples include listing methods of an object, listing debugger commands, or showing a numeric array with data aligned.

OPTIONS

displaywidth

the line display width used in calculating how to align columns

colfmt

What format specifier to use in sprintf to stringify list entries. The default is none.

colsep

String to insert between columns. The default is two spaces, oe space just wasn't enough.

the column separator

lineprefix
linesuffix
termadjust
arrange_array
ladjust

whether to left justify text instead of right justify. The default is true

EXAMPLES

Simple data example

    print columnize(['a','b','c','d'], {displaywidth=>4});

produces:

    a  c
    b  d

With numeric data

    my $array_ref = [80..120];
    print columnize($array_ref, {ljust => 0}) ;

produces:

    80  83  86  89  92  95   98  101  104  107  110  113  116  119
    81  84  87  90  93  96   99  102  105  108  111  114  117  120
    82  85  88  91  94  97  100  103  106  109  112  115  118

while:

    print columnize($array_ref, {ljust => 0, arrange_vertical => 0}) ;

produces:

     80   81   82   83   84   85   86   87   88   89
     90   91   92   93   94   95   96   97   98   99
    100  101  102  103  104  105  106  107  108  109
    110  111  112  113  114  115  116  117  118  119
    120

And

    my $array_ref = [1..30];
    print columnize($array_ref,
                    {arrange_array => 1, ljust => 0, displaywidth => 70});

produces:

   ( 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15,
    16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)

With String data

    @ary = qw(bibrons golden madascar leopard mourning suras tokay);
    print columnize(\@ary, {displaywidth => 18});

produces:

    bibrons   mourning
    golden    suras
    madascar  tokay
    leopard

    print columnize \@ary, {displaywidth => 18, colsep => ' | '};

produces:

    bibrons  | mourning
    golden   | suras
    madascar | tokay
    leopard

AUTHOR

Rocky Bernstein, rocky@cpan.org

BUGS

Please report any bugs or feature requests through the web interface at https://github.com/rocky/Perl-Array-Columnize/issues.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Array::Columnize

You can also look for information at:

COPYRIGHT & LICENSE

Copyright (c) 2011, 2012 Rocky Bernstein.

LICENSE

Same terms as Perl.