package Text::Trac::Table; use strict; use base qw(Text::Trac::BlockNode); sub init { my $self = shift; $self->pattern(qr/^\|\|([^\|]*\|\|(?:[^\|]*\|\|)+)$/xms); return $self; } sub parse { my ( $self, $l ) = @_; my $c = $self->{context}; my $pattern = $self->pattern; $l =~ $pattern or return $l; $c->htmllines('
| " . join( " | ", map { $self->replace($_) # parse inline nodes } split(/\|\|/, $l) ) . " |