Intentando escribir la palabra clave "bucle" en el algoritmo2e

Intentando escribir la palabra clave "bucle" en el algoritmo2e

Estoy usandoalgoritmo2ey necesito usar la looppalabra clave como aparece aquí:

[![ingrese la descripción de la imagen aquí][1]][1]

MWE

documentclass{article}
\usepackage{xcolor}
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}



%%% Coloring the comment as blue
\newcommand\mycommfont[1]{\footnotesize\ttfamily\textcolor{blue}{#1}}
\SetCommentSty{mycommfont}

\SetKwInput{KwInput}{Input}                % Set the Input
\SetKwInput{KwOutput}{Output}              % set the Output


\begin{document}
\maketitle

\begin{algorithm}[H]
\DontPrintSemicolon
  
  \KwInput{Your Input}
  \KwOutput{Your output}
  \KwData{Testing set $x$}
  $\sum_{i=1}^{\infty} := 0$ \tcp*{this is a comment}
  \tcc{Now this is an if...else conditional loop}
  \If{Condition 1}
    {
        Do something    \tcp*{this is another comment}
        \If{sub-Condition}
        {Do a lot}
    }
    \ElseIf{Condition 2}
    {
        Do Otherwise \;
        \tcc{Now this is a for loop}
        \For{sequence}    
        { 
            loop instructions
        }
    }
    \Else
    {
        Do the rest
    }
    
    \tcc{Now this is a While loop}
   \While{Condition}
   {
        Do something\;
   }

\caption{Example code}
\end{algorithm}

\end{document}

Respuesta1

Ahora estoy descubriendo este paquete y en la documentación hay macros que le permiten definir sus propias palabras clave.

Hay algunos que definen bucles, pero añaden la prueba de parada al final o al principio del bucle.

Entonces opté por la macro que define un bloque, ya que la prueba de parada se da antes del final del ciclo.\SetKwBlock{Loop}{Loop}{end}

El primer parámetro define el nombre de la macro, por lo que si la escribes con mayúscula {Loop}, deberás hacer lo mismo al llamar: \Loop. Si lo escribes en minúscula {loop}, debes llamar \loop. El segundo parámetro es cómo se mostrará la palabra clave en el algoritmo.

Cito el manual en la página 35:

\SetKwBlock{Comenzar}{comenzar}{end}define una macro\Comenzar{txt}que denota un bloque. El texto está rodeado por las palabras.comenzaryfinen tipografía de palabras clave y desplazado hacia la derecha (sangrado). En\Vlínea o \Línea modoSe agrega una línea vertical recta.\Begin(texto lateral){texto}también proporciona texto en un bloque rodeado porcomenzaryfin, perotexto lateralsi se pone después delcomenzarpalabra clave. Combinado con\tcc*[f] macro, te permite poner comentarios en la misma línea quecomenzar. También puedes usar alternativas.\uComenzar{txt}que actúa como\Comenzar{txt}pero sinfin. Útil por ejemplo como separador de piezas que no necesita necesariamentefinpalabra clave.

captura de pantalla

\documentclass{article}
\usepackage{xcolor}
\usepackage[linesnumbered,boxruled,ruled,noline]{algorithm2e}



%%% Coloring the comment as blue
\newcommand\mycommfont[1]{\footnotesize\ttfamily\textcolor{blue}{#1}}
\SetCommentSty{mycommfont}

\SetKwInput{KwInput}{Input}                % Set the Input
\SetKwInput{KwOutput}{Output}              % set the Output
\SetKwBlock{Loop}{Loop}{end}
\begin{document}
%\maketitle

\begin{algorithm}[H]
\DontPrintSemicolon

  \KwInput{Your Input}
  \KwOutput{Your output}
  \KwData{Testing set $x$}
  \Loop ( until the terminal condition is met. One epoch:)
  {n=n+1

  $\sum_{i=1}^{\infty} := 0$ \tcp*{this is a comment}
  \tcc{Now this is an if...else conditional loop}
  \If{Condition 1}
    {
        Do something    \tcp*{this is another comment}
        \If{sub-Condition}
        {Do a lot}
    }

   terminal condition: RMSE on \dots
}
\caption{Example code}
\end{algorithm}

\end{document}

información relacionada