LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

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

Print Reply
Sender: Mailing list for the LaTeX3 project <[log in to unmask]>
Date: Sat, 27 Aug 2011 22:22:36 +0100
Reply-To: Mailing list for the LaTeX3 project <[log in to unmask]>
Message-ID: <[log in to unmask]>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
In-Reply-To: <[log in to unmask]>
Content-Type: text/plain; charset=ISO-8859-1
From: Joseph Wright <[log in to unmask]>
Parts/Attachments: text/plain (40 lines)
On 27/08/2011 13:16, Bruno Le Floch wrote:
> On 8/27/11, Will Robertson <[log in to unmask]> wrote:
>> On 26/08/2011, at 3:04 AM, Ulrike Fischer wrote:
>>> Now I want to define a "mirrored" key
>>> no-sym
>>> so that "no-sym = true" sets  \l_chessfss_sym_bool to false.
>>> Is there some easy way?
>> Not directly as far as I know (using
>>   .code:n = { \bool_set_false:N \l_chessfss_sym_bool }
>> works of course but it's not the best interface), so I think this would be a
>> good addition. (I seem to remember kvoptions has a similar feature.) Which
>> do you think is best to name it?
>>   no-sym .bool_unset:N = \l_chessfss_sym_bool
>>   no-sym .bool_set_false:N = \l_chessfss_sym_bool
>>   no-sym .bool_set_reverse:N = \l_chessfss_sym_bool
> I find .bool_set_reverse:N more descriptive (cf. \reverse_if:N), as
> no-sym = false is valid user input, I guess?

Early-on in the life of l3keys, we did have '.bool_set_<something>:N'
(where I forget exactly what <something> was). The reasons we did not
keep it then were:
 a) The idea was to keep things simply initially;
 b) The other variable-setting functions all mirror the base expl3

Now, boolean keys are a bit odd, as they are actually a special kind of
choice (that's how they are implemented). So it may well be best to
provide this ability. I guess I favour '.bool_set_inverse:N'.
Joseph Wright