7

I'm using the following code:

\documentclass[11pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[dutch]{babel}

\newcommand{\add}{$\oplus$\space}
\newcommand{\ent}{\textit}

\begin{document}

\begin{enumerate}
    \item Content: \add \ent{"Node add form" base form}
\end{enumerate}

\end{document}

Unfortunately, there's no spacing after the closing quotation mark in the enumeration. How can I solve this?

1
  • 4
    You're not using the correct form for quotation marks. It should be `` to open and ' ' to close. – Alan Munn Nov 29 '13 at 22:45
14
+50

Never use " for quotes. In particular, languages where babel uses " as a shorthand will make straight double quotes fail in various ways. The correct form is

Content: \add \ent{``Node add form'' base form}

or, with Unicode characters

Content: \add \ent{“Node add form” base form}

Why " mustn't be used for quotes? It's true that what's printed is, sometimes, the glyph ”, but this character usually has no setting of the \sfcode, which means wrong spacing at sentence ending periods that are typed (as normal in American typography) before the closing quotes.

But the biggest problem is with babel and the many languages for which " is used as a shorthand. The mechanism uses \@ifnextchar and so spaces are ignored after the character, which is exactly what happens in the example.

None of these problems happens when '' or are used (the latter of course requires a suitable call of inputenc). Good editors can be set up so that typing " triggers a proper action. For instance, with Emacs and AUCTeX, typing " will produce `` if after a space (or at the beginning of a line), '' otherwise; typing another " produces a single ".

5
  • Only +1, but ``Never use " for quotes'' deserves much more! – Przemysław Scherwentke Nov 29 '13 at 22:56
  • @PrzemysławScherwentke What more? Never is used in its precise meaning: “don't use " for typesetting quotes, in any case whatsoever”. ;-) – egreg Nov 29 '13 at 23:10
  • @egreg I mean: much more than only one upvote. It is so horrible mistake, that reminding about it should be additionally honoured. – Przemysław Scherwentke Nov 29 '13 at 23:14
  • Maybe you could explain why we shall not use ". (babel transforms " to an active character, etc., i.e. a command that eats spaces). Just a suggestion =8-) – Sveinung Nov 30 '13 at 6:57
  • @egreg Maybe package csquotes could be worth mentioning. – Johannes_B Nov 30 '13 at 12:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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