630a631
>   static $tableattr,$intable;
632,639c633,640
<   switch($x)
<   {
<     case 'table': { echo "<table $y><tr>"; } break;
<     case 'cell': { echo "<td $y>"; } break;
<     case 'cellnc': { echo "</td><td $y>"; } break;
<     case 'cellnr': { echo "</td></tr><tr><td $y>"; } break;
<     case 'tableend': { echo "</td></tr></table>"; } break;
<   }
---
>   if ($x == 'cell' || $x == 'cellnr') {
>     if (!$intable) { echo "<table $tableattr><tr><td $y>"; $intable=1; }
>     else if ($x == 'cellnr') { echo "</td></tr><tr><td $y>"; }
>     else { echo "</td><td $y>"; }
>     return;
>   } 
>   if ($intable) { echo "</td></tr></table>"; $intable=0; }
>   $tableattr = $y;
751c752
<     if (preg_match("/^\\[\\[(table|cell|cellnc|cellnr|tableend)(\\s.*?)?\\]\\]/",$x,$match)) {
---
>     if (preg_match("/^\\[\\[(table|cell|cellnr|tableend)(\\s.*?)?\\]\\]/",$x,$match)) {