使用命名组定制命名分隔符

使用命名组定制命名分隔符

不久前,我需要为 aiaa 论文创建一个带有“=”分隔符的命名法。我得到了答案这里。这种方法很有效,直到我尝试将命名法分成两组。我得到的结果是这样的:

在此处输入图片描述

我想删除组标题中的分隔符。

这是我的 MWE

\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{nomencl}
% the following is useful when we have the old nomencl.sty package
\providecommand{\printnomenclature}{\printglossary}
\providecommand{\makenomenclature}{\makeglossary}
\makenomenclature

\makeatletter


\renewcommand{\nomlabel}[1]{#1\hfill\hspace{\labelsep}$=$}
\newlength{\nomwidest}

\RequirePackage{ifthen}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{S}}{\item[\textbf{Symbols}]}{
\ifthenelse{\equal{#1}{A}}{\item[\textbf{Acronyms}]}{}}}

\makeatother

\usepackage{babel}
\begin{document}
\settowidth{\nomwidest}{\nomlabel{that other one}} 
\printnomenclature[\nomwidest]

\nomenclature[ATO]{TO}{this one}\nomenclature[ATOO]{TOO}{that other one}\nomenclature[Sa]{$\alpha$}{alpha}\nomenclature[Sb]{$\beta$}{beta}
\end{document}

答案1

该包在环境中nomencl重新定义了,使其执行,因此\makelabelthenomenclature\nomlabel每一个 \item你得到了=

解决方案:使=服从成为您在标题中设置为 false 的条件。

% arara: pdflatex
% arara: nomencl
% arara: pdflatex

\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}

\usepackage{nomencl}
\usepackage{ifthen}

\makenomenclature

\newif\ifnomentry
\renewcommand{\nomlabel}[1]{#1\hfill\hspace{\labelsep}\ifnomentry$=$\fi}
\newlength{\nomwidest}

\renewcommand{\nomgroup}[1]{%
  \nomentryfalse
  \ifthenelse{\equal{#1}{S}}
    {\item[\textbf{Symbols}]}
    {\ifthenelse{\equal{#1}{A}}
      {\item[\textbf{Acronyms}]}
      {}%
    }%
  \nomentrytrue
}

\begin{document}
x

\settowidth{\nomwidest}{\nomlabel{that other one}}
\printnomenclature[\nomwidest]

\nomenclature[ATO]{TO}{this one}
\nomenclature[ATOO]{TOO}{that other one}
\nomenclature[Sa]{$\alpha$}{alpha}
\nomenclature[Sb]{$\beta$}{beta}

\end{document}

只是x为了生成命名法(必须输出一页)。我还更改了包的顺序。但是,我不确定

\settowidth{\nomwidest}{\nomlabel{that other one}}

因为\nomwidest会设置等号左边的空格。

在此处输入图片描述

相关内容