我正在使用LaTeX模板(由ASME提供)编写会议论文。 asme2e.cls 类定义了一个“命名法”环境,如下所示:
% Nomenclature environment
\newbox\tempbox
\newenvironment{nomenclature}{%
\newcommand\entry[2]{%
\setbox\tempbox\hbox{##1.\quad}
\hangindent\wd\tempbox\noindent{##1}\quad\ignorespaces##2\par}
\section*{NOMENCLATURE}}{\par\addvspace{12pt}}
在 .tex 源文件中使用,如下所示:
\begin{nomenclature}
% [...]
\entry{$C_{visc}$}{Viscous friction coefficient.}
\entry{$M$}{Spool mass.}
% [...]
\end{nomenclature}
导致描述文本未被左对齐(因为在符号(例如: M )和描述之间插入了固定的水平空格(例如: Spool mass。),但符号的长度不同(例如: Cvisc 比 M 长)。
有没有办法修复类左对齐的描述? (我使用 \ dimexpr 和 calc 包进行了一些实验,但只是出现了一堆错误。)
(我也问ASME他们是否可以提供更新的模板,但我还在等待他们的反馈...)
答案 0 :(得分:0)
我无法解决问题,但我找到了一个“快速而肮脏”的解决方法,使用 Tabbing 和 setspace 包。 这是新的 .tex 来源:
%[...]
\usepackage{Tabbing}
\usepackage{setspace}
%[...]
\begin{nomenclature}
{\setstretch{1.1}
\begin{tabbing}
\noindent
% [...]
\entry{$C_{visc}$}\quad\quad\={Viscous friction coefficient.}\\
\entry{$M$}\>{Spool mass.}\\
\entry{$v$}\>{Spool velocity.}\\
% [...]
\end{tabbing}
} % end \setstretch
\end{nomenclature}
%[...]
(显然,我完全绕过命名法环境的 asme2e.cls 类定义的 \ entry 命令。 / p>
答案 1 :(得分:0)
我也尝试编辑asme2ej.cls文件,但没有任何帮助。然后,我最终使用了制表符并设置了空间包。但是,我没有使用\ setstretch,并且我的文档编译得很好。
%[...]
\usepackage{Tabbing}
\usepackage{setspace}
%[...]
\begin{nomenclature}
\begin{tabbing}
\noindent
\entry{XYZ}\quad\quad\={This is an example}\\
\entry{PQR}\>{This is an example}\\
\entry{ZXC}\>{This is an example}\\
\entry{CVN}\>{This is an example}\\
\end{tabbing}
\end{nomenclature}
%[...]
答案 2 :(得分:0)
向ASME期刊提交论文时,我遇到了类似的问题。我的解决方案是编辑asme2e.cls文件:
\newenvironment{nomenclature}{%
\newcommand\entry[2]{\noindent\hbox to 0.05\textwidth{##1}\ignorespaces##2\par}
\section*{Nomenclature}}{\par\addvspace{12pt}}
您可以通过更改“ 0.05 \ textwidth”来更改缩进量。