Too long, not going to read: I got the LaTeX warning
Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is useless
in a LaTeX project and I solved it.
I have two similar LaTeX projects, both using more or less the same code as each other; both use the book
document class and the fancyhdr package. Both projects built perfectly well and produced the output I expected – until I put page numbers in the footer:
\fancypagestyle{normalpages}{%
\fancyhf{}% remove everything
% Headers
\fancyhead[L]{%
<left header>%
}
\fancyhead[C]{%
<central header>%
}
\fancyhead[R]{%
<right header>%
}
% Footers
\fancyfoot[C]{%
\centering
<central footer>%
}
\fancyfoot[LE,RO]{
\thepage
}
One of the projects, A, built as expected and put the page numbers in the footer on the left of odd-numbered (verso) pages and the right of even-numbered (recto) pages. Project B, however, put the page numbers on the right of both verso and recto pages and produced the following warning:
Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is useless on input line x.
Well, isn’t that terrific? I looked on the internet for help, but the only answers I could find implied that my copy of the fancyhdr package provided by TeX Live was out of date or that it doesn’t matter if all works well. The former could not be true if it worked for one project. It did not work well, so I ignored the latter solution. There was one other possibility: ‘unless you activate the twoside
class option, E
(for Even) won’t have any effect’.
Ah. I looked at the document class’s options: project A specified twoside
whereas project B did not. I amended project B and rebuilt the document to find no difference in the output or the warnings. Hmm.
I searched the log file for twoside
, and found a line in project B’s log file:
* \@twosidefalse
This code was in a block of code to do with the geometry package. In project A, the same line had:
* \@twosidetrue
The whole block in the log file for project A, which is the one that worked, was:
*geometry* driver: auto-detecting *geometry* detected driver: pdftex *geometry* verbose mode - [ preamble ] result: * driver: pdftex * paper: a4paper * layout: <same size as paper> * layoutoffset:(h,v)=(0.0pt,0.0pt) * modes: twoside * h-part:(L,W,R)=(71.13188pt, 455.24411pt, 71.13188pt) * v-part:(T,H,B)=(86.55685pt, 687.35811pt, 71.13188pt) * \paperwidth=597.50787pt * \paperheight=845.04684pt * \textwidth=455.24411pt * \textheight=687.35811pt * \oddsidemargin=-1.1381pt * \evensidemargin=-1.1381pt * \topmargin=-70.71313pt * \headheight=85.0pt * \headsep=0.0pt * \topskip=12.0pt * \footskip=35.0pt * \marginparwidth=0.0pt * \marginparsep=0.0pt * \columnsep=10.0pt * \skip\footins=10.8pt plus 4.0pt minus 2.0pt * \hoffset=0.0pt * \voffset=0.0pt * \mag=1000 * \@twocolumnfalse * \@twosidetrue * \@mparswitchtrue * \@reversemarginfalse * (1in=72.27pt=25.4mm, 1cm=28.453pt)
Notice the line near the top that reads * modes: twoside in amongst the settings of the geometry package. I looked at the options of that package in both projects: project A specified twoside=true
, whereas project B specified twoside=false
. Changing the latter to twoside=true
— and, indeed, removing the whole option from both — resulted in both projects producing page numbers on the correct sides of verso and recto pages. Hurray!
\geometry{%
paper=a4paper,
% twoside=true, % don't put twoside=false here
left=2.5cm,
right=2.5cm,
top=86.55685pt,
bottom=2.5cm,
headsep=0cm,
headheight=85pt,%84.29048pt,
footskip=35pt,%14.49998pt,
heightrounded=false,
includehead=false,
includefoot=false,
includeheadfoot=false,
includemp=false,
nomarginpar,
}
In summary
The problem arose from having the geometry package set to single-sided pages (i.e. it set all pages to recto, with no verso pages) only, and the fancyhdr package being given a specification for verso pages, which, as far as the fancyhdr package was concerned, did not exist.
The solution is to ensure that all page specifications are consistent: if twoside
is specified in one place, it must be specified everywhere. I have found, for the book
document class, that it is simplest to omit all mentions of twoside
, which produces a document that is indeed double-sided.
Thank you so much!!
You’re welcome, Tiago! I’m glad you found this helpful. Thank you for letting me know 🙂
I honestly never leave a reply but you really solved a problem I was having for a long time!!!! Thank you really much Caity!!!!!!!
I’m so happy you finally found a solution, Jesús! Thank you for letting me know 🙂