Reemplace el número de pieza por un acrónimo

Reemplace el número de pieza por un acrónimo

Me gustaría reemplazar un número de pieza por una abreviatura. Por ejemplo, con respecto a la parte álgebra del siguiente MWE, me gustaría que se llamara el primer capítulo ALG.1en lugar de I.1(y lo mismo para todos los capítulos de la parte considerada).

Idealmente, la abreviatura ALGpodría ser un argumento opcional del \partcomando.

MWE:

\documentclass[oneside]{scrbook}

%reset chapter for each part
\makeatletter
\@addtoreset{chapter}{part}
\makeatother
\renewcommand{\thechapter}{\thepart\arabic{chapter}}


\begin{document}

\part{Algebra} %\part[ALG]{Algebra} ?
\chapter{Chap 1}

\part{Analysis}
\chapter{Chap 1}

\part{Geometry}
\chapter{Chap 1}


\end{document}

Respuesta1

Aquí hay una solución simple, con un \acropartcomando que se usará justo después del \partcomando:

\documentclass[oneside]{scrbook}

\counterwithin*{chapter}{part}
\makeatletter
\DeclareRobustCommand\acropart[1]{\gdef\@acropart{#1}}
\renewcommand{\thechapter}{\@acropart.~\arabic{chapter}}
\makeatother

\makeatother

\begin{document}

\part{Algebra} %\part[ALG]{Algebra} ?
\acropart{ALG}
\chapter{Chapter the first}
\chapter{Chapter the second}

\part{Analysis}
\acropart{ANAL}
\chapter{Chapter the first}

\part{Geometry}
\acropart{GEOM}
\chapter{Chapter the first}

\end{document} 

ingrese la descripción de la imagen aquí

Respuesta2

El MWE en la pregunta ya contiene una redefinición de \thechapter. Esto se puede personalizar aún más reemplazando el contador de piezas \thepartcon una nueva macro que contenga la abreviatura requerida.

Para configurar esto usando un argumento opcional para \partla definición anterior de \partse puede almacenar en otra macro como \oldpart, y luego \partse puede redefinir para aceptar un argumento opcional, almacenarlo en una macro y luego llamar a la \oldpartmacro que procesará el argumento predeterminado. Similar aArgumentos opcionales en \def. El valor predeterminado del argumento opcional es \thepart, para permitir que las piezas sin etiqueta se numeren con el número de pieza romano.

Cuando se imprime una tabla de contenido, las etiquetas de los capítulos no se ajustan al ancho predeterminado; esto se puede solucionar usando \RedeclareSectionCommand.

MWE:

\documentclass[oneside]{scrbook}
\RedeclareSectionCommand[
  tocnumwidth=1.5cm
]{chapter}

\let\oldpart\part
\renewcommand\part[1][\thepart]{\def\partacr{#1}\oldpart}
%reset chapter for each part
\makeatletter
\@addtoreset{chapter}{part}
\makeatother
\renewcommand{\thechapter}{\partacr.\arabic{chapter}}


\begin{document}

\tableofcontents

\part[ALG]{Algebra}
\chapter{Chap 1}
\chapter{Chap 2}

\part{Geometry}
\chapter{Chap 1}
\chapter{Chap 2}

\end{document}

Resultado:

ingrese la descripción de la imagen aquí

Respuesta3

¿Como esto?

\documentclass[oneside]{scrbook}

%reset chapter for each part
\makeatletter
\@addtoreset{chapter}{part}
\makeatother

\newcommand{\prt}[2]{\part{#2}
\renewcommand{\thechapter}{#1\arabic{chapter}}}

\usepackage{tocloft}
\renewcommand\cftchapnumwidth{1.2cm} %<-- For tableofcontents 

\begin{document}
\tableofcontents
\prt{ALG}{Algebra} %\part[ALG]{Algebra} ?
\chapter{Chap 1}

\prt{ANA}{Analysis}
\chapter{Chap 1}

\prt{GEO}{Geometry}
\chapter{Chap 1}


\end{document}

ingrese la descripción de la imagen aquí

información relacionada