Sonderzeichen | als Befehl
Verfasst: Mo 23. Feb 2015, 09:43
Hallo,
ich möchte einen Befehl, der das Zeichen | durch andere LaTeX-Befehle ersetzt, aber nur in diesem Befehl. Das Problem dabei ist, dass das Argument von meinem Befehl \A erst beim Aufruf von \A ausgewertet werden darf. Mit \catcode und \scantokens schaffe ich es auch ziemlich gut:
Der erste Aufruf (1. Text) funktioniert, der zweite (2. Text) aber nicht. Im zweiten Aufruf übergebe ich dem Befehl \A nicht direkt den Text als Argument sondern einen anderen Befehl, der den Text enthält. Genau dies benötige ich aber. Hat jemand eine Idee, wie der Befehl \A verbessert werden kann?
Vielen Dank
Diether
ich möchte einen Befehl, der das Zeichen | durch andere LaTeX-Befehle ersetzt, aber nur in diesem Befehl. Das Problem dabei ist, dass das Argument von meinem Befehl \A erst beim Aufruf von \A ausgewertet werden darf. Mit \catcode und \scantokens schaffe ich es auch ziemlich gut:
\documentclass{scrartcl} \newcommand{\A}[1]{% Ersetze | durch Zeilenumbruch \begingroup \catcode`\|=\active \scantokens{\def|{\\}}% \scantokens{#1}% \endgroup } \begin{document} A | B 0. Text \\ Zweite Zeile \A{1. Text | Zweite Zeile} \newcommand{\test}{2. Text | Zweite Zeile} \A{\test} A | B \end{document}
Vielen Dank
Diether