Unwanted space after using a glossary term
The unwanted space comes from \defglsdisplayfirst
of glossaries.sty 2014/01/20 v4.03, see the line marked with % <==
:
\newcommand*{\defglsdisplayfirst}[2][\glsdefaulttype]{%
\GlossariesWarning{\string\defglsdisplayfirst\space is now obsolete.^^J
Use \string\defglsentryfmt\space instead}%
\expandafter\def\csname gls@#1@displayfirst\endcsname##1##2##3##4{#2}%
\edef\@gls@doentrydef{%
\noexpand\defglsentryfmt[#1]{%
\noexpand\ifcsdef{gls@#1@display}%
{%
\noexpand\@@gls@default@entryfmt
{\noexpand\csuse{gls@#1@displayfirst}}
{\noexpand\csuse{gls@#1@display}}%
}%
{%
\noexpand\@@gls@default@entryfmt
{\noexpand\csuse{gls@#1@displayfirst}}%
{\noexpand\glsdisplay} % <==
}%
}%
}%
\@gls@doentrydef
}
As workaround, the definition without the unwanted space:
\usepackage[...]{glossaries}
\makeatletter
\renewcommand*{\defglsdisplayfirst}[2][\glsdefaulttype]{%
\GlossariesWarning{\string\defglsdisplayfirst\space is now obsolete.^^J
Use \string\defglsentryfmt\space instead}%
\expandafter\def\csname gls@#1@displayfirst\endcsname##1##2##3##4{#2}%
\edef\@gls@doentrydef{%
\noexpand\defglsentryfmt[#1]{%
\noexpand\ifcsdef{gls@#1@display}%
{%
\noexpand\@@gls@default@entryfmt
{\noexpand\csuse{gls@#1@displayfirst}}
{\noexpand\csuse{gls@#1@display}}%
}%
{%
\noexpand\@@gls@default@entryfmt
{\noexpand\csuse{gls@#1@displayfirst}}%
{\noexpand\glsdisplay}% without unwanted space
}%
}%
}%
\@gls@doentrydef
}
\makeatother