Я хотел бы иметь единицу измерения ближе к описанию символа в моем списке номенклатуры. Но когда я использую команду из файла справки и добавляю пробел после единицы измерения:
\newcommand{\nomunit}[1]{\renewcommand{\nomentryend}{\hspace*{\fill}[#1]\hspace{2cm}}}
Перемещается только последняя запись. Как переместить все записи на 2 см влево?
\documentclass{article}
\usepackage{nomencl}
\usepackage{siunitx}
\makenomenclature
\begin{document}
\newcommand{\nomunit}[1]{\renewcommand{\nomentryend}{\hspace*{\fill}[#1]\hspace{2cm}}}
\nomenclature[C]{$ m $}{ mass \nomunit{$\si{ kg }$}}
\nomenclature[C]{$ \omega\_{m} $}{ mechanical angular frequency \nomunit{$\si{ Hz }$}}
\nomenclature[C]{$ \omega\_{el} $}{ electrical angular frequency \nomunit{$\si{ Hz }$}}
Here comes the nomenclature:
\printnomenclature
\end{document}
решение1
Пробелы поглощаются, когда они находятся на месте переноса строки; добавьте \mbox{}
после \hspace{2cm}
; Я на самом деле использовал \hspace*
и , \nolinebreak
чтобы гарантировать, что этот пробел в любом случае не будет использоваться для переноса строки.
% arara: pdflatex
% arara: nomencl
% arara: pdflatex
\documentclass{article}
\usepackage{nomencl}
\usepackage{siunitx}
\makenomenclature
\begin{document}
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}[#1]\nolinebreak\hspace*{2cm}\mbox{}}%
}
\nomenclature[C]{$m$}{mass \nomunit{$\si{kg}$}}
\nomenclature[C]{$\omega_{\mathrm{m}}$}{mechanical angular frequency \nomunit{$\si{Hz}$}}
\nomenclature[C]{$\omega_{\mathrm{el}}$}{electrical angular frequency \nomunit{$\si{Hz}$}}
Here comes the nomenclature:
\printnomenclature
\end{document}
Обратите внимание также на исправления символов.