在章节名称中添加一个点,不会产生交叉引用问题

在章节名称中添加一个点,不会产生交叉引用问题

我想在报告类文档中每个部分(包括章节)的编号后添加一个点。我不想求助于 Koma-script 解决方案。这里还有很多其他好主意: 如何在章节编号后添加点?但要么他们没有处理交叉引用也带有点的问题,要么他们只包括节及以下,而不包括章节。我对 Latex 的了解太有限,无法自己概括 Mico 的解决方案,但它应该很简单(说真的,这个问题应该是对这些帖子的评论,但我不允许评论 :) )。

或者,可以使用此处建议的修复方法:删除图表标题中数字后的点,同时保留章节/部分标题中的点用标签/参考代替图形...所以看,我已经很接近了,但仍然缺少一些东西!

答案1

\documentclass{report}

\usepackage{etoolbox}
\makeatletter
\patchcmd\@makechapterhead{\thechapter}{\thechapter.}{}{\fail}
\patchcmd\@seccntformat{\csname the#1\endcsname}{\csname the#1\endcsname.}{}{\fail}
\makeatother
\begin{document}
\chapter{chapter}\label{chap}
\section{section}\label{sec}
\ref{chap}, \ref{sec}
\end{document}

相关内容