Sender: |
|
Date: |
Fri, 24 Sep 2010 08:39:46 +0100 |
Reply-To: |
|
Message-ID: |
|
Subject: |
|
MIME-Version: |
1.0 |
Content-Transfer-Encoding: |
8bit |
In-Reply-To: |
|
Content-Type: |
text/plain; charset=UTF-8; format=flowed |
From: |
|
Parts/Attachments: |
|
|
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
{\IfNoValueTF{#1}{#2}{#1}}
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
|
|
|