3

I am writing a paper in Latex using the editor Overleaf. I am using the scrartcl class with 12pt font size and for the table of contents I use the packages

\usepackage{etoolbox, tocloft}
\usepackage[nottoc]{tocbibind}

Unfortunately, my table of contents goes over two pages, with only the very last item on the second page. How can I minimally shift the table of contents up so that everything fits on one page? Thanks!

3
  • 2
    Hi and welcome to TeX.SX. There are several ways to go about this: you could change the geometry of the TOC page using \newgeometry and \restoregeometry after. Or you could change the spacing of the TOC items. A Minimal Working Example (a code recreating your problem) would help us in giving you a more detailed answer
    – Elad Den
    Mar 15 '21 at 14:17
  • I am really bad at latex and I dont know what to send you from my 370 line preamble. For my table of contents I use \tableofcontents and the earlier mentioned packages... I guess. How do I use newgeometry? Mar 16 '21 at 7:11
  • Off topic: With scrartcl you do not need package tocbibind. You could use class options listof=totoc, bibliography=totoc and index=totoc.
    – esdd
    Mar 19 '21 at 19:36
3

It depends on what your toc looks like exactly, but in general I would suggest playing around with the spacing inside the toc rather than shifting the whole thing.

Since you are using scrartcl you don't need the tocloft package for adjustments to the TOC. For example, you could change the beforeskip value for section entries to fit the table on one page by using \DeclareTOCStyleEntry[beforeskip=<length>]{default}{section}, like so

\documentclass[12pt]{scrartcl}
\usepackage{blindtext}

\DeclareTOCStyleEntry[beforeskip=.5ex]{default}{section}
% In your paper, you can probably afford more space than .5ex if you only need to fit one more line

\begin{document}

    \tableofcontents

    \blinddocument
    \blinddocument
    \blinddocument
    \blinddocument
\end{document}

Default:

enter image description here



With \DeclareTOCStyleEntry:

enter image description here

9
  • I like the idea of the line spacing. \linespread did unfortunately not work. My documentclass: \documentclass[twoside, a4paper,12pt,headsepline]{scrartcl} Could you please tell me how to apply \setlength{\cftbeforechapterskip}{...} or whatever might work for me? Thanks! Mar 15 '21 at 15:22
  • 1
    @EliasGhalib I've edited my answer with a better solution for your situation.
    – schoekling
    Mar 15 '21 at 16:37
  • 2
    Also, the fact that you're using scracrtl is crucial information for anyone trying to help you solve your problem. For future questions, consider adding a fully compilable MWE including \documentclass and all packages/content that set up the problem, as I have done in my answer.
    – schoekling
    Mar 15 '21 at 16:39
  • I have no idea which of my 1000 packages belong to this problem... Mar 16 '21 at 7:13
  • @EliasGhalib From what I have understood, none of them. The only problem you had was the length of your TOC, determined only by the amount of (sub)sections in your paper... More importantly, did this answer provide a solution for your issue? If so, let others know by accepting the answer, if not, state any further issues remaining.
    – schoekling
    Mar 16 '21 at 9: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.