
Я хотел бы создать номенклатуру с
тремя столбцами ( Symbol
, Beschreibung
, SI-Einheit
).
Так что это должно выглядеть так:
Мой код
\documentclass[
pdftex,a4paper,11pt,oneside,fleqn,
bibliography=totoc,listof=totoc,
headlines=2.1,headsepline,
numbers=noenddot
]{scrreprt}
%%%----- Mathe ----------------------------------
\usepackage{amsmath,amsfonts,amssymb,bm}
\usepackage[squaren,textstyle]{SIunits}
\usepackage{icomma}
\usepackage{mathtools}
\usepackage[makeroom]{cancel}
\usepackage{trfsigns}
%%%----- Abkürzungsverzeichnis ------------------
\usepackage[intoc]{nomencl}
\usepackage{ifthen}
\let\abk\nomenclature % Befehl umbenennen in abk
\renewcommand{\nomname}{Abkürzungsverzeichnis} % Deutsche Überschrift
\setlength{\nomlabelwidth}{.20\hsize} % Punkte zw. Abkürzung und Erklärung
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep} % Zeilenabstände verkleinern
\makenomenclature
%\pagestyle{scrheadings}
%Aufruf für Abkürzungsverzeichnis im Text durch: \abk{Abkürzung}{Beschreibung}
%%%----- Symbolverzeichnis ----------------------
%Um ein zusätzliches Symbolverzeichnis zu generieren wird mit Hilfe des Pakets nomencl noch ein zweiter Index erstellt. Dazu dienen die folgenden Befehle:
\renewcommand{\nompreamble}{\markboth{\nomname}{\nomname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname}{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnomalt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
%%%--------------------------------------------------------
%%%----- Beginn Dokument ----------------------------------
\begin{document}
\printnomenclature
\begin{equation}
F_{\mathrm{L}} = i \cdot l \cdot B
\end{equation}
\abk[s]{$F_{\mathrm{L}}$}{Lorentzkraft [N]}
\abk[s]{$B$}{Flussdichte [V s $\mathrm{m}^{-2}$]}
\abk{ESB}{Ersatzschaltbild}
\end{document}
и моя версия на данный момент:
Команда для создания записей \abk[s]{xy}{zx}
должна быть прежней.
решение1
Я адаптировал ваше решение, чтобы получить формат таблицы. Возможно, потребуется дополнительная оптимизация купола, но, по крайней мере, это дает желаемый результат.
- Я использую
nomentbl
опциюnomencl
. Это генерируетlongtable
вместо списка. - Для этого требуется пакет,
siunitx
а неSIunits
. - Я реструктурировал записи, чтобы они соответствовали этому формату.
- Я добавил
longtable
заголовок в ваш макрос\switchnomalt
.
\documentclass[
pdftex,a4paper,11pt,oneside,fleqn,
bibliography=totoc,listof=totoc,
headlines=2.1,headsepline,
numbers=noenddot
]{scrreprt}
%%%----- Mathe ----------------------------------
\usepackage{amsmath,amsfonts,amssymb,bm}
\usepackage{siunitx}
\usepackage{icomma}
\usepackage{mathtools}
\usepackage[makeroom]{cancel}
\usepackage{trfsigns}
%%%----- Abkürzungsverzeichnis ------------------
\usepackage[intoc,nomentbl]{nomencl}
\usepackage{ifthen}
\let\abk\nomenclature % Befehl umbenennen in abk
\renewcommand{\nomname}{Abkürzungsverzeichnis} % Deutsche Überschrift
\setlength{\nomlabelwidth}{.20\hsize} % Punkte zw. Abkürzung und Erklärung
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep} % Zeilenabstände verkleinern
\makenomenclature
%\pagestyle{scrheadings}
%Aufruf für Abkürzungsverzeichnis im Text durch: \abk{Abkürzung}{Beschreibung}
%%%----- Symbolverzeichnis ----------------------
%Um ein zusätzliches Symbolverzeichnis zu generieren wird mit Hilfe des Pakets nomencl noch ein zweiter Index erstellt. Dazu dienen die folgenden Befehle:
\renewcommand{\nompreamble}{\markboth{\nomname}{\nomname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname}{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnomalt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
\hline & Symbol & Beschreibung & SI-Einheit \\ \hline
}
%%%--------------------------------------------------------
%%%----- Beginn Dokument ----------------------------------
\begin{document}
\printnomenclature
\begin{equation}
F_{\mathrm{L}} = i \cdot l \cdot B
\end{equation}
\abk[s]{$F_{\mathrm{L}}$}{Lorentzkraft}{N}{}
\abk[s]{$B$}{Flussdichte}{V s m^{-2}}{}
\abk{ESB}{Ersatzschaltbild}{}{}
\end{document}