Estou tentando adicionar comentários em sua própria linha. o comportamento padrão de \Comment{}
é colocar o comentário na mesma linha que um arquivo \State
. Meu hack atual é apenas fazer
\documentclass{article}
\usepackage{amsmath}
\usepackage{caption}
\usepackage{algpseudocode}
\usepackage{algorithm}
\captionsetup\[algorithm\]{labelformat=empty}
\begin{document}
\begin{algorithm}
\caption{Init}
\begin{algorithmic}\[1\]
\State // Here is a comment the way I want it.
\State $x \gets y$
\end{algorithmic}
\end{algorithm}
\end{document}]
Saída desejada:
Existe uma maneira adequada de fazer isso? Que tal colocar o comentário em itálico para que seja um pouco menos intrusivo?
Responder1
Corrigi alguns erros no código:
- substituiu as 2 ocorrências de
\[...\]
por[...]
- excluiu o último caractere
]
Adicionei o \textit
comando para colocar o comentário em itálico.
\documentclass{article}
\usepackage{amsmath}
\usepackage{caption}
\usepackage{algpseudocode}
\usepackage{algorithm}
\captionsetup[algorithm]{labelformat=empty}
\begin{document}
\begin{algorithm}
\caption{Init}
\begin{algorithmic}[1]
\State // \textit{Here is a comment the way I want it.}
\State $x \gets y$
\end{algorithmic}
\end{algorithm}
\end{document}
Você também pode definir um comando para o seu tipo de comentário ( \CommentLine
):
\documentclass{article}
\usepackage{amsmath}
\usepackage{caption}
\usepackage{algpseudocode}
\usepackage{algorithm}
\captionsetup[algorithm]{labelformat=empty}
\newcommand{\CommentLine}[1]{
\State // \textit{#1}
}
\begin{document}
\begin{algorithm}
\caption{Init}
\begin{algorithmic}[1]
\CommentLine{Here is a comment the way I want it.}
\State $x \gets y$
\end{algorithmic}
\end{algorithm}
\end{document}
Responder2
Redefinir o caminhoalgorithmicx
funciona \Comment
usando
\algrenewcommand\algorithmiccomment[1]{// {\itshape #1}}
O comportamento padrão é insert \hfill \(\triangleright\)
, que coloca o comentário alinhado com a margem direita.
\documentclass{article}
\usepackage{algpseudocode,algorithm}
\usepackage{caption}
\captionsetup[algorithm]{labelformat=empty}
\algrenewcommand\algorithmiccomment[1]{// {\itshape #1}}
\begin{document}
\begin{algorithm}
\caption{Init}
\begin{algorithmic}[1]
\State // Here is a comment the way I want it.
\State $x \gets y$
\State \Comment{Here is a comment the way I want it.}
\end{algorithmic}
\end{algorithm}
\end{document}