Sender: |
|
Date: |
Thu, 11 Jul 2013 22:21:57 +0100 |
Reply-To: |
|
Message-ID: |
|
Subject: |
|
MIME-Version: |
1.0 |
Content-Transfer-Encoding: |
7bit |
In-Reply-To: |
|
Content-Type: |
text/plain; charset=windows-1252 |
From: |
|
Parts/Attachments: |
|
|
On 11/07/2013 22:13, Joseph Wright wrote:
> Looks at what seems to be needed, an ('opt-in') interface such as
>
> \keys_define:nn { module }
> {
> key-one .code:n = { \tl_show:n { key-one } },
> key-one .group:n = { a },
> key-two .code:n = { \tl_show:n { key-two } },
> }
> \keys_set_grouped:nnn { module } { a }
> { key-one = value , key-two = value }
>
> is not unreasonable. This allows each key to be in exactly one group:
> doing multiple groups is possible but more tricky. (Code follows a bit
> later.) My thinking with this is that you can simply do a 'filtered' or
> 'grouped' setting without having to track when filtering is on/off.
>
> The above interface leaves open a few questions:
>
> - How is nesting handled? Does \keys_set:nn within
> \keys_set_grouped:nnn respect groups? Does
> \keys_set_grouped:nnn within \keys_set_grouped:nnn
> work in a union or intersection way?
>
> - Do unknown keys raise an error, or are they ignored as they
> are not in any group?
Also
- Do unused options need to be collected/available?
--
Joseph Wright
|
|
|