And found one stroke after the fact.

568
function cif($a,$p)
dim $r,$c,$i,$,$d,$z
$z=@crlf
$p=split($p,$z)
$r=ubound($p)
$c=ubound(split($p[0],"&"))
dim $y[$r,$c] , $l[$c], $t[$c]
for $i=0 to $r
for $=0 to $c
$d=split($p[$i],"&")[$]
$y[$i,$]=$d
if ($d^) > $l[$]
$l[$]=0^$d
endif
next
next
for $i=0 to $r
for $=0 to $c
$p=substr($a,$+1,1)
while ($y[$i,$]^)<$l[$]
$d=" " + $y[$i,$] + " "
$y[$i,$]=iif( $p=">",left($d,~),right( $d,iif( $p="=",$l[$],~ ) ) )
loop
while ($t[$]^)< $l[$]+2
$t[$]=$t[$]+"-"
loop
next
next
$p="@" + join($t,"-") + "@"
$d=$p+$z
for $i=0 to $r
for $=0 to $c
$d=$d+ iif($i=1 & $=0,"|" + join($t,"+") + "|" + $z,"") + "| " + $y[$i,$] + " " + iif($=$c,"|" + $z,"")
$cif=$d + $p
endfunction