Como alinhar o texto à direita em um ambiente gramatical?

Como alinhar o texto à direita em um ambiente gramatical?

Usando o grammarambiente do syntaxpacote, não consigo encontrar uma maneira de alinhar o texto à direita na minha definição de sintaxe:

\documentclass{article}
\usepackage{syntax}

\begin{document}

\begin{grammar}
<expression> ::=
\alt <expression> $+$ <expression>         (addition)
\alt <expression> $*$ <expression>   (multiplication)
\end{grammar}

\end{document}

Gostaria que (addition)e (multiplication)estivesse alinhado à direita na saída. A resposta mais próxima que consegui encontrar foi: Gramática com regras numeradas

Mas não consegui entender a solução nem reproduzi-la para este caso. Parece que esta parte quase resolveria o problema:

\hskip\dimexpr\linewidth-\labelwidth+\grammarindent-\labelsep

Mas não consigo achar uma forma de ter o valor adequado...

Responder1

Um simples \hfillparece fazer o trabalho ( showframeé apenas para orientação visual):

\documentclass{article}
\usepackage{syntax}
\usepackage{showframe}

\begin{document}

\begin{grammar}
<expression> ::= <ident>
\alt <expression> $+$ <expression>         \hfill (addition)
\alt <expression> $*$ <expression>   \hfill  (multiplication)
\end{grammar}

\end{document}

insira a descrição da imagem aqui

informação relacionada