Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am trying to put a text in "" using \textquotedblleft and \textquotedblright. It works perfectly fine except it does not put ANY space after \textquotedblright. In other words, BEFORE \textquotedblleft TEXT \textquotedblright AFTER comes out as BEFORE "TEXT"AFTER. Is there any way to fix it? One obvious way is using BEFORE \textquotedblleft TEXT \textquotedblright \ AFTER. I was wondering if there is any better way to fix this. Thanks

share|improve this question
3  
\textquotedblright like any other TeX command gobbles following spaces unless you place {} or \ after it. I'd rather use csquotes for quotes, anyway. –  cgnieder Dec 13 '12 at 17:58

3 Answers 3

up vote 4 down vote accepted

\textquotedblleft and \textquotedblright (as well as most other commands without arguments, which do not use the xspace package) gobble their following space (as if the name was \textquotedblleft␣). To get a space character there, you need to use \textquotedblleft{} and \textquotedblright{}. You could also use explicit space (e.g. \␣ (slash space) or \hspace{1em}), but you want the space to be stretchable, dont't you? Alternatively, as suggested by cgnieder, the csquotes package can be used for quotes.

share|improve this answer
2  
The usual shortcuts as well as the babel shortcuts would also be a good alternative. –  cgnieder Dec 13 '12 at 18:11
  1. Use the xspace package:

    \usepackage{xspace}
    

    and define a new command as (for example)

    \newcommand{\tqdr}{\textquotedblright\xspace}
    
  2. (easier): Use shorthands as `` and ''

share|improve this answer

If you:

  • aren't comfortable with the shorthands (suggested by Luis Parrado)
  • don't want to have to remember to use {} or \␣ (as noted by Stephen and cgnieder)
  • don't want to bother with the huge csquotes package
  • recognise that xspace can cause more problems than it solves,...

then why not just define your own macro that takes an argument:

\documentclass{article}
\newcommand*{\textquotedouble}[1]{\textquotedblleft #1\textquotedblright}
\begin{document}
    BEFORE \textquotedouble{TEXT} AFTER.
\end{document}

(And perhaps use a shorter name than this!)

Note: I personally prefer the shorthands myself!

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.