59

I need the characters «» in my LaTeX document. I'm writing in English though, and I don't want to use Babel. I have the following hack but I'd like a better way:

\newcommand{\q}[1]{{%
\font\larm = larm1000%
\larm%
\char 190}{#1}{%
\font\larm = larm1000%
\larm%
\char 191}}
lockstep
  • 250,273

6 Answers6

65

There are several ways to do this:

  • With standard methods, you will find \guillemotleft and \guillemotright. For this you need \usepackage[T1]{fontenc} (which is recommended anyways).
  • Using the language switching capabilities of babel, e.g. \foreignlanguage.
  • Using csquotes and its \foreignquote command.

Personally, I would recommend the third option.

The similar looking mathmode symbols ≪ and ≫ (much less/greater than) are created with \ll and \gg.

Caramdir
  • 89,023
  • 26
  • 255
  • 291
  • 10
    I'd probably favour csquotes, as it means you keep the semantics of the mark-up and can reuse the source in other places more readily. – Joseph Wright Sep 02 '10 at 18:34
  • 14
    Unfortunately it is indeed spelled incorrectly. It should be guillemetleft and guillemetright (with an "e"). A guillemot with an "o" is a seabird :-) But I think we're stuck with it. – Peter Flynn Jan 19 '12 at 10:48
  • @PeterFlynn In my case it works only with ''o''. – Dog_69 Oct 16 '19 at 22:51
  • 2
    Of course. Read what I said. It was misspelled when created. – Peter Flynn Jan 04 '20 at 12:19
  • See my last answer, \MarkOuterQuote{"} is simpler with csquote package – Metal3d Apr 28 '20 at 07:01
  • And if you are using it regularly here in a function: \newcommand{\guillemet}[1]{\guillemotleft #1 \guillemotright} – David Beauchemin Nov 14 '20 at 22:37
  • Although the thread is for ways in which to prevent using babel, I also needed fontenc to make the guillemets look right with babel. Without it, they look flattened and with strokes that resemble Arial. – Mew Nov 10 '22 at 22:50
32

There's also a convenient way to do it with Latin Modern:

\documentclass{article}

\usepackage{lmodern}

\begin{document}

<<Quoted text>>.

\end{document}
Andrey Vihrov
  • 22,325
17

You could type it directly if you use an utf8 encoding :

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\begin{document}
«For example.»
\end{document}

But, the automatic spacing isn't correct — at least for French typography. As suggested in the comments, you can always input manually the correct spacing (~, for non-breaking space).

egreg
  • 1,121,712
PHL
  • 7,555
13

I find this way is very convenient:

package: \usepackage[frenchb]{babel}

in text: \og text \fg{}

jeanned
  • 131
4

The best I now use in french is:

\usepackage{csquotes}
\MakeOuterQuote{"}

I now can use " to as "guillemet" and it's correctly replaced by « and »

Metal3d
  • 163
2

I tried several of those options all leading to a small square instead of «». This did the trick for me.

\documentclass{article}  
\usepackage[francais]{babel} % guillemets \og text \fg{}
\usepackage{aeguill} % guillemets
 \begin{document}
 \og text \fg{}
 \end{document}
Cedric
  • 139
  • 1
    The OP requests this without use of Babel. Also, Babel has various unwanted side effects such as hyphenation, change of parindent in the first line, change of itemization bullets etc. – Nobody-Knows-I-am-a-Dog Mar 28 '21 at 21:14