[latex3-commits] [l3svn] 06/06: Allow for empty key modules

noreply at latex-project.org noreply at latex-project.org
Tue Nov 22 11:08:07 CET 2016


This is an automated email from the git hooks/post-receive script.

joseph pushed a commit to branch master
in repository l3svn.

commit 0dfa6c8c83492bd792f034bd1c1e7b8c601148f5
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Tue Nov 22 09:25:47 2016 +0000

    Allow for empty key modules
    
    Perhaps longer-term might be better to switch to always having
    a leading "/", but there still needs to be some setup.
---
 l3kernel/l3keys.dtx              |   14 ++++++++++++--
 l3kernel/testfiles/m3keys001.lvt |   11 +++++++++++
 l3kernel/testfiles/m3keys001.tlg |    8 ++++++++
 3 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/l3kernel/l3keys.dtx b/l3kernel/l3keys.dtx
index f637019..ba7f0f8 100644
--- a/l3kernel/l3keys.dtx
+++ b/l3kernel/l3keys.dtx
@@ -1338,7 +1338,12 @@
       {
         \str_if_eq:nnTF {#3} { . }
           {
-            \tl_set:Nx \l_keys_path_tl { \l_@@_module_tl / #1 }
+            \tl_set:Nx \l_keys_path_tl
+              {
+                \tl_if_empty:NF \l_@@_module_tl
+                  { \l_@@_module_tl  / }
+                #1
+              }
             \tl_set:Nn \l_@@_property_tl { . #2 }
           }
           {
@@ -2140,7 +2145,12 @@
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_set_aux:nnn #1#2#3
   {
-    \tl_set:Nx \l_keys_path_tl { #1 / \@@_remove_spaces:n {#2} }
+    \tl_set:Nx \l_keys_path_tl
+      {
+        \tl_if_blank:nF {#1}
+          { #1 / }
+        \@@_remove_spaces:n {#2}
+      }
     \tl_clear:N \l_@@_module_tl
     \exp_after:wN \@@_find_key_module:w \l_keys_path_tl / \q_stop
     \@@_value_or_default:n {#3}
diff --git a/l3kernel/testfiles/m3keys001.lvt b/l3kernel/testfiles/m3keys001.lvt
index d258e7e..f03f8d1 100644
--- a/l3kernel/testfiles/m3keys001.lvt
+++ b/l3kernel/testfiles/m3keys001.lvt
@@ -285,4 +285,15 @@
       }
   }
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\TEST { Empty~module }
+  {
+    \keys_define:nn { }
+      {
+        key .code:n = \tl_show:N \l_keys_path_tl
+      }
+    \keys_set:nn { } { key }
+  }
+
 \END
diff --git a/l3kernel/testfiles/m3keys001.tlg b/l3kernel/testfiles/m3keys001.tlg
index e4aad1c..9f785b2 100644
--- a/l3kernel/testfiles/m3keys001.tlg
+++ b/l3kernel/testfiles/m3keys001.tlg
@@ -237,3 +237,11 @@ l. ...  }
 | LaTeX did not find a '.' to indicate the start of a property.
 |...............................................
 ============================================================
+============================================================
+TEST 11: Empty module
+============================================================
+Defining key key on line ...
+> \l_keys_path_tl=key.
+<recently read> }
+l. ...  }
+============================================================

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the latex3-commits mailing list