使用 scrartcl 类自定义标题/计数器

使用 scrartcl 类自定义标题/计数器

我想使用该类重新创建以下行为scrartcl

\documentclass{article}
\usepackage{titlesec}
\titleformat{\section}{}{Aufgabe \thesection}{1em}{}
\titleformat{\subsection}[runin]{}{\alph{subsection})}{1em}{}
\begin{document}
\section{}
\subsection{}
\end{document}

然后看起来像这样:

在此处输入图片描述

我无论如何也没有找到使用 KOMA 级(scrartcl准确地说)实现相同目标的方法,因此我采取了以下做法:

\documentclass{scrartcl}
\begin{document}
\section*{Aufgabe 1}
\subsection*{a)}
\end{document}

这是可行的,因为我们只讨论 3-5 页长的作业,而且我不需要目录,但它当然非常不像 LaTeX,当我这样做时,我的一部分感觉快要死了。

答案1

科玛

\documentclass{scrartcl}
\renewcommand{\thesubsection}{\alph{subsection}}
\renewcommand*\sectionformat{Aufgabe \thesection}
\renewcommand*\subsectionformat{\thesubsection)\hspace*{1em}}
\RedeclareSectionCommand[afterskip=0pt]{subsection}
\setkomafont{section}{\rmfamily\mdseries}
\setkomafont{subsection}{\rmfamily\mdseries}
\begin{document}
\section{}
\subsection{}
Blub
\end{document}

更新:另一种方法是枚举:

枚举

\documentclass{scrartcl}
\usepackage{enumitem}
\usepackage{needspace}

\newcounter{aufgabecnt}
\newenvironment{aufgabe}{
    \needspace{3\baselineskip}\bfseries Aufgabe \stepcounter{aufgabecnt}\theaufgabecnt:\mdseries\nopagebreak
    \begin{enumerate}[label={\alph*)}]
}{\end{enumerate}}

\begin{document}
\begin{aufgabe}
    \item Test
    \item Test
\end{aufgabe}
\end{document}

这种方法使用包needspace来防止分页(有点\nopagebreak棘手)。

相关内容