You can easily achieve this using glossaries instead of nomencl.
- Create separate glossaries for the different kinds of symbols.
- Add keys for any additional fields you need (
dimension, unit, definition).
- Create glossary styles as desired. I took the predefined
long3col-booktabs and long4col-booktabs and modified them.
- Add the glossary entries. I locally redefined
\glsdefaulttype to put many entries in the desired glossary without giving the type key for every one. You could just as well load them from different files or create custom macros for the same level of convenience.
- Add all defined entries to the glossaries (so you don't have to use them in the document).
As a reminder: The complete compilation cycle for glossaries is pdflatex, makeglossaries, pdflatex, pdflatex (or equivalent). (This is "Option 2" from the manual.)
\documentclass{article}
\usepackage[nonumberlist]{glossaries}
\usepackage{glossary-longbooktabs}
\usepackage{booktabs}
\usepackage{siunitx}
\newglossary*{nodimennum}{Dimensionless Numbers}
\newglossary*{greeksym}{Greek Symbols}
\glsaddkey{dimension}
{--}
{\glsentrydimension}
{\Glsentrydimension}
{\glsdimension}
{\Glsdimension}
{\GLSdimension}
\glsaddkey{unit}
{--}
{\glsentryunit}
{\Glsentryunit}
{\glsunit}
{\Glsunit}
{\GLSunit}
\glsaddkey{definition}
{--}
{\glsentrydefinition}
{\Glsentrydefinition}
{\glsdefinition}
{\Glsdefinition}
{\GLSdefinition}
\glssetnoexpandfield{dimension}
\glssetnoexpandfield{unit}
\newcommand*\dimensionname{Dimension}
\newcommand*\unitname{Unit}
\newcommand*\definitionname{Definition}
\newglossarystyle{nodimennum}{%
\glspatchLToutput
\renewenvironment{theglossary}%
{\begin{longtable}{l p{.35\linewidth} p{.35\linewidth}}}%
{\end{longtable}}%
\renewcommand*{\glossaryheader}{%
\toprule
\bfseries \symbolname &
\bfseries \descriptionname &
\bfseries \definitionname
\tabularnewline\midrule\endhead
\bottomrule\endfoot}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand{\glossentry}[2]{%
\glsentryitem{##1}\glstarget{##1}{\glossentrysymbol{##1}} &
\glossentrydesc{##1} &
\glsentrydefinition{##1} \tabularnewline
}%
\ifglsnogroupskip
\renewcommand*{\glsgroupskip}{}%
\else
\renewcommand*{\glsgroupskip}{\glspenaltygroupskip}%
\fi
}
\newglossarystyle{physsym}{%
\glspatchLToutput
\renewenvironment{theglossary}%
{\begin{longtable}{l l l l}}%
{\end{longtable}}%
\renewcommand*{\glossaryheader}{%
\toprule \bfseries \symbolname &
\bfseries \descriptionname &
\bfseries \dimensionname &
\bfseries \unitname
\tabularnewline\midrule\endhead
\bottomrule\endfoot}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand{\glossentry}[2]{%
\glsentryitem{##1}\glstarget{##1}{\glossentrysymbol{##1}} &
\glossentrydesc{##1} &
\glsentrydimension{##1} &
\glsentryunit{##1} \tabularnewline
}%
\ifglsnogroupskip
\renewcommand*{\glsgroupskip}{}%
\else
\renewcommand*{\glsgroupskip}{\glspenaltygroupskip}%
\fi
}
\begingroup\renewcommand*\glsdefaulttype{greeksym}
\newglossaryentry{eps0}{
name={eps0},
symbol={\(\varepsilon_0\)},
description={vacuum permittivity},
dimension={\(\mathrm F / \mathrm L\)},
unit={\si{\farad\per\meter}},
}
\endgroup
\begingroup\renewcommand*\glsdefaulttype{nodimennum}
\newglossaryentry{zero}{
name={0},
symbol={\(0\)},
description={zero},
definition={the smallest natural number},
}
\newglossaryentry{one}{
name={1},
symbol={\(1\)},
description={one},
definition={\(0 + 1\)},
}
\newglossaryentry{two}{
name={1},
symbol={\(2\)},
description={two},
definition={\(1 + 1\)},
}
\newglossaryentry{three}{
name={3},
symbol={\(3\)},
description={three},
definition={\(2 + 1\)},
}
\newglossaryentry{four}{
name={4},
symbol={\(4\)},
description={four},
definition={\(3 + 1\)},
}
\newglossaryentry{five}{
name={5},
symbol={\(5\)},
description={five},
definition={\(4 + 1\)},
}
\newglossaryentry{six}{
name={6},
symbol={\(6\)},
description={six},
definition={\(5 + 1\)},
}
\newglossaryentry{seven}{
name={7},
symbol={\(7\)},
description={seven},
definition={\(6 + 1\)},
}
\newglossaryentry{eight}{
name={8},
symbol={\(8\)},
description={eight},
definition={\(7 + 1\)},
}
\newglossaryentry{nine}{
name={9},
symbol={\(9\)},
description={nine},
definition={\(8 + 1\)},
}
\endgroup
\makeglossaries
\glsaddall
\begin{document}
Hello World!
\vskip .6\textheight
\printglossary[type=greeksym, style=physsym]
\printglossary[type=nodimennum, style=nodimennum]
\end{document}

longtablepackage to typeset this. It features header lines that will be added whenever the table is entering a new page. – TonioElGringo Aug 20 '14 at 21:58longtablewithnomencl. The packagenomentblis supposed to do just what you want, but I didn't manage to make it work. – TonioElGringo Aug 21 '14 at 09:15