# Why does the \marginpar not appear on the left page?

I am working on a book right now and the margin notes are not appearing on the left-side pages. I tried using mparhack but it made no difference. Is my geometry, fancy style or another package messing up the normal layout? I am using pdflatex to render. Here is a minimal test case:

\documentclass[twoside,10pt]{book}
\usepackage[margin=9mm,paperwidth=107.95mm,paperheight=174.63mm,bottom=18mm]{geometry}
%\usepackage[cam,a4,center,pdftex]{crop}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\fancyfoot[C]{\thepage}
\fontsize{10.5}{13}\selectfont
\usepackage[sc,medium]{titlesec}
\usepackage{tocloft}
\protect\cftdotfill{\protect\cftdotsep}}}
\renewcommand{\cfttoctitlefont}{\hfill\scshape}
\renewcommand\cftaftertoctitle{\hfill\null\\\null\hfill\scshape{Page}}
\renewcommand{\cftchapfont}{\normalsize\scshape}
\renewcommand{\cftchappagefont}{\normalsize\scshape}
\setlength{\emergencystretch}{3em}
\title{Heroic Real Estate Otter of the 21st Century}
\date{}
\begin{document}
\frenchspacing
\pagestyle{fancy}
\hspace{0pt}\marginpar[$\omega$]{$\omega$}\lipsum[4-6]

NEXT\hspace{0pt}\marginpar[$\psi$]{$\psi$}\lipsum[10]

\end{document}

• The marginpar is outside the page. Try adding \hfill in front of $\psi$ and you'll see it. – egreg Feb 8 '13 at 17:07
• nice! So is that the proper work-around or is there a better way to set left-side marginpars to flush right? – Brendan Howell Feb 8 '13 at 17:23

You have adjusted your page margins, but haven't adjusted the marginpar dimensions to match. I suggest adding parameters to your call of the geometry package:

\usepackage[
margin=9mm,
marginparwidth=7mm,     % + <- Width of your marginpar
marginparsep=1mm,       % + <- Gap between text block and marginpar
paperwidth=107.95mm,
paperheight=174.63mm,
bottom=18mm,
]{geometry}


This will also allow you, if you need, to see the content without re-specifying alignments.

Use this:

\DeclareRobustCommand{\mymarginpar}[1]{%
\marginpar[\raggedleft#1]{\raggedright#1}}


and use \mymarginpar{$\psi$}

The problem is that the psi is off the page in your case.

• I had to use this answer as well to get it to align the way I wanted. – Brendan Howell Feb 10 '13 at 19:33
• This duplicates the text of the marginpar. Is there a way to do it without duplicating the text? In other words: How do I completely change what command is run based upon whether I'm on a left- or right-hand page? – Geremia Apr 15 '14 at 16:52
• This worked better in my case: \newcommand{\mymarginpar}[1]{\ifodd\thepage\marginpar{#1}\else\marginpar{\hfill #1}\fi} – Geremia Apr 15 '14 at 17:09
• Actually, this is even better because it detects the odd/even page number correctly: \newcommand{\mymarginpar}[1]{\label{marginpar:#1}\ifodd\getpagerefnumber{marginpar:#1}\marginpar{#1}\else\marginpar{\hfill #1}\fi} – Geremia Apr 15 '14 at 18:35

I had the same problem. In my case, I think that the origin of the problem is that I modified manually the size of the layout of the page in order to have a wide space (4 cm) for my marginars:

\voffset = -1cm
\textheight = 24.5cm
\footskip = 0.8cm
\marginparwidth = 4cm
\textwidth = 16cm
\oddsidemargin = -1.5cm
\evensidemargin = -1.5cm


Curiously, by using these settins I got no problem with one document, but experienced the problem with another one.

A workaround which worked for me is to explicitely declare the document with the option oneside, for instance:

\documentclass[12pt, oneside, a4paper, final]{book}


However, I think the best solution is definitely to set the layout of the page by using the geometry package.

• Well, while this might be a solution I don't recommend changing the layout parameters directly. Use the geometry package instead – user31729 Jun 24 '16 at 16:21