Ajustar la sangría dentro del paquete algorítmicox cuando una línea está rota

Ajustar la sangría dentro del paquete algorítmicox cuando una línea está rota

tengo este codigo

\documentclass{article}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{document}
\begin{algorithm}
   \caption{Minimal Working Example for my Problem}
\begin{algorithmic}[1]
   \While{Indentation is a mess}
      \State Examine a very long line that looks horrible because the indentation is all messed up.
   \EndWhile
\end{algorithmic}
\end{algorithm}
\end{document}​

Me gustaría que el texto dividido tuviera sangría en la misma columna donde comenzó la declaración.

Respuesta1

Envuelva su línea larga en una talineación operativa \parbox:

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{algorithm}% http://ctan.org/pkg/algorithms
\usepackage{algpseudocode}% http://ctan.org/pkg/algorithmicx
\begin{document}
\begin{algorithm}
  \caption{Minimal Working Example for my Problem}
  \begin{algorithmic}[1]
    \While{Indentation is a mess}
      \State \parbox[t]{\dimexpr\linewidth-\algorithmicindent}{Examine a very long line that looks horrible 
        because the indentation is all messed up.\strut}
    \EndWhile
  \end{algorithmic}
\end{algorithm}
\end{document}​

La sangría actual ( \algorithmicindent) se elimina para \linewidthque quepa exactamente dentro del ancho de la línea horizontal. Agregar un \strutal final permite una alineación vertical adecuada entre líneas (o \Statelíneas) en líneas que no tienen descendentes.

información relacionada