Yes, you are right it's an HTML::Tidy issue not a perl tidy use. I mistyped.
Here's the current code. Trying your new in the for loop suggestion:
use strict;
use warnings;
use HTML::Tidy;
my $call_dir = "Bing/1Parsed/Html3";
my $contents_of_file = 1;
#my $tidy = HTML::Tidy->new();
#commented out for now
#my $tidy = HTML::Tidy->new({
# tidy_mark => 1,
# #output_xhtml => 1, # yes
# #output_xhtml => 1, # yes
# add_xml_decl => 1, # no
# wrap => 76,
# error_file => 'errs.txt',
# char_encoding => 'utf8',
# indent_cdata => 1,
# clean => 1,
# fix_bad_comments =>1
#});
my @files = glob "$call_dir/*.html";
printf "Got %d files\n", scalar @files;
for my $file (@files) {
#added new Tidy piece here to test:
my $tidy = HTML::Tidy->new({
tidy_mark => 1,
#output_xhtml => 1, # yes
#output_xhtml => 1, # yes
add_xml_decl => 1, # no
wrap => 76,
error_file => 'errs.txt',
char_encoding => 'utf8',
indent_cdata => 1,
clean => 1,
fix_bad_comments =>1
});
open my $in_fh, '<', $file
or die "Could not open $file : $!";
my $contents_of_file = do { local $/;<$in_fh> };
close $in_fh;
$tidy->parse( $file, $contents_of_file );
open OUT,'>',$file or die "$!";
print OUT $tidy->clean( $file, $contents_of_file );
print "cleaning" . $file. "\n";
for my $message ( $tidy->messages ) {
#print $message->as_string;
}
}
Compiles fine now. I'm testing speed with ->new before the for and after.