命名法不一致

命名法不一致

我的论文中有一个术语部分,我在其中定义了我的符号。例如:

\documentclass[twocolumn,10pt]{asme2e}
\addtolength{\textwidth}{-1pt}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\special{papersize=8.5in,11in}
\begin{document}
\begin{nomenclature}
\entry{$\hat{q}$}{Continuum scale conserved quantity}
\entry{$\hat{f}^0$}{Continuum scale source density function}
\end{nomenclature}
\end{document}

我的代码编译正确,但符号和其对应定义之间的空间似乎是恒定的,因此定义并不全部对齐在一列中。我该如何修改它以确保描述从同一点开始?

答案1

如果asme2.cls找到的是这里\makeatletter这是正常行为。您可以通过将和(包括)之间的代码添加\makeatother到文档中来更改它:

\documentclass[twocolumn,10pt]{asme2e}

%%% Start of code to add
\makeatletter
\newif\if@checkentries
\renewenvironment{nomenclature}[1][]
 {\if\relax\detokenize{#1}\relax
    \@checkentriesfalse
  \else
    \settowidth{\@tempdima}{#1\quad}%
    \@checkentriestrue
  \fi
  \def\entry##1##2{%
    \sbox\@tempboxa{##1\quad}%
    \if@checkentries
      \ifdim\wd\@tempboxa>\@tempdima
        \@latex@warning{Entry `\unexpanded{##1}' is wider}%
        \@tempdima=\wd\@tempboxa
      \fi
    \else
      \@tempdima=\wd\@tempboxa
    \fi
    \hangindent\@tempdima
    \noindent\makebox[\@tempdima][l]{##1}\ignorespaces##2\par}%
    \section*{NOMENCLATURE}}
 {\par\addvspace{12pt}}
\makeatother
%% End of code to add

\begin{document}
\begin{nomenclature}[$\hat{f}^0$]
\entry{$\hat{q}$}{Continuum scale conserved quantity}
\entry{$\hat{f}^0$}{Continuum scale source density function}
\end{nomenclature}
\end{document}

您可以将最宽的条目指定为 的可选参数\begin{nomenclature};如果您猜错了,日志文件中会出现警告。例如,如果您写

\begin{nomenclature}[$\hat{q}$]

你会收到警告

LaTeX Warning: Entry `$\hat {f}^0$' is wider on input line 31.

如果您不指定可选参数,您将获得与类定义的相同行为。

在此处输入图片描述

答案2

正如已经指出的那样,非对齐设置是 的预期行为asme2e。这是我使用 重新定义的看法\list。它还会缩进长描述,以便描述形成对齐的块,就像原始环境一样。作为可选参数,我的nomenclature环境采用符号列的宽度,默认为 1cm。

\documentclass[twocolumn,10pt]{asme2e}
% \addtolength{\textwidth}{-1pt}
% \usepackage{graphicx}
% \usepackage{amsmath}
% \usepackage{amssymb}
% \special{papersize=8.5in,11in}

\renewenvironment{nomenclature}[1][1cm]{%
    \newcommand\entry[2]{\item[##1]##2\par}
    \section*{NOMENCLATURE}
    \list{}{\leftmargin #1}%
  }%
  {\endlist\par\addvspace{12pt}}


\begin{document}
\begin{nomenclature}
% or use \begin{nomenclature}[1.5cm] to have a wider symbol column
\entry{$\hat{q}$}{Continuum scale conserved quantity}
\entry{$\hat{f}^{0}$}{Continuum scale source density function}
\entry{$A$}{Long description long description long description long description long description long description long description long description long description}
\end{nomenclature}
\end{document}

示例输出

相关内容