hide an entry from Toc in latex

82,666

Solution 1

I think you are looking for

\section*{hide}
\addtocounter{section}{1}

or make it into a command:

\newcommand{\toclesssection}[1]{\section*{#1}\addtocounter{section}{1}}

EDIT:

Okay, I think I understand what is wanted now (and it makes more sense then the answer I gave). Here is a command that you can use to suppress adding a section, subsection, etc. to the TOC. The idea is to temporarily disable \addcontentsline.

\newcommand{\nocontentsline}[3]{}
\newcommand{\tocless}[2]{\bgroup\let\addcontentsline=\nocontentsline#1{#2}\egroup}
...
\tocless\section{hide}
\tocless\subsection{subhide}

Solution 2

Just wanted to say thanks for Ivans great hint! (I was just googling for something similar for my customized (Sub)Appendix{} commands:

\newcommand{\nocontentsline}[3]{}
\newcommand{\tocless}[2]{\bgroup\let\addcontentsline=\nocontentsline#1{#2}\egroup}

\newcommand{\Appendix}[1]{
  \refstepcounter{section}
  \section*{Appendix \thesection:\hspace*{1.5ex} #1}
  \addcontentsline{toc}{section}{Appendix \thesection}
}
\newcommand{\SubAppendix}[1]{\tocless\subsection{#1}}

Maybe this is useful for someone else, too...)

Solution 3

have just come here from a similar question. The answer above didn't quite work as it gave some formatting issues, but a similar solution seemed to do the trick

Share:
82,666

Related videos on Youtube

mjsr
Author by

mjsr

Computer Science Engineer that loves programming!!

Updated on December 19, 2020

Comments

  • mjsr
    mjsr over 3 years

    I would like to know how I can hide a section from the table of contents but without loosing the section number in the body of the document. For example, in this tex file I loose the number for hide, and all the sequences are damaged:

    \documentclass{article}
    
    \begin{document}
    \tableofcontents
    \section{uno}
    \section{dos}
    \section*{hide}
    \section{tres}
    \end{document}
    
    • mjsr
      mjsr about 14 years
      it will be nice also ommit the page number in the right..i just need SectionName.................SectionNumber SectionName2................SectionNumber2 ...etc.
  • Geoff
    Geoff about 14 years
    OP said "without losing the section number in the body"
  • mjsr
    mjsr about 14 years
    the problem remains and appear other incongruency. in Toc the section tres has the number 3, in the body has the number 4.
  • Ivan Andrus
    Ivan Andrus about 14 years
    Sorry, I misunderstood what was wanted.
  • mjsr
    mjsr about 14 years
    mmm I don't understand the logic in the set of command, can you give me a hint in English?...im trying to use the tocless command but doesn't work.
  • Ivan Andrus
    Ivan Andrus about 14 years
    Dang it! I forgot to add the \nocontentsline command. I don't know what my problem is. Anyway, the idea is to set \addcontentsline to a no-op when evaluating the \section command.
  • Nathan VanHoudnos
    Nathan VanHoudnos about 10 years
    A small improvement: to reference the hidden sections elsewhere in the document you need to add the \label inside of the group. For example, \newcommand{\toclesslab}[3]{\bgroup\let\addcontentsline=\noc‌​ontentsline#1{#2\lab‌​el{#3}}\egroup} will fix it. Usage: \toclesslab\section{Motivation}{s:motivation} will keep the section from appearing the TOC, but you can still reference it with \ref{s:motivation} or similar.
  • deceleratedcaviar
    deceleratedcaviar over 7 years
    See stackoverflow.com/a/3805470/431528 for an answer which doesn't cause formatting issues.
  • Sickboy
    Sickboy almost 7 years
    thanks! works like a charm for subsubsections as well :-)
  • Richard DiSalvo
    Richard DiSalvo about 5 years
    my opinion is the EDIT should be first in this answer - in short, define \tocless then use it in front of whatever