Hallo Ich nutze das glossaries Paket und hab mir auch schon erfolgreich ein symbolverzeichnis damit erstellen können. Verwende den gls{xxx} Befehl um in Formeln oder im Test diese Symbole zu verwenden. Nun wollte ich dies auch für Tabellen nutzen. Dort sollten diese Fett erscheinen. Ein etwas längeres Minimalcodebeispiel: Open in Online-Editor
\documentclass[ngerman,a4paper]{scrartcl} %Einbinden des Glossaries Pakets mit notwendigen Formatierungen \usepackage[ nonumberlist, %keine Seitenzahlen anzeigen acronym, %ein Abkürzungsverzeichnis erstellen toc, %Einträge im Inhaltsverzeichnis section] %im Inhaltsverzeichnis auf section-Ebene erscheinen {glossaries} \newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis} %Symbolverzeichnis erstellen \renewcommand*{\glspostdescription}{} %Den Punkt am Ende (Beschreibung) deaktivieren \newglossarystyle{MyStyle}{ \glossarystyle{long3colheader} \renewenvironment{theglossary} {\begin{longtable}{lp{2cm}p{\glsdescwidth}}} {\end{longtable}} \renewcommand*{\glossaryheader}{\textbf{Symbol} & \textbf{Einheit} & \textbf{Beschreibung}\\[3ex]}% \renewcommand*{\glossaryentryfield}[5]{% \glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3 \\[1ex]}% } \newglossaryentry{symb:x}{ name={\ensuremath{x}}, symbol=\SI{}{\second\per\meter}, description={Meine x Zahl}, sort=symbolx, type=symbolslist } \newglossaryentry{symb:R}{ name={\ensuremath{R}}, symbol=\SI{}{\joule\per\mol\per\kelvin}, description={Gaskonstante}, sort=symbolR, type=symbolslist } \usepackage{siunitx} \sisetup{} \makeglossaries %Glossar-Befehle anschalten \begin{document} Irgendwelcher Text Die Gaskonstante \gls{symb:R}... Hier möchte ich das Symbol \textbf{\gls{symb:x}} gern Fett... Eine Gleichung: \begin{equation} Blablub=\gls{symb:x} \cdot \gls{symb:R} \label{equ:MyGLN} \end{equation} Eine Tabelle \begin{table}[htbp] \centering \caption{Sinnfreie Tabelle} \begin{tabular}{cc} %\toprule \textbf{\gls{symb:x}} & \textbf{\gls{symb:R}}\\ %\midrule \textbf{0} & 1\\ \textbf{10} & 256\\ \textbf{100} & 305\\ %\bottomrule \end{tabular}% \label{tab:MyTab}% \end{table}% \printglossary[type=symbolslist,style=MyStyle] \end{document} Die Verwendung im Test und in Formeln geht ohne Probleme, nur eben nicht Fett. Das testbf{} wird einfach ignoriert. Hat jemand eine Idee wie man das ändern kann? gefragt 29 Jan '15, 12:26 metzelmax |
Da die Symbol x und R im Mathemodus gesetzt werden (
immer
zu schreiben. Im folgenden MWE habe ich eine automatisierte Lösung implementiert, die es erlaubt via Open in Online-Editor
% arara: pdflatex % arara: makeglossaries % arara: pdflatex % arara: pdflatex \documentclass[ngerman,a4paper]{scrartcl} \pagestyle{empty} % Einbinden des Glossaries Pakets mit notwendigen Formatierungen \usepackage[ nonumberlist, %keine Seitenzahlen anzeigen acronym, %ein Abkürzungsverzeichnis erstellen toc, %Einträge im Inhaltsverzeichnis section] %im Inhaltsverzeichnis auf section-Ebene erscheinen {glossaries} \newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis} %Symbolverzeichnis erstellen \renewcommand*{\glspostdescription}{} %Den Punkt am Ende (Beschreibung) deaktivieren \newglossarystyle{MyStyle}{ \glossarystyle{long3colheader} \renewenvironment{theglossary} {\begin{longtable}{lp{2cm}p{\glsdescwidth}}} {\end{longtable}} \renewcommand*{\glossaryheader}{\textbf{Symbol} & \textbf{Einheit} & \textbf{Beschreibung}\\[3ex]}% \renewcommand*{\glossaryentryfield}[5]{% \glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3 \\[1ex]}% } \newglossaryentry{symb:x}{ name={\ensuremath{x}}, symbol=\si{\second\per\meter}, description={Meine x Zahl}, sort=symbolx, type=symbolslist } \newglossaryentry{symb:R}{ name={\ensuremath{R}}, symbol=\si{\joule\per\mol\per\kelvin}, description={Gaskonstante}, sort=symbolR, type=symbolslist } \usepackage{siunitx} \usepackage{array} \usepackage{etoolbox} \makeatletter % Backend for bold face \let\saved@gls@=\@gls@ \newcommand*{\bf@gls}[2][]{% \new@ifnextchar[{\bf@gls@{#1}{#2}}{\bf@gls@{#1}{#2}[]}% } \newcommand*{\bf@sgls}[1][]{\bf@gls[hyper=false,#1]} \def\bf@gls@#1#2[#3]{% \textbf{\boldmath\saved@gls@{#1}{#2}[#3]}% } % Interface \newrobustcmd*{\glsbf}{\@ifstar\bf@sgls\bf@gls} \AtBeginEnvironment{table}{\let\@gls@=\bf@gls@} \makeatother \makeglossaries %Glossar-Befehle anschalten \begin{document} Irgendwelcher Text Die Gaskonstante \gls{symb:R}... Hier möchte ich das Symbol \glsbf{symb:x} gern Fett... Eine Gleichung: \begin{equation} Blablub=\gls{symb:x} \cdot \gls{symb:R} \label{equ:MyGLN} \end{equation} Eine Tabelle \begin{table}[htbp] \centering \caption{Sinnfreie Tabelle} \begin{tabular}{>{\bfseries}cc} %\toprule \gls{symb:x} & \gls{symb:R}\\ %\midrule 0 & 1\\ 10 & 256\\ 100 & 305\\ %\bottomrule \end{tabular}% \label{tab:MyTab}% \end{table}% \printglossary[type=symbolslist,style=MyStyle] \end{document} beantwortet 29 Jan '15, 13:50 Henri Ok, nach längerem Probieren hab ich es vielleciht hinbekommen. Es liegt offensichtlich daran das es sich bei den Symbolen um mathematische ausdrücke handelt. Diese können nicht mit testbf Fett dargestellt werden. Hier hilft das pmb aus dem paket amsmath. Damit ist eine Fett-Darstellung möglich. anstelle textbf{xxx} schreibt man einfach pmb{xxx}. Einzige unschönheit wäre jetzt noch das die Symbole kursiv angezeigt werden (weil mathe). gibts eine möglichkeit das über eine option zu ändern oder ist das so Typographisch OK?
(29 Jan '15, 13:44)
metzelmax
Vielen Dank für die Hilfe. Das funktioniert sehr gut. Ich hab allerdings die automatische Fettschrift in Tabellen rausgenommen da dies auch für die Überschriften galt. Also danke nochmal:)
(29 Jan '15, 17:51)
metzelmax
|