\n");
break;
case '#':{ /* latex table entry */
if (!intable) { /* HACK: we just handle itemized lists */
/* Itemized list outside of table */
if (line[1] == 's')
(void) fputs("
%s
\n", line + 1);
}
}
break;
}
case '%':{ /* troff table entry */
break; /* ignore */
}
case '\n': /* empty text line */
if (tabl)
fprintf(b, "\n");
if (para)
fprintf(b, "\n");
para = FALSE;
tabl = FALSE;
break;
case ' ':{ /* normal text line */
if (skiptable && !forcetable) break; /* break */
if ((line2[1] == NUL) || (line2[1] == '\n')) {
fprintf(b, "\n");
if (para)
fprintf(b, "\n");
para = FALSE;
tabl = FALSE;
} else if (line2[1] == ' ') { /* in table */
if (inhlink) {
int numspaces = 0;
while (line2[numspaces+1] == ' ') numspaces++;
fprintf(b, "%s", line2+1+numspaces);
} else {
if (!tabl) {
if (para)
fprintf(b, "\n");
fprintf(b, "\n");
}
fprintf(b, "%s\n", &line2[1]);
para = FALSE;
tabl = TRUE;
}
} else {
if (inhlink) {
/* no newline here! */
fprintf(b, "%s", &line2[1]);
} else {
if (tabl) {
fprintf(b, "\n");
tabl = 0;
}
if (!para) {
para = TRUE; /* not in para so start one */
tabl = FALSE;
fprintf(b, "");
}
fprintf(b, "%s\n", &line2[1]);
}
}
break;
}
default:{
if (isdigit((int)line[0])) { /* start of section */
int newlevel = line[0]-'0';
if (newlevel == 1) {
startpage = TRUE;
intable = FALSE;
if (!strncmp(&line[2], "Gnuplot", 7)) {
processing_title_page = TRUE;
sectionname = "Overview";
} else if (!strncmp(&line[2], "Plot", 4))
sectionname = "Plotting_Styles";
else if (!strncmp(&line[2], "Commands", 4))
sectionname = "Commands";
else if (!strncmp(&line[2], "Term", 4))
sectionname = "Terminals";
else if (!strncmp(&line[2], "Bugs", 4))
sectionname = "Bugs";
} else {
if (tabl)
fprintf(b, "\n");
if (para)
fprintf(b, "
\n");
}
para = FALSE; /* not in a paragraph */
tabl = FALSE;
/* output unique ID */
if (startpage) {
strcpy(location, sectionname);
} else
sprintf(location, "loc%d", line_count);
/* add list of subtopics */
if (!collapsing_terminal_docs && !processing_title_page) {
reftable(last_line, b,
"\n",
"\t