手动对命名元素进行排序(带分组)

手动对命名元素进行排序(带分组)

我正在使用nomencl包,并将命名法部分分组为缩写列表和符号列表。符号列表中的顺序不是我想要的。如何手动对符号列表子部分进行排序。示例代码为:

\usepackage{nomencl}
\usepackage{ifthen}
\renewcommand{\nomgroup}[1]{
 \ifthenelse{\equal{#1}{A}}{\item[\bfseries\sffamily\large{List of Abbreviations}]}{
 \ifthenelse{\equal{#1}{S}}{\item[\bfseries\sffamily\large{List of Symbols}]}{}}
}
\begin{document}
\printnomenclature
\nomenclature[a]{PDF}{Probability Density Function}
\nomenclature[s]{$\gamma$}{Phase noise}
\nomenclature[s]{$\jmath$}{Imaginary unit}
\nomenclature[s]{$a$}{Vector of unknowns}
\nomenclature[s]{$\hat{a}$}{Vector of floats}
\nomenclature[s]{$\check{a}$}{Vector of fixed}
\end{document}

符号组中的顺序将输出为:$\check{a}$、$\gamma$、$\hat{a}$、$\jmath$ 和 $a$,因此我想手动将其排序为 $a$、$\hat{a}$、$\check{a}$、$\gamma$ 和 $\jmath$ 作为示例。

答案1

您可以在字母后附加数字s,从第二项开始:

\nomenclature[a]{PDF}{Probability Density Function}
\nomenclature[s3]{$\gamma$}{Phase noise}
\nomenclature[s4]{$\jmath$}{Imaginary unit}
\nomenclature[s]{$a$}{Vector of unknowns}
\nomenclature[s1]{$\hat{a}$}{Vector of floats}
\nomenclature[s2]{$\check{a}$}{Vector of fixed}

例如,

\documentclass{article}

\usepackage{nomencl}
\usepackage{ifthen}

\renewcommand{\nomgroup}[1]{
 \ifthenelse{\equal{#1}{A}}{\item[\bfseries\sffamily\large{List of Abbreviations}]}{
 \ifthenelse{\equal{#1}{S}}{\item[\bfseries\sffamily\large{List of Symbols}]}{}}
}

\makenomenclature

\begin{document}

\printnomenclature
\clearpage

\[a\gamma\jmath\hat{a}\check{a}\]

\nomenclature[a]{PDF}{Probability Density Function}
\nomenclature[s3]{$\gamma$}{Phase noise}
\nomenclature[s4]{$\jmath$}{Imaginary unit}
\nomenclature[s]{$a$}{Vector of unknowns}
\nomenclature[s1]{$\hat{a}$}{Vector of floats}
\nomenclature[s2]{$\check{a}$}{Vector of fixed}

\end{document} 

你将会拥有

在此处输入图片描述

附言

如果有超过 10 个项目,请附加01, 02, ..., 而不是1, 2, ... ;001如果002有超过 100 个项目,请附加 , , ...

相关内容