# Linebreak in Package algorithm2e

I'm using the algorithm2e package for pseudocode. I got some very long lines that needed to be wrapped. Is there a way to indent the following (breaked) lines and/or put a mark at the first line to signalize that there happened a linebreak (similar to solution for listings package)

I found a similar question for the listings package, that was answered before, but I'm looking explicitly for an algorithm2e solution.

-
See also the related question if you want to skip line numbers for manually wrapped lines. –  Sadeq Dousti Jan 14 at 22:04

The following minimal example defines

• \nosemic: remove printing of the end-of-line (EOL) character (typically ;);
• \dosemic: reinstate printing of the EOL character;
• \pushline: indents line by 1em (the typical indent); provided by algorithm2e as \Indp;
• \popline: remove indent of \pushline (undent?); provided by algorithm2e as \Indm

\documentclass{article}
\usepackage{algorithm2e}% http://ctan.org/pkg/algorithm2e
\makeatletter
\newcommand{\pushline}{\Indp}% Indent
\newcommand{\popline}{\Indm\dosemic}% Undent
\makeatother
\begin{document}
\begin{algorithm}[H]
\SetAlgoLined
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e }
initialization\;
\While{not at end of this document}{
\eIf{understand}{
go to next section\;
\nosemic this is a very long statement that has to be\;
\pushline\dosemic wrapped over two lines\;
\popline current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\caption{How to write algorithms}
\end{algorithm}
\end{document}​


Since I am unfamiliar with your algorithm2e setup, I'm not sure how you would like to combine the four commands. As such, I've kept them separate for maximum (yet manual) usage.

-

\Indp and \Indm can be used in the package algorithm2e for indent and removing indent. I have tested it.

-