KOMA-Script 中的自定义章节前缀文本

KOMA-Script 中的自定义章节前缀文本

使用\KOMAoption{chapterprefix}{true},我想替换章节前缀的默认文本,以便它显示在所有适当的位置:章节标题、页眉和首选目录。因此,我将看到“作业 1:某事”,而不是“第 1 章某事”。

我查看了 KOMA-Script 手册,特别是有关重新定义或声明分段命令的部分,但无法确定文本存储在哪里。我试过了,\renewcommand\chapterformat{Assignment\enskip\thechapter:}但它没有影响标题或目录。我假设有一个地方存储了字符串“chapter”?

\documentclass{scrbook}
\KOMAoption{chapterprefix}{true}
\begin{document}

\frontmatter
\tableofcontents

\mainmatter
\chapter{Something}
chapter text

\end{document}

谢谢你!

答案1

\chapapp定义Chapter。您可以使用以下方式更改它

\renewcommand{\chapapp}{Assignment}

完整的代码

\documentclass{scrbook}

\KOMAoption{chapterprefix}{true}
\renewcommand{\chapapp}{Assignment} % <=================================


\begin{document}

\frontmatter
\tableofcontents

\mainmatter
\chapter{Something}
chapter text

\end{document}

给出结果:

结果

答案2

正如解释的那样KOMA-Script 指南表 12.1术语“章节”存储在 中\chaptername。该表是命令描述的一部分\providecaptionname,可用于定义语言相关术语,例如,

\providecaptionname{english}{\chaptername}{Assignment}

如果附录的术语也需要更改,则还应更改\appendixname。否则, 后面会显示“附录” \appendix

\documentclass[chapterprefix=true]{scrbook}
\providecaptionname{english}{\chaptername}{Assignment}
\providecaptionname{english}{\appendixname}{Assignment}% also change the prefix of appendices
\begin{document}

\frontmatter
\tableofcontents

\mainmatter
\chapter{Something}
chapter text

\appendix
\chapter{Something in the appendix}
appendix text
\end{document}

如果您正在使用类似的语言包,则babel应该使用:\renewcaptionname\providecaptionname

\documentclass[chapterprefix=true]{scrbook}
\usepackage[english]{babel}
\renewcaptionname{english}{\chaptername}{Assignment}
\renewcaptionname{english}{\appendixname}{Assignment}% also change the prefix of appendices
\begin{document}

\frontmatter
\tableofcontents

\mainmatter
\chapter{Something}
chapter text

\appendix
\chapter{Something in the appendix}
appendix text
\end{document}

相关内容