Различные метки для заголовков подразделов и ссылок

Различные метки для заголовков подразделов и ссылок

Я пишу свою диссертацию и использую вариант класса report. У меня есть главы, разделы, подразделы и подподразделы местами. При чтении текста длинная строка цифр, букв и римских цифр в названии подразделов и подподразделов выглядит неприятно. Я бы предпочел, чтобы эти заголовки просто имели соответствующее название подраздела или подподраздела, и сделал бы это с помощью:

\renewcommand\thesubsection{\Roman{subsection}}

(В зависимости от того, как все в итоге будет выглядеть, я могу включить счетчик разделов, но я определенно уберу счетчик глав.) Однако, когда я делаю ссылку на подраздел или подподраздел, я бы предпочел, чтобы использовалась вся строка цифр, иначе ссылка будет плохо определена. Может ли кто-нибудь прокомментировать, как это сделать?

Вот минимальный пример.

\documentclass{report}

\begin{document}

\renewcommand\thesection{\arabic{chapter}.\arabic{section}}
\renewcommand\thesubsection{\Roman{subsection}}

\chapter{Chapter}

\section{Section}

\subsection{Subsection}\label{subsection}

\noindent I have the subsections labelled in Roman in the title, because 1.1.I would just be long.
\\

\noindent Here is a reference to the subsection: (\ref{subsection})
\\

\noindent I would like references to the subsection to be (1.1.I), however.

\end{document}

решение1

Переопределить \p@subsection(префикс, используемый для ссылок на подразделы):

\documentclass{report}

\renewcommand\thesection{\arabic{chapter}.\arabic{section}}
\renewcommand\thesubsection{\Roman{subsection}}
\makeatletter
\renewcommand\p@subsection{\thesection.}
\makeatother

\begin{document}

\chapter{Chapter}

\section{Section}

\subsection{Subsection}\label{subsection}

\noindent I have the subsections labelled in Roman in the title, because 1.1.I would just be long.

\noindent Here is a reference to the subsection: (\ref{subsection})

\end{document}

введите описание изображения здесь

Кстати, никогда не используйте комбинацию \\ + blank line; это приведет к появлению предупреждений о неполном заполнении ящиков.

решение2

Ссылки могут автоматически начинаться с префикса \p@<counter>, см. пример:

\documentclass{report}
\usepackage{parskip}

\renewcommand\thesection{\arabic{chapter}.\arabic{section}}
\renewcommand\thesubsection{\Roman{subsection}}

\makeatletter
\renewcommand*{\p@subsection}{\thesection.}
\makeatother

\begin{document}
\chapter{Chapter}

Here is a reference to the subsection: \ref{subsection}

\section{Section}

\subsection{Subsection}\label{subsection}

\end{document}

Результат:

Результат

Связанный контент