![Remova a primeira palavra do título da seção no ToC](https://rvso.com/image/391698/Remova%20a%20primeira%20palavra%20do%20t%C3%ADtulo%20da%20se%C3%A7%C3%A3o%20no%20ToC.png)
\documentclass{book}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\begin{document}
\tableofcontents
\chapter{MyChapter}
\section{Term: Foo}
\section{foobar}
\section{Term: Bar}
\end{document}
Alguns dos títulos das minhas seções começam com uma palavra especial. No meu exemplo é o texto "Termo:". Claro que isso faz parte de todo o título. Mas quero que eles não apareçam no ToC:
ToC atual:
1 MyChapter 3
1.1 Term: Foo ..........3
1.2 foobar .............3
1.3 Term: Bar ..........3
ToC esperado:
1 MyChapter 3
1.1 Foo ................3
1.2 foobar .............3
1.3 Bar ................3
É claro que uma solução que funcione ao contrário também seria ótima: se houver uma solução que adicione o prefixo "Termo:" aos títulos das minhas seções posteriormente, isso também poderá funcionar. Mas neste caso é necessário garantir que apenas algumas secções intituladas terão de ser expandidas.
Responder1
você pode simplesmente fazer:
\section*{Term: Foo} % suppresses output in TOC
\addcontentsline{toc}{section}{Foo} % add custom line to TOC
Editar: o código acima também suprime a numeração, o que você provavelmente não deseja. Então aqui está outra sugestão para fazer tudo com um comando:
\documentclass{book}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\newcommand{\customsec}[1]{\section[#1]{Term: #1}}
\begin{document}
\tableofcontents
\chapter{MyChapter}
\customsec{Foo}
\section{foobar}
\customsec{Bar}
\end{document}
Responder2
Você pode usar títulos curtos como argumento opcional no \section
comando. Isso preserva a numeração. MWE:
\documentclass{book}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\begin{document}
\tableofcontents
\chapter{MyChapter}
\section[Foo]{Term: Foo}
\section{foobar}
\section[Bar]{Term: Bar}
\end{document}
Resultado: