Seite 1 von 1

Nutzung von Befehlen die mit \csname erstellt wurden

Verfasst: So 10. Dez 2017, 23:26
von mathe42
Moin,

Minimalbeispiel:
\documentclass{scrartcl}

\begin{document}
    \makeatletter
    
    \newcommand\fundus{}
    
    \newcommand\define[2]{
        \expandafter\def\csname#1\endcsname{#2}
    }
    \newcommand\ueberprueft@save{}
    
    \newcommand\aufgabe[1]{
        \expandafter\define{#1@F}{Fundus}
        
        \g@addto@macro\fundus{\#1@A}   %Was muss hier hin?
    }
    
    \aufgabe{test}
    \test@F
    \fundus
\end{document}

Ich möchte erreichen, dass mit \aufgabe{name} ein Befehl \name@F erstellt wird und dieser an den Befehl \fundus "angehängt" wird.

Im Beispiel soll der Befehl \fundus einfach nur "fundus" ausgeben...


Leider komme ich da nicht weiter... Vielen Dank für jeden ratschlag...


Gruß
Sebastian

Verfasst: So 10. Dez 2017, 23:32
von u_fischer
\documentclass{scrartcl}

\begin{document}
    \makeatletter

    \newcommand\fundus{}

    \newcommand\define[2]{%
        \expandafter\def\csname#1\endcsname{#2}%
    }
    \newcommand\ueberprueft@save{}

    \newcommand\aufgabe[1]{%
        \expandafter\define{#1@F}{Fundus}%
        %
        \g@addto@macro\fundus{\csname #1@F\endcsname}%   %Was muss hier hin?
    }

    \aufgabe{test}
    \test@F
    \fundus
\end{document} 

Das war ja einfach

Verfasst: So 10. Dez 2017, 23:34
von mathe42
Da hätte ich auch draufkommen können....

Danke....