双列命名法

双列命名法

我想实现对于我的命名法,将其设为两列,标题位于列的顶部,而不是第一列的一部分。我还想将命名法的名称更改为 ,Appendix我对此进行了更改 \renewcommand{\nomname}{Acronyms}

有人能帮我“移植”代码吗这个帖子是否符合我的需要?

答案1

\nomname猜你正在使用这个nomencl包。

然后

\usepackage{multicol}
\makeatletter
\@ifundefined{chapter}
  {\def\wilh@nomsection{section}}
  {\def\wilh@nomsection{chapter}}

\def\thenomenclature{%
  \begin{multicols}{2}[%
    \csname\wilh@nomsection\endcsname*{\nomname}
    \if@intoc\addcontentsline{toc}{\wilh@nomsection}{\nomname}\fi
    \nompreamble]
  \list{}{%
    \labelwidth\nom@tempdim
    \leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \itemsep\nomitemsep
    \let\makelabel\nomlabel}%
}
\def\endthenomenclature{%
  \endlist
  \end{multicols}
  \nompostamble}
\makeatother

应该做。

完整示例(带有模拟命名法条目)

\documentclass{book}
\usepackage[intoc]{nomencl}
\makenomenclature
\usepackage{multicol}
\makeatletter
\@ifundefined{chapter}
  {\def\wilh@nomsection{section}}
  {\def\wilh@nomsection{chapter}}

\def\thenomenclature{%
  \begin{multicols}{2}[%
    \csname\wilh@nomsection\endcsname*{\nomname}
    \if@intoc\addcontentsline{toc}{\wilh@nomsection}{\nomname}\fi
    \nompreamble]
  \list{}{%
    \labelwidth\nom@tempdim
    \leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \itemsep\nomitemsep
    \let\makelabel\nomlabel}%
}
\def\endthenomenclature{%
  \endlist
  \end{multicols}
  \nompostamble}
\makeatother

\begin{document}

\frontmatter    
\tableofcontents

\mainmatter
\chapter{X}

\newcount\pippo
\def\mocknom{\expandafter\nomenclature\expandafter{\romannumeral\pippo}{X}}

abc

\loop\ifnum\pippo<200
\advance\pippo1
\mocknom
\repeat

\printnomenclature
\end{document}

相关内容