in reply to Re^4: Cleansing and stacking arguments before calling system()
in thread Cleansing and stacking arguments before calling system()

Further testing now yields the following code (Aristotle++ for the suggestion of using this module, and valdez++ for helping me figure out why the keys weren't captured properly)
use strict; use Data::Dumper; use Config::General; my $conf = new Config::General( -ConfigFile => 'template.ini', -ExtendedAccess => 1, -InterPolateVars => 1, -AutoTrue => 1, ); my %config = $conf->getall; my $template = $conf->obj('template'); my $backup_bit = $template->backup_bit; my $beamable = $template->copyprevention_bit; my $bpp = $template->bpp; my $maxdepth = $template->maxdepth; my $url = $template->url; my $title = $template->title; my $launchable_bit = $template->launchable_bit; my $no_url_info = $template->no_url_info; my $avantgo = $template->AvantGo; my $compression = $template->compression; print Dumper(%config); __END__ <template> url = AvantGo = No maxdepth = bpp = 4 compression = zlib title = no_url_info = 0 copyprevention_bit = 0 backup_bit = 0 launchable_bit = 0 </template>

Now let's see if it passes the litmus test of wrapping extremely long lines onto the next line. This template is in the body of an email message, limited by the wrapping capabilities of the MUA. I had this figured out in my original code as follows:

my $line=""; my @unwrappeddata; foreach (@body) { chomp $_; next if /^#/; if (m/^[^\s=]+\s+=\s*/ || m/^\[.*\]$/) { $line =~ s/^#/\n#/m; $line .= "\n"; push @unwrappeddata, $line; $line = $_; } else { $line .= $_; } last if qw/</template>/; } $line .= "\n"; push @unwrappeddata, $line;

I'll keep marching along, this is working out well so far.

Replies are listed 'Best First'.
Re^2: Cleansing and stacking arguments before calling system()
by Aristotle (Chancellor) on Sep 14, 2002 at 15:33 UTC
    Here comes another module suggestion then. :^) Have a look at Text::Wrap.

    Makeshifts last the longest.