I need to output Prolog
style inside algorithm2e
and It seems that I cannot use \verb
inside algorithm2e
.
How can I use \verb
or verbatim
for only one line inside algorithm2e
in Latex?
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It only takes a minute to sign up.
Sign up to join this communityI need to output Prolog
style inside algorithm2e
and It seems that I cannot use \verb
inside algorithm2e
.
How can I use \verb
or verbatim
for only one line inside algorithm2e
in Latex?
Since algorithm2e
uses a macro-style interface for its programming structures, using verbatim
directly is a problem. If its use is really necessary, boxing the content before using it allows you to pass it as an argument to the programming structure commands:
\documentclass{article}
\usepackage{algorithm2e}% http://ctan.org/pkg/algorithm2e
\newsavebox{\mycode}
\begin{document}
\begin{algorithm}[H]
\begin{lrbox}{\mycode}
\verb!%&$*@#*%!
\end{lrbox}
\SetAlgoLined
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e}
initialization\;
\While{not at end of this document}{
read current\;
\eIf{understand}{
go to next section and \usebox{\mycode}\;
current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\caption{How to write algorithms}
\end{algorithm}
\end{document}
The verbatim
content is stored in \mycode
first using the lrbox
environment. Subsequent usage of this box is via \usebox{\mycode}
.
If it's not really necessary, using \texttt{..}
, say, would (should) suffice. The decide here would be based on whether you have funny characters included in the part you designate as requiring verbatim
.