从目录中删除额外的计数器

从目录中删除额外的计数器

我已经创建了两个自定义计数器scireq,并且scisubreq正在处理指定需求的文档,但找不到任何需求包。

不幸的是,需求出现在目录中,我不知道如何将其从目录中删除。我尝试使用命令\toclevel@scireq来增加目录级别,但无济于事。设置\setcounter{tocdepth}{}确实会对章节、子章节等进行更改,但需求计数器始终显示。

是否有计数器设置,以便它们不包含在目录中?

    \documentclass{report}
    \usepackage{titlesec}
    \usepackage{hyperref}
    \usepackage{chngcntr}



    \titleclass{\scireq}{straight}[\chapter]
    \titleclass{\scisubreq}{straight}[\chapter]
    \newcounter{scireq}
    \newcounter{scisubreq}
    \counterwithin{scisubreq}{scireq}


    \newcommand{\scireqautorefname}{$req_{sci}$}
    \titleformat{\scireq}{\normalsize\bfseries}{}{0em}{$req_{sci}$ \thescireq:~}
    \titlespacing*{\scireq}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}

    \newcommand{\scisubreqautorefname}{$req_{sci}$}
    \titleformat{\scisubreq}{\normalsize\bfseries}{}{1.5em}{$req_{sci}$ \thescisubreq:~}
    \titlespacing*{\scisubreq}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}

    \newcommand{\reqpar}{\hangafter=0 \hangindent=2em}

    \makeatletter                           
    \providecommand*{\toclevel@scireq}{0}
    \providecommand*{\toclevel@scisubreq}{0}
    \makeatother 



    \begin{document}
    \setcounter{tocdepth}{3}
    \tableofcontents

    \chapter{Science Requirements}
    \section{Requirements}



    \scireq{Apertures}

        \scisubreq{Minimum Requirement}
        \reqpar{}Requirement Description

        \scisubreq{Target Requirements}
        \reqpar{}Requirement Description\\


    \end{document}

答案1

我刚刚测试了一个快速解决方法。我创建了两个新命令,允许使用\scireq\scisubreq函数,而不会出现在目录中。

我创建了\tscireq\tscisubreq增加计数器,然后使用 * 选项调用该函数。

\newcommand{\tscireq}[2][]{\stepcounter{scireq} \scireq*{#2}}
\newcommand{\tscisubreq}[2][]{\stepcounter{scisubreq} \scisubreq*{#2}}

相关内容