Estilo TOC en clase de memorias

Estilo TOC en clase de memorias

Estoy intentando llegar al siguiente diseño para un TOC (pero usando la clase de memorias):

ingrese la descripción de la imagen aquí

Básicamente, solo se presenta el número de capítulo, el nombre y la página y el número de subsección, el nombre y la página. La estructura estándar de las memorias añade puntos entre el nombre y la página, que debo eliminar.

Pude llegar a una solución parcial, donde logré eliminar los puntos en las subsecciones, pero no en los capítulos ni en las subsecciones (MWE):

\documentclass{memoir}
\usepackage{lipsum}

\renewcommand*{\cftsectionleader}{}

\tableofcontents*

\begin{document}
\chapter{Introduction}
\section{lipsum}
\lipsum[1-10]
\end{document}

Sin embargo, este enfoque genera líneas mal formadas en el toc:

ingrese la descripción de la imagen aquí

  • ¿Cómo puedo lograrlo usando sólo las utilidades de memorias?

Respuesta1

Veo que quieres reproducir esto:https://logic.rwth-aachen.de/~ummels/diss.pdf

Una opción es redefinir l@chaptery así sucesivamente:

\documentclass{memoir}
\usepackage{fontspec}
\setmainfont{Minion Pro}

\renewcommand\chapternumberline[1]{\numberline{#1}} %not necessary when using the book class

\makeatletter

\renewcommand*\l@chapter[2]{%
  \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    \vskip 1ex \@plus\p@
    \setlength\@tempdima{1.5em}%
    \begingroup
      \parindent \z@ 
      \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode \large  % added for large font for chapters
      %\advance\leftskip\@tempdima
      \hskip -\leftskip %\@chapapp~ \par % added \@chapapp~ \par 
      #1\nobreak \raggedright % originally \hfil
%added for leaders (dots) in chapter in toc
%\xleaders\hbox{$\m@th
%       \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
%        mu$}\hfill%
%%
\nobreak\hb@xt@\@pnumwidth{\hss ~\textbullet~#2}\par\vspace{.5ex} % ADDED VSPACE
      \penalty\@highpenalty
    \endgroup
  \fi}  

\renewcommand*\l@section[2]{%
    \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    %\vskip .5ex \@plus\p@
    \setlength\@tempdima{1.5em}%
    \begingroup
    \parindent 3em 
    \rightskip \@pnumwidth
    \parfillskip -\@pnumwidth
    \leavevmode \normalsize %
    \advance\leftskip\@tempdima
    \hskip -\leftskip %
    #1\nobreak \raggedright % originally \hfil
    %added for leaders (dots) in chapter in toc
    %\xleaders\hbox{$\m@th
    %      \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
    %       mu$}\hfill%
    %%%
    \nobreak\hb@xt@\@pnumwidth{\hss \textbullet~#2}\par%\vspace{.5ex} % ADDED VSPACE
    \penalty\@highpenalty
    \endgroup
    \fi} 



\renewcommand*\l@subsection[2]{%
    \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    %\vskip .5ex \@plus\p@
    \setlength\@tempdima{2.3em}%
    \begingroup
    \parindent 5.3em 
    \rightskip \@pnumwidth
    \parfillskip -\@pnumwidth
    \leavevmode \normalsize %
    \advance\leftskip\@tempdima
    \hskip -\leftskip %
    #1\nobreak \raggedright % originally \hfil
    %added for leaders (dots) in chapter in toc
    %\xleaders\hbox{$\m@th
    %      \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
    %       mu$}\hfill%
    %%%
    \nobreak\hb@xt@\@pnumwidth{\hss \textbullet~#2}\par\vspace{1ex} % ADDED VSPACE
    \penalty\@highpenalty
    \endgroup
    \fi}


\makeatother





\begin{document}


\tableofcontents


\chapter{title}
\section{section name}
\subsection{section name}

\chapter{title}
\section{section name}
\subsection{section name}


\chapter{title}
\section{section name}
\subsection{section name}

\chapter{title}
\section{section name}
\subsection{section name}



\end{document}

ingrese la descripción de la imagen aquí

Puedes adaptar los largos a tu gusto.

Si desea que aparezcan subsecciones en el TOC, memoirdebe agregar

\setcounter{tocdepth}{2}
\setcounter{secnumdepth}{2}

Respuesta2

Aquí es lo mismo, usando memoirsolo (principalmente de la página 155 del memoirmanual)

\documentclass{memoir}
\usepackage{lipsum}

\renewcommand*{\cftchapterleader}{}
\renewcommand*{\cftsectionleader}{}
\renewcommand*{\cftsubsectionleader}{}
\renewcommand{\cftchapterpagefont}{}
\renewcommand*{\cftchapterformatpnum}[1]{~\textbullet~#1}
\renewcommand*{\cftsectionformatpnum}[1]{~\textbullet~#1}
\renewcommand*{\cftsubsectionformatpnum}[1]{~\textbullet~#1}
\renewcommand{\cftchapterafterpnum}{\cftparfillskip}
\renewcommand{\cftsectionafterpnum}{\cftparfillskip}
\renewcommand{\cftsubsectionafterpnum}{\cftparfillskip}
\setrmarg{3.55em plus 1fil}
\setsecnumdepth{subsection}
\maxsecnumdepth{subsection}
\settocdepth{subsection}


\begin{document}

\tableofcontents*

\chapter{Introduction}
\section{lipsum}
\subsection{lipsum 2}

\end{document}

Además, aquí hay un código adicional para jugar con las sangrías.

\setlength\cftsectionindent{0pt}
\setlength\cftsubsectionindent{0pt}
\setlength\cftchapternumwidth{3em}
\setlength\cftsectionnumwidth{3em}
\setlength\cftsubsectionnumwidth{3em}

También hice las cajas de números del mismo tamaño.

información relacionada