Seite 1 von 1

Referenz einmalig umdefinieren

Verfasst: Mo 23. Apr 2012, 22:19
von eckeneckepenn
Hallo!

Ich möchte gerne eine Referenz einmalig anders layouten. Ich habe im Vorspann für einen Zähler definiert, wie der Zähler referenziert werden soll:
\renewcommand{\thesc}{\rm (SC\arabic{sc})}
Dies soll an einer Stelle im Dokument verändert werden. Leider kann ich nicht einfach vor dem \ref-Aufruf erneut den Befehl \renewcommand-Befehl benutzen, da der offensichtlich nach dem ersten \chapter-Aufruf nicht mehr möglich ist. Jedenfalls ändert sich nichts.

Ich benötige an einer Stelle die Referenz ohne Klammern. Die einzige Möglichkeit, die mir sonst bleibt ist, dass ich die Referenz zunächst ohne Klammern definiere und dann an allen anderen Stellen den Aufruf per \eqref tätige. Aber das wäre ein nicht gerade kleiner Aufwand, der Fehler nach sich ziehen dürfte. Hat da jemand eine bessere Idee?

Verfasst: Di 24. Apr 2012, 15:28
von cgnieder
Könntest Du ein Minimal-Beispiel liefern, dass das unerwünschte Verhalten zeigt? Dann wird es viel einfacher zu helfen.

Gruß

Verfasst: Fr 14. Sep 2012, 14:02
von eckeneckepenn
Sagt sich immer so leicht mit dem Mini-Beispiel, wenn man einen umfangreichen Text hat... Aber ich hab's noch hinbekommen. Ich hatte zunächst das hier:
\documentclass[fleqn]{article}

\newcounter{a}
\newcommand{\ab}{\refstepcounter{a}(A\arabic{a})}
\renewcommand{\thea}{{\rm (A\arabic{a})}}

\begin{document}
{\ab{}\label{A1}}

\ref{A1}

({\ref{A1}}(\ldots))
\end{document}
Da in der letzten Zeile aber eigentlich eine Abhängigkeit dargestellt werden soll, sollte da keine Klammer um das "A1" stehen - also (A1(...)). Kann man das einmalig umdefinieren? Die Alternative, die mir nun nur blieb, war die folgende:
\documentclass[fleqn]{article}
\usepackage{amsmath}

\newcounter{a}
\newcommand{\ab}{\refstepcounter{a}(A\arabic{a})}
\renewcommand{\thea}{{\rm A\arabic{a}}}

\begin{document}
{\ab{}\label{A1}}

\eqref{A1}

({\ref{A1}}(\ldots))
\end{document}
Nachteil: Die Geschichte mit der Abhängigkeit benötige ich nur einmal - die normale Referenz sehr oft. Da wäre ein \ref doch angenehmer als ein \eqref - schon weil der Editor das \eqref nicht kennt, ich es also immer ausschreiben muss. Das \ref wird schnell vorgegeben.

Eilt jetzt nicht - wäre aber mal interessant, ob es da Möglichkeiten gibt.

Verfasst: Fr 14. Sep 2012, 14:38
von Gast
\documentclass[fleqn]{article}

\newcounter{a}
\newcommand{\ab}{\refstepcounter{a}(A\arabic{a})}

\newcommand\Klammern[1]{(#1)}
\renewcommand{\thea}{{\rmfamily \protect\Klammern{A\arabic{a}}}}

\begin{document}
{\ab{}\label{A1}}

\ref{A1}

({\renewcommand\Klammern[1]{#1}\ref{A1}}(\ldots))
\end{document}
Ulrike Fischer
www.troubleshooting-tex.de

Verfasst: Fr 14. Sep 2012, 16:04
von eckeneckepenn
Wow! Spitze!

Darauf wäre ich so schnell wirklich nicht gekommen, mit einem Schalter zu arbeiten.

Vielen Dank!