diff -ruN HTML-HTML5-ToText-0.002/lib/HTML/HTML5/ToText.pm HTML-HTML5-ToText-0.00201/lib/HTML/HTML5/ToText.pm --- HTML-HTML5-ToText-0.002/lib/HTML/HTML5/ToText.pm 2012-01-31 01:41:12.000000000 -0800 +++ HTML-HTML5-ToText-0.00201/lib/HTML/HTML5/ToText.pm 2013-04-16 22:08:08.296875000 -0700 @@ -126,7 +126,10 @@ else { my $elem = uc $kid->nodeName; - my $str = $self->$elem($kid, %args); + $elem =~ s/[^A-Z_0-9]//g; + local $@; + my $str = eval { $self->$elem($kid, %args) }; + $@ and next ; if ($str =~ m{^\n} and not $kid->previousSibling) { diff -ruN HTML-HTML5-ToText-0.002/MANIFEST HTML-HTML5-ToText-0.00201/MANIFEST --- HTML-HTML5-ToText-0.002/MANIFEST 2012-01-31 01:44:50.000000000 -0800 +++ HTML-HTML5-ToText-0.00201/MANIFEST 2013-04-16 22:17:30.125000000 -0700 @@ -47,4 +47,5 @@ t/01basic.t t/02simple.t t/03tables.t +t/04comment.t SIGNATURE Public-key signature (added by MakeMaker) diff -ruN HTML-HTML5-ToText-0.002/t/04comment.t HTML-HTML5-ToText-0.00201/t/04comment.t --- HTML-HTML5-ToText-0.002/t/04comment.t 1969-12-31 16:00:00.000000000 -0800 +++ HTML-HTML5-ToText-0.00201/t/04comment.t 2013-04-16 22:19:34.828125000 -0700 @@ -0,0 +1,26 @@ +use Test::More tests => 1; +use HTML::HTML5::Parser; +use HTML::HTML5::ToText; + +my $dom = HTML::HTML5::Parser->load_html(IO => \*DATA); +my $str = HTML::HTML5::ToText->with_traits(qw/TextFormatting ShowLinks ShowImages/)->process($dom); + +my $output = <<'OUTPUT'; +Foo +LINK: (stylesheet) + +*Hello world * + +_how_are +[IMG:_you]?_ +OUTPUT + +#~ use Data::Dump qw/ dd pp /; warn pp([ $str, $output] ); +is $str, $output; + +__DATA__ + +Foo + +

Hello world

+

how are
you?