From: <de...@de...> - 2014-12-19 03:01:20
|
Author: PeterThoeny Date: 2014-12-18 21:01:14 -0600 (Thu, 18 Dec 2014) New Revision: 28557 Trac url: http://develop.twiki.org/trac/changeset/28557 Modified: twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin.pm twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin/Core.pm Log: Item7594: Table Cells With TML - fix issue where bullet list is not closed at end of table cell Modified: twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin/Core.pm =================================================================== --- twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin/Core.pm 2014-12-19 03:00:37 UTC (rev 28556) +++ twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin/Core.pm 2014-12-19 03:01:14 UTC (rev 28557) @@ -85,6 +85,8 @@ my $escNewline = "\x001"; my $escPipe = "\x002"; my $escNesting = "\x003"; +my $escStart = "\x004"; +my $escEnd = "\x005"; BEGIN { $translationToken = "\0"; @@ -1433,9 +1435,6 @@ my @footerRowList = (); my $isPastHeaderRows = 0; - my $singleIndent = "\n\t"; - my $doubleIndent = "\n\t\t"; - my $tripleIndent = "\n\t\t\t"; foreach my $row (@curTable) { my $rowtext = ''; @@ -1658,7 +1657,9 @@ next if ( $type eq 'Y' ); my $fn = 'CGI::' . $type; no strict 'refs'; - $rowtext .= "$tripleIndent" . &$fn( $attr, " $cell " ); + my $cellEndPadding = ' '; + $cellEndPadding = "\n$currTablePre" if( $cell =~ /$escNewline/ ); + $rowtext .= "\n$currTablePre" . &$fn( $attr, " $cell$cellEndPadding" ); use strict 'refs'; } # foreach my $fcell ( @$row ) @@ -1688,9 +1689,10 @@ $trClassName = _appendRowNumberCssClass( $trClassName, 'dataColor', $modRowNum ); } - $rowtext .= $doubleIndent; + $rowtext .= "\n$currTablePre"; + my $rowHTML = - $doubleIndent . CGI::Tr( { class => $trClassName }, $rowtext ); + "\n$currTablePre" . CGI::Tr( { class => $trClassName }, $rowtext ); my $isHeaderRow = ( $headerCellCount == $colCount ); my $isFooterRow = ( ( $numberOfRows - $rowCount ) <= $footerRows ); @@ -1733,9 +1735,9 @@ $text .= $currTablePre . $thead if scalar @headerRowList; my $tfoot = - "$singleIndent<tfoot>" + "\n$currTablePre<tfoot>" . join( "", @footerRowList ) - . "$singleIndent</tfoot>"; + . "\n$currTablePre</tfoot>"; $text .= $currTablePre . $tfoot if scalar @footerRowList; my $tbody = @@ -1774,9 +1776,9 @@ my $text = ''; if( $type =~ />>/ ) { $$levelRef++; - $text = "$escNesting-$$levelRef("; + $text = "$escNesting-$$levelRef-$escStart"; } else { - $text = "$escNesting-$$levelRef)"; + $text = "$escNesting-$$levelRef-$escEnd"; $$levelRef-- if( $$levelRef > 0 ); } return $text; @@ -1835,13 +1837,15 @@ # Handle embedded TWiki tables, and escape newlines & pipe symbol in |>> ... <<| blocks. # First we add the nesting level so that blocks can be handled left-to-right, inside-out. - # Example: | A |>> B <<|>> C start |>> | C1 | C2 | <<| C end <<| - # Becomes: | A |esc-1( B esc-1)|esc-1( C start |esc-2( | C1 | C2 | esc-2)| C end esc-1)| - # Which allows us to handle matching & nested esc-n( ... esc-n) + # Example: + # | A |>> B <<|>> C start |>> | C1 | C2 | <<| C end <<| + # Becomes: + # | A |esc-1-start B esc-1-end|esc-1-start C start |esc-2-start | C1 | C2 | esc-2-end| C end esc-1-end| + # Which allows us to handle matching & nested esc-n-start ... esc-n-end my $level = 0; $_[0] =~ s/((?<=\|)>>|<<(?=\|))/_addEmbeddedNestingLevel( $1, \$level )/geos; - $_[0] =~ s/$escNesting-([0-9]+)\((.*?)$escNesting-\1\)/_handleEmbeddedTML( $2 )/geos; - $_[0] =~ s/$escNesting-[0-9]+([\(\)])//go; # Clean up unbalanced tokens + $_[0] =~ s/$escNesting-([0-9]+)-$escStart(.*?)$escNesting-\1-$escEnd/_handleEmbeddedTML( $2 )/geos; + $_[0] =~ s/$escNesting-[0-9]+-[$escStart$escEnd]//go; # Clean up unbalanced tokens undef $initSort; $insideTABLE = 0; Modified: twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin.pm =================================================================== --- twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin.pm 2014-12-19 03:00:37 UTC (rev 28556) +++ twiki/branches/TWikiRelease06x00/TablePlugin/lib/TWiki/Plugins/TablePlugin.pm 2014-12-19 03:01:14 UTC (rev 28557) @@ -30,7 +30,7 @@ # ========================= our $VERSION = '$Rev$'; -our $RELEASE = '2014-12-08'; +our $RELEASE = '2014-12-18'; our $topic; our $installWeb; |