Suprimir espaço após sigla

Suprimir espaço após sigla

Estou usando o glossariespacote para manter uma lista de siglas. Em holandês, ao compor uma palavra com uma sigla, você deve usar um hífen para unir as duas palavras. Por exemplo, uma tabela ARP torna-se tabela ARP em holandês. Se eu defini a sigla 'ARP', como posso colocar o '-tabel' depois dela sem que um espaço seja introduzido pelo LaTeX?

Isso é o que tenho atualmente:

\gls{arp} -tabel

Mas produz:

ARP -tabel

O que eu quero:

ARP-tabel

Responder1

Não é uma pergunta estúpida. \glstem a sintaxe\gls[opções]{rótulo}[inserir]. Em geral, comandos cujo argumento final é opcional podem ter um comportamento estranho quando o comando é seguido por um espaço. Por exemplo:

\documentclass{article}

\begin{document}

\newcommand*{\itest}[1][Foo]{#1}
\newcommand*{\otest}[1]{#1\itest}

\otest{X} 1. \otest{Y}[Bar] 2.

\end{document}

Produz:

XFoo1. YBar 2.

No primeiro caso o espaço foi descartado, mas no segundo caso não. Como esse geralmente não é um efeito desejado para \gls, glossariesusa amsgeno teste para um argumento opcional que não descarta os espaços seguintes. Então \gls{arp} -tabelnão ignora o espaço. Conforme mencionado nos comentários, a solução é remover o espaço \gls{arp}-tabelou colocar o sufixo no argumento opcional \gls{arp}[-tabel]. A única coisa que você precisa observar é se deseja [imediatamente depois \gls{arp}; nesse caso, você terá que fazer algo como \gls{arp}{}[ou \gls{arp}{[}.

informação relacionada