Beliebige Reihenfolge der Argumente vom Typ xparse (Verschönerungen)?

Beliebige Reihenfolge der Argumente vom Typ xparse (Verschönerungen)?

Kann ich xparse e-type-Argumente verwenden, um neu zu definieren, wie hoch- und tiefgestellte Zeichen für einen Befehl funktionieren (z. B. \mybeta alle hoch- und tiefgestellten Zeichen in Klammern setzen lassen)? Ich habe versucht zu definieren

 \NewDocumentCommand{\mybeta}{e_e^}{\beta_{(#1)}^{(#2)}}

Und es scheint gut zu funktionieren, wenn ich sie in der Reihenfolge platziere, in der die Argumente angegeben sind, aber nicht, wenn ich versuche

 \mybeta^{n}_{s}

wo ich eine Warnung mit doppeltem Index erhalte, wenn ich $\beta^{(n)}_{(s)}$ möchte

Ich vermute, dass ich vielleicht e{_^} als Argumentspezifikation verwenden muss, aber wenn ich das tue, wie kann ich die Argumente _ und ^ auseinanderhalten oder wiederherstellen? Oder gibt es einen anderen/besseren Weg, wie ich vorgehen sollte und ich habe die Verschönerungen völlig missverstanden?

Antwort1

Die Lösung besteht, wie Sie vorhergesagt haben, e{_^}in Ihrer Argumentspezifikation. Die Reihenfolge der Ausschmückungen spielt keine Rolle. Und ja, es ist erstaunlich, dass es funktioniert!

Antwort2

Anscheinend (danke an @LateXeraXeTal) benutzt man einfach

 \NewDocumentCommand{\mybeta}{e{_^}}{\beta_{(#1)}^{(#2)}}

Ich gebe zu, ich bin etwas verwirrt, warum Sie hierfür nicht mehrere e-Argumenttypspezifizierer verwenden. Würde man jemals mehrere e-Typargumente verwenden?

verwandte Informationen