csv_html_plus :-
L =
"Character,Speech
The multitude,The messiah! Show us the messiah!
Brians mother,Now you listen here! He's not the messiah; he's a very naughty boy! Now go away!
The multitude,Who are you?
Brians mother,I'm his mother; that's who!
The multitude,Behold his mother! Behold his mother!",
csv_html_plus(L, Out1, []),
string_to_list(Str1, Out1),
writeln(Str1).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% HTML +
%
csv_html_plus(L) -->
"
\n",
csv_head(L, R),
csv_body(R),
"
".
csv_head(L, R) -->
"\n",
csv_head_tr(L, R),
"\n".
csv_head_tr(L, R) -->
"\n",
csv_head_th(L, R),
"\n
\n".
csv_head_th(L, S) -->
"",
csv_head_th_in(L, S),
" | ".
csv_head_th_in([], []) --> [].
csv_head_th_in([10|L], L) --> [].
csv_head_th_in([44|L], S) -->
"",
csv_head_th_in(L,S).
csv_head_th_in([H|T], S) -->
[H],
csv_head_th_in(T, S).
csv_body(L) -->
" | \n",
csv_body_tr(L),
"\n".
csv_body_tr([]) --> [].
csv_body_tr(L) -->
"\n",
csv_body_td(L, S),
"\n
\n",
csv_body_tr(S).
csv_body_td(L, S) -->
"",
csv_body_td_in(L, S),
" | ".
csv_body_td_in([], []) --> [].
csv_body_td_in([10|L], L) --> [].
csv_body_td_in([44|L], S) -->
"",
csv_body_td_in(L,S).
csv_body_td_in([60|T], S) -->
"<",
csv_body_td_in(T, S).
csv_body_td_in([62|T], S) -->
">",
csv_body_td_in(T, S).
csv_body_td_in([H|T], S) -->
[H],
csv_body_td_in(T, S).
|