新列表环境在类文件中不起作用

新列表环境在类文件中不起作用

对于这篇文章的长度,我提前表示歉意……

以下 MWE 包含我定义的枚举环境:

\documentclass{memoir}
\usepackage{multicol}
\usepackage{enumitem}

\newlist{argo}{enumerate}{1}
    \setlist[argo,1]{label=\arabic*.}
    \newcommand{\prem}{\item}
    \newcommand{\conc}{\rule{.3\linewidth}{1pt}\\[0em]\vspace{-3ex} \item[C.]}

\begin{document}

    \begin{argo}
        \prem Blah

        \prem Blah

        \conc Blah
    \end{argo}

\begin{multicols}{3}
        \begin{argo}
        \prem Blah

        \prem Blah

        \conc Blah
    \end{argo}

    \begin{argo}
        \prem Blah

        \prem Blah

        \conc Blah
    \end{argo}

    \begin{argo}
        \prem Blah

        \prem Blah

        \conc Blah
    \end{argo}

    \begin{argo}
        \prem Blah

        \prem Blah

        \conc Blah
    \end{argo}
\end{multicols}
\end{document}

我最希望实现的是一个以前提-结论形式排版论证的环境,其中会自动插入一条规则以将前提与结论分开。我之所以包括它,是multicols因为列似乎会把事情搞乱。

以下是 PDF,其中的列表工作正常:

在此处输入图片描述

然而,一旦我将这个列表定义嵌入到我的 .cls 文件中,行为就会发生变化,规则不再正确缩放到 1/3 行宽。如下所示:

在此处输入图片描述

这是.cls我正在使用的自定义文件:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{dkhandout}[2014/05/04 DK Handout]
\LoadClass[article,oneside,oldfontcommands]{memoir}

%%%%%LOAD FOLLOWING PACKAGES%%%%%
\RequirePackage[T1]{fontenc}
\RequirePackage[utf8]{inputenc}
\RequirePackage{geometry}
\let\footruleskip\undefined % makes memoir compatible with fncyhdr
\RequirePackage{fancyhdr}
\RequirePackage{tikz}
\RequirePackage{datetime}
\RequirePackage{etoolbox}
\RequirePackage{enumitem}
\RequirePackage{multicol}
%%%%%CLASS OPTIONS%%%%%%%%%%%%

\DeclareOption{10pt}{
  \PassOptionsToClass{\CurrentOption}{memoir}
}
\DeclareOption{11pt}{
  \PassOptionsToClass{\CurrentOption}{memoir}
}
\DeclareOption{12pt}{
  \PassOptionsToClass{\CurrentOption}{memoir}
}
%% Fallback
\DeclareOption*{
  \ClassWarning{myclass}{Unknown option '\CurrentOption'}
}
%%%%%DEFAULT CLASS OPTIONS%%%%%%%
\ExecuteOptions{10pt}

%%%%%PROCESS OPTIONS%%%%%%%%%%
\ProcessOptions\relax

%%%%%HEADER OPTIONS%%%%%%%%%%%

\pagestyle{fancy}
\lhead{\thetitle}
\rhead{Phil 164 - \ifnumcomp{\value{MONTH}}{<}{7}{Spring}{Fall} \the\year}%

\fancypagestyle{plain}{%
  \lhead{\thetitle}%
  \rhead{Phil 164 - \ifnumcomp{\value{MONTH}}{<}{7}{Spring}{Fall} \the\year}%
}

%%%%%DOCUMENT FORMATTING%%%%%%%
    % Title flush left and compact spacing
    \pretitle{\vspace*{-10ex}\flushleft\Large\bfseries}
    \posttitle{\par\vspace{0em}}
    \preauthor{\par\vspace{0em}}
    \postauthor{\par\vspace{0em}}
    \predate{\par\vspace{0em}}
    \postdate{\par\vspace{5ex}}

    % No paragraph indentation
    \setlength{\parindent}{0pt}
    \nonzeroparskip

   % Blank date and author
    \date{}
    \author{}

    % New argument environment "argo"
    \newlist{argo}{enumerate}{1}
    \setlist[argo,1]{label=\arabic*.}
    \newcommand{\prem}{\item}
    \newcommand{\conc}{\rule{.3\linewidth}{1pt}\\ \relax \vspace{-3ex} \item[C.]}

%%%%%END OF CLASS%%%%%%%%%%%%%
\endinput

一些修修补补给了我一种模糊的印象fancyhdr,这是罪魁祸首,但这是我的第一次.cls,所以我可能在更基本的层面上做错了什么。

那么这里出了什么问题?当我将列表定义放入 .cls 文件中时,为什么规则(并且只有规则)会变得混乱?

答案1

将评论转换为答案

使用\columnwidth\linewidth不是

\newcommand{\conc}{\rule{.3\columnwidth}{1pt}\par \vspace{-1ex} \item[C.]} Note \columnwidth

得出:

在此处输入图片描述

相关内容