8

I use \titleformat (titlesec package) to make some fancy headings in my documents. But I did not find a way to know, in the \titleformat specifications, if the section is made with a \section or a \section*.

Is there a way to detect that and make some test on it ?

What I want (a minimal example):

\usepackage[explicit]{titlesec}
\titleformat{\section}[block]{first}{label}{0pt}{\ifsectionstar{#1}{\bf #1}}[trailer]
1
  • 1
    Have you looked at section 3.8 of the manual?
    – egreg
    Commented Mar 12, 2013 at 14:20

2 Answers 2

9

You can define the titleformat for starred versions with the numberless key, i.e, like

\titleformat{\section}[block]           {first}{label}{0pt}{\textbf{#1}}[trailer] % all versions
\titleformat{\section}[block,numberless]{first}{label}{0pt}{#1}[trailer] % starred version
1
  • This syntax is deprecated. The syntax proposed in feklee's answer works. Commented Jun 7, 2023 at 18:46
13

To format \section* use the numberless setting in the extended syntax for the first argument:

\documentclass{article}
\usepackage[explicit]{titlesec}

\titleformat{name=\section,numberless}[block]{\bf}{label}{1em}{#1}[trailer]

\begin{document}
\section*{Foo}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua.
\end{document}
1
  • \bf? Rather it should be \bfseries, I'd guess. Commented Jun 7, 2023 at 18:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .