OMG.
* Don't eat the `\\' and then hope to find it.
* Actually chew through the `;' characters rather than piling them up.
* Don't eat spaces while looking for more `;'s.
%% Comment setting.
\def\comment#1{\mbox{\normalfont\itshape\/#1\/}}
\atdef /*#1*/{/*\comment{#1}*/}
%% Comment setting.
\def\comment#1{\mbox{\normalfont\itshape\/#1\/}}
\atdef /*#1*/{/*\comment{#1}*/}
-\def\@semis{\@ifnextchar;{;\@semis}\@semicomment}
+\def\@semis;{\@ifnextchar@preserve;{;\@semis}\@semicomment}
\def\@semicomment#1\\{\comment{#1}\\}
\def\@semicomment#1\\{\comment{#1}\\}
%% Environment for setting programs. Newlines are explicit, because
%% otherwise I need comments in weird places to make the vertical spacing
%% Environment for setting programs. Newlines are explicit, because
%% otherwise I need comments in weird places to make the vertical spacing