Заставить макрос соблюдать интервал или его отсутствие

Заставить макрос соблюдать интервал или его отсутствие

Я сделал этот простой макрос:

\documentclass{ltxdoc}
\newcommand\Q{\textbf{Q}}

\begin{document}
I like to type my \Q's in bold quickly, but sometimes I also end my line with \Q. 
This doesn't have it's intended effect.
\end{document}

Можно ли заставить макрос проверять пробел (или символ) впереди и подчиняться ему, как если бы я печатал \textbf{Q}нормально? Я бы хотел, чтобы он вел себя нормально, независимо от того, есть ли точка (.) или пробел ( ) впереди.

решение1

Даже несмотря на то, что в последнее время это стало своего рода табу, xspaceпакет делает следующее:

введите описание изображения здесь

Код:

\documentclass{ltxdoc}
\usepackage{xspace}
\newcommand\Q{\textbf{Q}\xspace}

\begin{document}
I like to type my \Q's in bold quickly, but sometimes I also end my line with \Q. 
This doesn't have it's intended effect.

In a sentence \Q works now.
\end{document}

Связанный контент