BEGIN {
FS = "|";
data = "";
flag = 0;
firstRow = 0;
}
/\\table/ {
flag = 1;
firstRow = 1;
next;
}
/\\endtable/ {
if (data != "")
{
printf "
\n";
printf data;
printf "
\n";
}
data = "";
flag = 0;
next;
}
/\\vartable/ {
flag = 2;
firstRow = 1;
next;
}
/\\endvartable/ {
if (data != "")
{
printf "\n";
printf data;
printf "
\n";
}
data = "";
flag = 0;
next;
}
/\\plaintable/ {
flag = 3;
firstRow = 1;
next;
}
/\\endplaintable/ {
if (data != "")
{
printf "\n";
printf data;
printf "
\n";
}
data = "";
flag = 0;
next;
}
{
if (flag > 0)
{
data = (data "\n");
if (flag == 1)
{
for (i = 0; i <= NF; i++)
{
if ((i != 0) && (firstRow == 1))
{
data = (data " "$i" | \n");
}
else
{
if (i == 1)
{
data = (data " \\c "$i" | \n");
}
else if (i > 1)
{
data = (data " "$i" | \n");
}
}
}
}
else if (flag == 2)
{
for (i = 0; i <= NF; i++)
{
if (i == 1)
{
data = (data " \\f$"$i"\\f$ | \n");
data = (data " = | \n");
}
else if (i > 1)
{
data = (data " "$i" | \n");
}
}
}
else if (flag == 3)
{
for (i = 0; i <= NF; i++)
{
if (i == 1)
{
data = (data " "$i" | \n");
data = (data " : | \n");
}
else if (i > 1)
{
data = (data " "$i" | \n");
}
}
}
data = (data "
\n");
firstRow = 0;
}
else
{
print $0
}
}