Am Tue, 14 Jul 2015 09:42:13 +0100 schrieb Joseph Wright: > I was thinking of > > \keys_define:nn {test} > { > testa .code:n = {\tl_show:n {#1}}, > testa .value_required:, > testb .code:n = {\tl_show:n {#1}}, > testb .value_required:, > testb .default:n = {} > } > > \keys_set:nn {test} {testa,testb} > > where one might expect to get an error only in the first case. That's > not currently the situation! Hm. My first reaction was that it works as expected. If I explictly require that the *user* gives a value, a *package* default doesn't make sense and shouldn't replace the user action. It is also consistent with the other way round: \documentclass{article} \usepackage{expl3} \begin{document} \ExplSyntaxOn \keys_define:nn {test} { testb .code:n = {#1}, testb .value_forbidden:, testb .default:n = {xxx} } \keys_set:nn {test} {testb} \end{document} -- Ulrike Fischer http://www.troubleshooting-tex.de/