答案1
一种可能性是重新定义\addsectiontocentry
从目录条目中删除章节编号并添加前缀sec:~
。
\documentclass{scrartcl}
\let\originaladdsectiontocentry\addsectiontocentry
\renewcommand\addsectiontocentry[2]{%
\ifstr{#1}{}
{\originaladdsectiontocentry{#1}{#2}}
{\originaladdsectiontocentry{}{sec:~#2}}%
}
\begin{document}
\section{aaa}
\section{bbb}
\tableofcontents{}
\end{document}
如果未编号的部分也应该获得前缀:
\documentclass{scrartcl}
\let\originaladdsectiontocentry\addsectiontocentry
\renewcommand\addsectiontocentry[2]{%
\originaladdsectiontocentry{}{sec:~#2}%
}
\begin{document}
\section{aaa}
\section{bbb}
\addsec{ccc}
\tableofcontents{}
\end{document}
答案2
最简单的方法是将短标题定义为 sec:aaa:
\documentclass{scrartcl}
\begin{document}
\section[sec: aaa]{aaa}
\section[sec: bbb]{bbb}
\tableofcontents{}
\end{document}