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: Thu, 29 May 2014 20:46:50 -0400
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: 8bit
In-Reply-To: <[log in to unmask]>
Content-Type: text/plain; charset="UTF-8"
From: Jura Pintar <[log in to unmask]>
Parts/Attachments: text/plain (33 lines)
> Wait, how is that not covered by .bool_set:N and .bool_set_inverse:N?
> Doing " turnfooingon .bool_set:N = \l_mymodule_fooing_bool " and "
> turnfooingoff .bool_set_inverse:N = \l_mymodule_fooing_bool " allows the
> user to use the keys turnfooingon and turnfooingoff as you describe.  Well, it
> also allows the user to do weirder things like "turnfooingoff=false" to turn
> fooing on.
> Bruno

You're totally right: it is. I think I let my mind wander a bit when I was 
writing the example... What's actually at issue is whether constructions 
along the lines of
    \mymoduledoclevelsetup{ fooing = activate }
    \mymoduledoclevelsetup{ fooing = deactivate }

should be tacitly encouraged by making

    \keys_define:nn { mymodule }
        fooing              .choice: ,
        fooing/ activate    .bool_set_true:N  = \l_mymodule_fooing_bool ,
        fooing / deactivate .bool_set_false:N = \l_mymodule_fooing_bool

available out of the box, or whether it's better to leave it to package 
authors to use .code:n or some such alternative if they want to get 
this behaviour.