in reply to format issues
and it don't even run under strict, what I'm missing here ?
You are missing that the ~~ tells to repeat shifting @f1 even after it is empty. Trying to build yet another line after the third, shift @f1 returns an undefined value, which then - alas, cannot be dereferenced.
One solution:
my $foo = [('') x 9]; format = +-----------------------+ | @ @ @ | @ @ @ | @ @ @ |~~ @{ shift @f1 || $foo } |-------+-------+-------| | @ @ @ | @ @ @ | @ @ @ |~~ @{ shift @f2 || $foo } |-------+-------+-------| | @ @ @ | @ @ @ | @ @ @ |~~ @{ shift @f3 || $foo } +-----------------------+ . write;
You could also push the array reference filled with empty elements ($foo) onto @f1, @f2 and @f3.
my $foo = [('') x 9]; push @$_, $foo for \@f1,\@f2,\@f3; format = +-----------------------+ | @ @ @ | @ @ @ | @ @ @ |~~ @{shift @f1} |-------+-------+-------| | @ @ @ | @ @ @ | @ @ @ |~~ @{shift @f2} |-------+-------+-------| | @ @ @ | @ @ @ | @ @ @ |~~ @{shift @f3} +-----------------------+ . write;
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: format issues
by Fox (Pilgrim) on Dec 04, 2009 at 16:07 UTC | |
by shmem (Chancellor) on Dec 04, 2009 at 17:41 UTC |