LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Joseph Wright <[log in to unmask]>
Fri, 24 Sep 2010 08:39:46 +0100
text/plain (29 lines)
On 24/09/2010 07:15, Arno Trautmann wrote:
> Hi all,
> again, a question about xparse, still hoping this is the right list for
> that.
> I want to do something like
> \NewDocumentCommand\mycommand{O{#2}m}{#1 and #2.}
> which should give the same result for \mycommand[a]{a} and
> \mycommand{a}, i.e. “#1 is equal to #2 if #1 is not given“. Is there a
> simple way to do this to avoid an if-construct:
> \IfNoValue{#1}{\def\temp{#2}}{\def\temp{#1}}
> and then use \temp instead of #1? If not, would this be possible (and
> wanted) to be implemented?

Well, \IfNoValue is expandable so you can carry through


to further stages without any issues (i.e. without needing the \def). 
That's probably not quite what you want, though.

I'll have a think about this.
Joseph Wright