% \iffalse meta-comment % % Copyright (C) 2006 Brian Elmegaard % ------------------------------------------------------- % % This file may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.2 % of this license or (at your option) any later version. % The latest version of this license is in: % % http://www.latex-project.org/lppl.txt % % and version 1.2 or later is part of all distributions of LaTeX % version 1999/12/01 or later. % % \fi % % \iffalse %<*dtx> \ProvidesFile{nomentbl.dtx} % %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesPackage{nomentbl} %\ProvidesFile{nomentbl.drv} %<*driver|package> [2006/04/14 v0.4 Nomenclature in a longtable environment] % %<*driver> \documentclass{ltxdoc} \usepackage{nomentbl} \makenomenclature \EnableCrossrefs \CodelineIndex \RecordChanges \begin{document} \DocInput{nomentbl.dtx} \end{document} % % \fi % % \CheckSum{475} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z % Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z % Digits \0\1\2\3\4\5\6\7\8\9 % Exclamation \! Double quote \" Hash (number) \# % Dollar \$ Percent \% Ampersand \& % Acute accent \' Left paren \( Right paren \) % Asterisk \* Plus \+ Comma \, % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? % Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % % % \changes{v0.3}{2004/02/17}{Initial version more or less} % \changes{v0.4}{2006/04/14}{Version updated for nomencl 4.2 with a % few additions to functionality} % % \GetFileInfo{nomentbl.dtx} % % \newcommand{\MakeIndex}{\textsl{MakeIndex}} % % % \DoNotIndex{\newcommand,\newenvironment} % % % % \title{The \textsf{nomentbl} package\thanks{This document % corresponds to \textsf{nomentbl}~\fileversion, dated \filedate.}} % \author{Brian Elmegaard \\ \texttt{be@mek.dtu.dk}\\Updated by Patrick Egan, March 2006.} % % \maketitle % % \section{Introduction} % % Often it is desirable to include the units of nomenclature in a % tabular environment. \textsf{Nomentbl} is a customization of the % \texttt{nomencl} package that presents the nomenclature in a table % of the \textsf{longtable}-type. % % With the most recent update\footnote{September 22, 2005.} to the % \textsf{nomencl} package to version 4.2, the \textsf{nomentbl} % package version 0.3 is not compatible with the \verb+\makenomenclature+ % and \verb+\printnomenclature+ commands. This document describes % version 0.4 of the \textsf{nomentbl} package. It is compatible with the most % recent \textsf{nomencl} version. % % This document gives a very limited yet sufficient introduction to % the use of \textsf{longtable} together with the \textsf{nomencl} % package for writing nomenclatures. % % \section{Prerequisite} % % The \textsf{nomentbl} package requires both \textsf{nomencl} and % \textsf{longtable} to be present on your system. % % \section{Usage} % % \begin{itemize} % % \item % Install \texttt{nomentbl.sty} where latex can find it, and % \texttt{nomentbl.ist} where \emph{MakeIndex} can find that. % % \item % Put \verb+\usepackage[]{nomentbl}+ in the preamble of the % document. For further information on \verb++ see the % \textsf{nomencl} user guide. % % \item % Put \verb+\makenomenclature+ in the preamble of the document. % % \item % Put \verb+\printnomenclature+ where the nomenclature section/chapter % is desired. % % \item % Issue the \verb+\nomenclature+ command for each symbol desired to be % in the nomenclature list (see Section % \ref{sect:nomenclature_command}). % % \item % Run \LaTeX. This generates the nomenclature input file % \verb+.nlo+. % % \item % Run \emph{MakeIndex} with % \begin{center} % \verb+makeindex -s nomentbl.ist -o .nls .nlo+% % \end{center} % % \item % Run \LaTeX\ again. % % \end{itemize} % % \section{Examples} % \label{sect:examples}% % % An equation is needed for the current setup: % \begin{equation} % \label{eq:1} % \mathbf{J}_i\cdot\Delta\underline{x}_{i+1}=-\underline{f}_i % \end{equation} % % \iffalse % Here follows the nomenclature entries. % \fi % \nomenclature[aJ]{$J$}{Jacobian Matrix}{}{}% % \nomenclature[Zi]{$i$}{Variable number}{}{}% % \nomenclature[ax]{$\Delta x$}{Variable displacement vector}{}{}% % \nomenclature[af]{$f$}{Residual value vector}{}{}% % \nomenclature[ax]{$x$}{Variable value vector}{}{}% % The nomenclature is a result of the following: % \begin{verbatim} % \nomenclature[AJ]{$J$}{Jacobian Matrix}{}{}% % \nomenclature[Zi]{$i$}{Variable number}{}{}% % \nomenclature[Ax]{$\Delta x$}{Variable displacement vector}{}{}% % \nomenclature[Af]{$f$}{Residual value vector}{}{}% % \nomenclature[Ax]{$x$}{Variable value vector}{}{}% % \end{verbatim} % Some symbols with units: % \begin{equation} % \label{eq:3} % F = m \alpha % \end{equation} % \nomenclature[AF]{$F$}{Force}{N}{ML/T$^2$}% % \nomenclature[Am]{$m$}{mass}{kg}{M}% % \nomenclature[Ga]{$\alpha$}{acceleration}{m/s$^2$}{L/T$^2$}% % \begin{verbatim} % \nomenclature[AF]{$F$}{Force}{N}{ML/T$^2$}% % \nomenclature[Am]{$m$}{mass}{kg}{M}% % \nomenclature[Ga]{$\alpha$}{acceleration}{m/s$^2$}{L/T$^2$}% % \end{verbatim} % % The nomenclature is typeset in a |section*| by using the % |\printnomenclature| command. In this example it gives the following % result nomenclature. % \printnomenclature % % \section{The \texttt{\textbackslash nomenclature} command} % \label{sect:nomenclature_command}% % \DescribeMacro{\nomenclature} % To use the \texttt{\textbackslash nomenclature} command % \begin{center} % \verb+\nomenclature[]{}{}{}{}+ % \end{center} % The \verb++ is the symbol entry to the nomenclature table. % Do not forget to use the math environment (\verb+$ $+) if it is a % mathematical symbol. The \verb++ is the description of % the symbol. The \verb++ are the physical (SI) units of the % symbol. The || may be used to give the dimension of the % used symbol, but other uses may be found. % % The \verb++ is made of two characters, as outlined in % Section \ref{sect:examples}. The second character acts as a sorting % identifier, for example, a--z. The first character can be: % % \begin{itemize} % \item % `A' so that the symbol is classified as a Latin letter. % \item % `G' so that the symbol is classified as a Greek letter. % \item % `X' so that the symbol is classified as a superscript. % \item % `Z' so that the symbol is classified as a subscript. % \end{itemize} % % % \section{Acknowledgements} % \label{sec:acknowledgements} % \textsf{Nomentbl} is only a customized version of the \textsf{nomencl} % by Boris Veytsman and Bernd Schandl. % % % % The package files \texttt{nomentbl.ins} and \texttt{nomentbl.dtx} are % based on \texttt{skeleton.ins} and \texttt{skeleton.dtx} in the % \textsf{dtxtut} package by Scott Pakin. % % \changes{v0.3}{2004/02/17}{Initial version more or less} % \changes{v0.4}{2006/04/14}{Updating to version 4.2 of nomencl} % \changes{v0.4}{2006/04/14}{Adding intoc option (SP)} % \changes{v0.4}{2006/04/14}{Improving the table by using a % |definition| column} % \changes{v0.4}{2006/04/14}{Improving the table by use of the % \textsf{array} package} % Additions and corrections to the package (especially for updating % it to version 4.2 of nomencl) have been provided by: % Stefan Pinnow (SP), % Patrick Egan (PE), % Rasmus Solmer Eriksen (RSE), % Andrea Kern, % Christian Faulhammer (CF) % % \section{To do} % \label{sec:do} % % Ideas for future development: % \begingroup\obeylines % Option for underlining group header lines % Make the dimension column optional % Possibility for user-defined symbol groups % Translation of symbol group names % \endgroup % % % % \StopEventually{ % \PrintChanges % \PrintIndex % } % % %\section{Implementation} %\label{sec:Implementation} % \begin{macrocode} %<*package> % Additions and corrections to the package (especially for updating % it to version 4.2 of nomencl) have been provided by: % Stefan Pinnow (SP) % Patrick Egan (PE) % Rasmus Solmer Eriksen (RSE) % Andrea Kern % Christian Faulhammer (CF) % \def\docdate{2006/04/14} %SP % \end{macrocode} % \begin{macro}{\intoc} % Option to specify if the nomenclature should be shown in the table % of contents. % \begin{macrocode} \newif\if@intoc % \end{macrocode} % \end{macro} % \begin{macrocode} \RequirePackage{longtable} %SP \RequirePackageWithOptions{nomencl}[2005/09/22 v4.2 Nomenclature package (LN)] \RequirePackage{ifthen} \RequirePackage{calc} %SP \RequirePackage{array} %SP \DeclareOption{intoc}{\@intoctrue} \DeclareOption{notintoc}{\@intocfalse} % \DeclareOption*{% \PassOptionsToPackage{\CurrentOption}{nomencl}% } % \DeclareOption{croatian}{% \def\eqdeclaration#1{jednad\v{z}bu\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}stranica\nobreakspace#1}% %SP \def\nomname{Popis simbola}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{danish}{% \def\eqdeclaration#1{ligning\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}side\nobreakspace#1}% %SP \def\nomname{Symbolliste}% \def\nomAname{Romerske bogstaver}% \def\nomGname{Græske bogstaver}% \def\nomXname{(Højtstillede) indices}% \def\nomZname{Indices}} \DeclareOption{english}{% \def\eqdeclaration#1{equation\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}page\nobreakspace#1}% %SP \def\nomname{Nomenclature}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{french}{% \def\eqdeclaration#1{\'equation\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}page\nobreakspace#1}% %SP \def\nomname{Liste des symboles}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{german}{% \def\eqdeclaration#1{Gleichung\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}Seite\nobreakspace#1}% %SP %CF \def\nomname{Symbolverzeichnis}% \def\nomAname{Lateinische Buchstaben}% \def\nomGname{Griechische Buchstaben}% \def\nomXname{(hochgestellte) Indizes}% \def\nomZname{Indizes}} \DeclareOption{italian}{% \def\eqdeclaration#1{equazione\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}pagina\nobreakspace#1}% %SP \def\nomname{Elenco dei Simboli}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{polish}{% \def\eqdeclaration#1{rownanie\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}strona\nobreakspace#1}% %SP \def\nomname{Lista symboli}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{portuguese}{% \def\eqdeclaration#1{equa\c{c}\~ao\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}p\'agina\nobreakspace#1}% %SP \def\nomname{Nomenclatura}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{russian}{% \def\eqdeclaration#1{\cyrs\cyrm.\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}\cyrs\cyrt\cyrr.\nobreakspace#1}% \def\nomname{\CYRS\cyrp\cyri\cyrs\cyro\cyrk% \ \cyro\cyrb\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyri% \cyrishrt}% %SP \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{spanish}{% \def\eqdeclaration#1{ecuaci\'on\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}p\'agina\nobreakspace#1}% %SP \def\nomname{Nomenclatura}% \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \DeclareOption{ukrainian}{% \def\eqdeclaration#1{\cyrd\cyri\cyrv.\nobreakspace(#1)}% \def\pagedeclaration#1{\hspace*{2mm}\cyrs\cyrt\cyro\cyrr.\nobreakspace#1}% \def\nomname{\CYRP\cyre\cyrr\cyre\cyrl\cyrii\cyrk% \ \cyrp\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyrsftsn}% %SP \def\nomAname{Latin Letters}% \def\nomGname{Greek Letters}% \def\nomXname{Superscripts}% \def\nomZname{Subscripts}} \ExecuteOptions{notintoc,norefeq,norefpage,prefix,cfg,english} \ProcessOptions\relax % %SP % \end{macrocode} % \begin{macro}{\nomenclature} % This is the actual command provided by the package. % \begin{macrocode} \def\@@nomenclature[#1]#2#3#4#5{\endgroup\@esphack} \def\@@@nomenclature[#1]#2#3#4#5{% \def\@tempa{#2}\def\@tempb{#3}% % \end{macrocode} % \end{macro} % \begin{macrocode} %SP %PE \protected@write\@nomenclaturefile{}% {\string\nomenclatureentry{#1\nom@verb\@tempa @{\nom@verb\@tempa}&% \begingroup\nom@verb\@tempb\endgroup &\begingroup#4\endgroup&% \begingroup#5\endgroup&\begingroup\protect\nomeqref{\theequation}% |nompageref}{\thepage}}% \endgroup \@esphack} % %SP %PE %RSE \def\thenomenclature{% \@ifundefined{chapter}% { \section*{\nomname} \if@intoc\addcontentsline{toc}{section}{\nomname}\fi% }% { \chapter*{\nomname} \if@intoc\addcontentsline{toc}{chapter}{\nomname}\fi% }% % \@ifundefined{chapter}{\section*}{\chapter*}{\nomname}% \markboth{\nomname}{\nomname} \nompreamble } \def\endthenomenclature{% \endlist \nompostamble} \renewcommand\nomgroup[1]{% %SP \ifthenelse{\equal{#1}{A}}{% \large{\nomAname}}{% \ifthenelse{\equal{#1}{G}}{% \large{\nomGname}}{% \ifthenelse{\equal{#1}{X}}{% \large{\nomXname}}{% \ifthenelse{\equal{#1}{Z}}{% \large{\nomZname}}{% {}}}}}} % \end{macrocode} % \begin{macrocode} % % \end{macrocode} % \subsection{The \MakeIndex\ Style File} % \label{sec:ist} % % \begin{macrocode} %<*idxstyle> % Nomenclature style file for makeindex. Based on the file %SP % nomencl.ist distributed with the LaTeX package nomencl version v4.2 2005/09/22 % % % Written by Brian Elmegaard be@mek.dtu.dk % (Original file by Boris Veytsman) %SP % Updated by Stefan Pinnow 27 March 2006. %PE % Updated by Patrick Egan 02 March 2006. % % The output has been changed to a (LaTeX-style) longtable to have four % columns. % actual '@' quote '%' delim_0 "" delim_1 "" delim_2 "" item_0 "" delim_t " \\\\\n" line_max 1000 heading_prefix "\\multicolumn{3}{l}{\\nomgroup{" heading_suffix "}} \\\\\n\\nopagebreak\\\\*[\\parskip]\n\\nopagebreak{}" headings_flag 1 group_skip "\\\\*[\\parskip]" %SP %PE preamble "\n\\begin{thenomenclature}\n% \\begin{longtable}[l]% {cp{\\textwidth*\\real{0.5}}c!{\\extracolsep{\\fill}}lll}\n" postamble "\n\\end{longtable}\n\n\\end{thenomenclature}\n" %SP %PE keyword "\\nomenclatureentry" % % \end{macrocode} % \begin{macrocode} % % \end{macrocode} %% % %% % \begin{macrocode} %<*example> % Example provided by Stefan Pinnow (SP) \documentclass{article} \usepackage[notintoc]{nomentbl} \usepackage{setspace} \makenomenclature % \begin{document} % \section*{Main equations} % Here an equation \begin{equation}\label{eq:heatflux} \dot{Q} = k \cdot A \cdot \Delta T \end{equation}% \nomenclature[aQ]{$\dot{Q}$}{heat flux}{W}{}% \nomenclature[ak]{$k$}{overall heat transfer coefficient}{$\frac{\mathrm{W}}{\mathrm{m}^2\mathrm{K}}$}{see eq.~(\ref{eq:ohtc})}% \nomenclature[aA]{$A$}{area}{m$^2$}{$L^2$}% \nomenclature[aL]{$L$}{length}{m}{SI base quantity}% \nomenclature[aT]{$T$}{temperature}{K}{SI base quantity}% \nomenclature[aT]{$\Delta T$}{temperature difference}{K}{SI base quantity}% % or another one \begin{equation}\label{eq:ohtc} \frac{1}{k} = \left[\frac{1}{\alpha _{\mathrm{i}}\,r_{\mathrm{i}}} + \sum^n_{j=1}\frac{1}{\lambda _j}\, \ln \frac{r_{\mathrm{a},j}}{r_{\mathrm{i},j}} + \frac{1}{\alpha _{\mathrm{a}}\, r_{\mathrm{a}}}\right] \cdot r_{\mathrm{reference}} \end{equation}% \nomenclature[ga]{$\alpha$}{convection heat transfer coefficient}{$\frac{\mathrm{W}}{\mathrm{m}^2\mathrm{K}}$}{}% \nomenclature[zi]{i}{in}{}{}% \nomenclature[gl]{$\lambda$}{thermal conductivity}{$\frac{\mathrm{W}}{\mathrm{m K}}$}{}% \nomenclature[za]{a}{out}{}{}% \nomenclature[zn]{$n$}{number of walls}{}{}% \nomenclature[zj]{$j$}{running parameter}{}{}% % That should do it. % \onehalfspacing \printnomenclature % \end{document} % \end{macrocode} % \begin{macrocode} % % \end{macrocode} % \Finale \endinput