NAME
Indent::Form - A perl module for form indenting.
SYNOPSIS
use Indent::Form;
my $indent = Indent::Form->new(%parametes);
$indent->indent($data_ar, $actual_indent, $non_indent_flag);
METHODS
"new(%params)"
Constructor.
* "ansi"
Use with ANSI sequences.
Default value is 0.
* "align"
Align of left side of form.
Default value is 'right'.
* "fill_character"
Fill character for left side of form.
Default value is ' '.
* "form_separator"
Form separator.
Default value of 'form_separator' is ': '.
* "line_size"
Line size.
Default value of 'line_size' is 79 chars.
* "next_indent"
Next indent.
Default value of 'next_indent' isn't define.
* "output_separator"
Output separator.
Default value of 'output_separator' is new line (\n).
"indent($data_ar[, $actual_indent, $non_indent_flag])"
Indent data. Returns string.
Arguments:
$data_ar - Reference to data array ([['key' => 'value'], [..]]);
$actual_indent - String to actual indent.
$non_indent_flag - Flag, than says no-indent.
ERRORS
new():
'align' parameter must be a 'left' or 'right' string.
'line_size' parameter must be a number.
Cannot load 'Text::ANSI::Util' module.
From Class::Utils:
Unknown parameter '%s'.
EXAMPLE1
use strict;
use warnings;
use Indent::Form;
# Indent object.
my $indent = Indent::Form->new;
# Input data.
my $input_ar = [
['Filename', 'foo.bar'],
['Size', '1456kB'],
['Description', 'File'],
['Author', 'skim.cz'],
];
# Indent.
print $indent->indent($input_ar)."\n";
# Output:
# Filename: foo.bar
# Size: 1456kB
# Description: File
# Author: skim.cz
EXAMPLE2
use strict;
use warnings;
use Indent::Form;
# Indent object.
my $indent = Indent::Form->new(
'align' => 'left',
);
# Input data.
my $input_ar = [
['Filename', 'foo.bar'],
['Size', '1456kB'],
['Description', 'File'],
['Author', 'skim.cz'],
];
# Indent.
print $indent->indent($input_ar)."\n";
# Output:
# Filename : foo.bar
# Size : 1456kB
# Description: File
# Author : skim.cz
EXAMPLE3
use strict;
use warnings;
use Indent::Form;
# Indent object.
my $indent = Indent::Form->new(
'align' => 'left',
'fill_character' => '.',
);
# Input data.
my $input_ar = [
['Filename', 'foo.bar'],
['Size', '1456kB'],
['Description', 'File'],
['Author', 'skim.cz'],
];
# Indent.
print $indent->indent($input_ar)."\n";
# Output:
# Filename...: foo.bar
# Size.......: 1456kB
# Description: File
# Author.....: skim.cz
EXAMPLE4
use strict;
use warnings;
use Encode qw(decode_utf8 encode_utf8);
use Indent::Form;
# Indent object.
my $indent = Indent::Form->new;
# Input data.
my $input_ar = [
['Filename', 'foo.bar'],
['Size', '1456kB'],
['Description', 'File'],
['Author', 'skim.cz'],
];
# Indent.
print encode_utf8($indent->indent($input_ar, decode_utf8('|↔| ')))."\n";
# Output:
# |↔| Filename: foo.bar
# |↔| Size: 1456kB
# |↔| Description: File
# |↔| Author: skim.cz
DEPENDENCIES
Class::Utils, English, Error::Pure, Indent::Word, List::MoreUtils,
Readonly.
Text::ANSI::Util for situation with 'ansi' => 1.
SEE ALSO
Indent
Class for indent handling.
Indent::Block
Class for block indenting.
Indent::Data
Class for data indenting.
Indent::String
Class for text indenting.
Indent::Utils
Utilities for Indent classes.
Indent::Word
Class for word indenting.
REPOSITORY
<https://github.com/michal-josef-spacek/Indent-Form>
AUTHOR
Michal Josef Å paÄek <mailto:skim@cpan.org>
<http://skim.cz>
LICENSE AND COPYRIGHT
© 2011-2020 Michal Josef Å paÄek
Artistic License
BSD 2-Clause License
VERSION
0.03