La nueva sección anterior se bloquea al agregar marcadores: acción faltante

La nueva sección anterior se bloquea al agregar marcadores: acción faltante

Tengo problemas para crear una \booksección arriba \part. Todo va bien (el ToC es hermoso) hasta que agrego el bookmarkpaquete y luego falla con una "Acción faltante" en el primer uso de \book.

Gracias hasta ahora@GonzaloMedinapor su respuesta aesta preguntapara obtener ayuda para agregar [ \subsubsubsection][1] y@locksteppor su comentario sobreesta preguntaEso me llevó al chngcntrpaquete.

Desde que estoy haciendo \booklo anterior \part, leí en la titlesecdocumentación que se supone que debo hacer la loadonlyopción de paquete titlesecy redefinir todos los niveles desde cero. ¡Pero me gustan mucho el resto de las secciones tal como están!

Acabo de encontraresta preguntacon el formato y espaciado predeterminados de las secciones para clases estándar (gracias a@miotto!) pero no estoy seguro de si todavía necesito los \@startsectionbits \subsubsubsectionpara cambiar \paragraphy \subparagraphlos niveles de ToC. ¿Los \toclevel@bits lo hacen por sí solos?

¿Alguien puede ayudarme a solucionar este MWE o ayudarme a descifrar el \@startsectionproblema que acabo de mencionar?

MWE:

\documentclass{book}

% this part breaks the whole thing at the first occurence of \book
\PassOptionsToPackage{bookmarks=true,bookmarksopen=true,bookmarksnumbered=true,
            bookmarksopenlevel=6,
            colorlinks=true,
            linkcolor=blue,
            anchorcolor=blue
            }{hyperref}
\usepackage{bookmark}

\usepackage{titlesec,titletoc}
\usepackage{xparse}

\usepackage{chngcntr} % to change within of counters

% new book sectioning level
\titleclass{\book}[-2]{page}
\newcounter{book}
\renewcommand{\thebook}{\Roman{book}}
\titleformat{\book}{\centering\normalfont\huge\bfseries{}Volume \thebook\\\Huge}{}{0pt}{}
\titlespacing*{\book}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}

% attach part counter to book
\titleclass{\part}{page}[\book]
\counterwithin*{part}{book}
\titleformat{\part}{\centering\normalfont\huge\bfseries{}Part \thepart\\\Huge}{}{0pt}{}

% fix chapter -- somehow above broke it?
\counterwithout{chapter}{part}
\counterwithin*{chapter}{part}

% to create a subsubsub section and have it work in between subsubsection
% and paragraph as a TOC placeholder:
\titleclass{\subsubsubsection}{straight}[\subsubsection]
\newcounter{subsubsubsection}[subsubsection]
\renewcommand\thesubsubsubsection{\thesubsubsection.\arabic{subsubsubsection}}
\titleformat{\subsubsubsection}{\normalfont\normalsize\bfseries}{\thesubsubsubsection}{1em}{}
\titlespacing*{\subsubsubsection}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}

% attach paragraph counter to subsubsubsection
\renewcommand\theparagraph{\thesubsubsubsection.\arabic{paragraph}} % optional; useful if paragraphs are to be numbered
\counterwithout{paragraph}{subsubsection}
\counterwithin{paragraph}{subsubsubsection}

\makeatletter
\renewcommand\paragraph{\@startsection{paragraph}{5}{\z@}%
  {3.25ex \@plus1ex \@minus.2ex}%
  {-1em}%
  {\normalfont\normalsize\bfseries}}
\renewcommand\subparagraph{\@startsection{subparagraph}{6}{\parindent}%
  {3.25ex \@plus1ex \@minus .2ex}%
  {-1em}%
  {\normalfont\normalsize\bfseries}}
% set toc levels
\def\toclevel@book{-2}
\def\toclevel@subsubsubsection{4}
\def\toclevel@paragraph{5}
\def\toclevel@subparagraph{6}
% set toc line styles
\def\l@book{\@dottedtocline{-2}{0em}{1.5em}}
\def\l@part{\@dottedtocline{-1}{3em}{1.5em}}
\def\l@chapter{\@dottedtocline{0}{6em}{1.5em}}
\def\l@section{\@dottedtocline{1}{9em}{2em}}
\def\l@subsection{\@dottedtocline{2}{12em}{3em}}
\def\l@subsubsection{\@dottedtocline{3}{15em}{3.5em}}
\def\l@subsubsubsection{\@dottedtocline{4}{18em}{4.5em}}
\def\l@paragraph{\@dottedtocline{5}{21em}{5.5em}}
\def\l@subparagraph{\@dottedtocline{6}{24em}{6.5em}}
\makeatother

\setcounter{secnumdepth}{5}
\setcounter{tocdepth}{5}

\begin{document}

\frontmatter
\tableofcontents
\mainmatter

\book{Explore}

\part{Intro}

\chapter{Welcome}
blah
\section{Stuff}
blah
\subsection{Dude}
blah
\subsubsection{Dudette}
blah
\subsubsubsection{Sweet}
blah
\paragraph{Hello}
blah
\subsubsubsection{Nice}
blah
\paragraph{Bye}
blah

\section{Things}
blah
\chapter{Goodbye}
blah
\section{Indeed}
blah

\book{Wander}

\part{Intro Again}

\chapter{Welcome Again}
blah
\section{Hmm}
blah

\end{document}

Además, probé la memoirclase, pero estropea demasiadas configuraciones de espaciado como para que valga la pena. Me gusta el resto de mi documento tal como está y solo quiero continuar escribiendo en un nuevo volumen mientras sigo usando la bookclase.

¡Gracias por tu tiempo!

[1]: Tuve que volver chngcntra vincular el archivo \paragraphal nuevo \subsubsubsection, ¡pero todo lo demás estuvo genial! ¡Cosas realmente útiles!

Respuesta1

(Casi) todos los comandos de Seccionamiento tienen un comando adjunto para establecer las marcas para el encabezado. Hay, por ejemplo \chaptermark, \sectionmark, \subsectionmark. Cuando titlesecconfigura un nuevo comando de sección, también define un \...mark comando. Y entonces \bookcrea un comando \bookmarkque choca con el \bookmarkcomando del paquete de marcadores.

Usar otro nombre, por ejemplo, \volumeresuelve el problema.

bookmarkloads hyperrefy so normalmente deberían cargarse después de todos los demás paquetes (con algunas excepciones) pero antes de definir el nuevo contador.

información relacionada