texlive[68775] Master/texmf-dist: siunitx (6nov23)

commits+karl at tug.org commits+karl at tug.org
Thu Nov 9 23:16:35 CET 2023


Revision: 68775
          https://tug.org/svn/texlive?view=revision&revision=68775
Author:   karl
Date:     2023-11-09 23:16:35 +0100 (Thu, 09 Nov 2023)
Log Message:
-----------
siunitx (6nov23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/siunitx/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/siunitx/siunitx-code.pdf
    trunk/Master/texmf-dist/doc/latex/siunitx/siunitx.pdf
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-angle.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-complex.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-compound.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-emulation.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-number.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-print.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-quantity.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-symbol.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-table.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx-unit.dtx
    trunk/Master/texmf-dist/source/latex/siunitx/siunitx.dtx
    trunk/Master/texmf-dist/tex/latex/siunitx/siunitx.sty

Modified: trunk/Master/texmf-dist/doc/latex/siunitx/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/siunitx/CHANGELOG.md	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/doc/latex/siunitx/CHANGELOG.md	2023-11-09 22:16:35 UTC (rev 68775)
@@ -7,6 +7,24 @@
 
 ## [Unreleased]
 
+## [v3.3.8] - 2023-11-06
+
+### Deprecated
+- `x`-type variants
+  - `\siunitx_angle:x`
+  - `\siunitx_angle:xxx`
+  - `\siunitx_complex_number:x`
+  - `\siunitx_complex_quantity:xn`
+  - `\siunitx_print_number:x`
+  - `\siunitx_quantity_print:xV`
+  - `\siunitx_declare_prefix:Nnx`
+  - `\siunitx_declare_unit:Nx`
+  - `\siunitx_declare_unit:Nxn`
+
+### Fixed
+- Printing of `1` when `print-unity-mantissa = false` (see issue
+  [\#700](https://github.com/josephwright/siunitx/issues/700))
+
 ## [v3.3.7] - 2023-10-07
 
 ### Fixed
@@ -2025,7 +2043,8 @@
 ### Added
 - First public testing release (as `si`)
 
-[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.3.7...HEAD
+[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.3.8...HEAD
+[v3.3.8]: https://github.com/josephwright/siunitx/compare/v3.3.7...v3.3.8
 [v3.3.7]: https://github.com/josephwright/siunitx/compare/v3.3.6...v3.3.7
 [v3.3.6]: https://github.com/josephwright/siunitx/compare/v3.3.5...v3.3.6
 [v3.3.5]: https://github.com/josephwright/siunitx/compare/v3.3.4...v3.3.5

Modified: trunk/Master/texmf-dist/doc/latex/siunitx/siunitx-code.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/siunitx/siunitx.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-angle.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-angle.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-angle.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -64,8 +64,8 @@
 %
 % \begin{function}
 %   {
-%     \siunitx_angle:n, \siunitx_angle:x,
-%     \siunitx_angle:nnn, \siunitx_angle:xxx
+%     \siunitx_angle:n, \siunitx_angle:e,
+%     \siunitx_angle:nnn, \siunitx_angle:eee
 %   }
 %   \begin{syntax}
 %     \cs{siunitx_angle:n} \Arg{angle}
@@ -240,9 +240,9 @@
 %    \end{macrocode}
 % \end{variable}
 %
-% \begin{macro}{\siunitx_angle:n, \siunitx_angle:x, \@@_angle:n}
-% \begin{macro}{\siunitx_angle:nnn, \siunitx_angle:xxx}
-% \begin{macro}{\@@_arc_convert:n, \@@_arc_convert:x}
+% \begin{macro}{\siunitx_angle:n, \siunitx_angle:e, \@@_angle:n}
+% \begin{macro}{\siunitx_angle:nnn, \siunitx_angle:eee}
+% \begin{macro}{\@@_arc_convert:n, \@@_arc_convert:e}
 %   The first step here is to force format conversion if required. Going to
 %   a decimal is easy, going to arc format is a bit more painful: avoid
 %   repeating calculations mainly for code readability.
@@ -262,11 +262,11 @@
           }
       }
   }
-\cs_generate_variant:Nn \siunitx_angle:n { x }
+\cs_generate_variant:Nn \siunitx_angle:n { e , x }
 \cs_new_protected:Npn \@@_angle:n #1
   {
     \bool_if:NTF \l_@@_force_arc_bool
-      { \@@_arc_convert:x { \fp_eval:n {#1} } }
+      { \@@_arc_convert:e { \fp_eval:n {#1} } }
       {
         \siunitx_number_parse:nN {#1} \l_@@_degrees_tl
         \siunitx_number_process:NN \l_@@_degrees_tl \l_@@_degrees_tl
@@ -284,7 +284,7 @@
       {
         \bool_if:NTF \l_@@_force_decimal_bool
           {
-            \siunitx_angle:x
+            \siunitx_angle:e
               { \fp_eval:n { #1 + (#2) / 60 + (#3) / 3600 } }
           }
           { \@@_arc_sign:nnn {#1} {#2} {#3} }
@@ -302,10 +302,10 @@
           \l_@@_seconds_tl
       }
   }
-\cs_generate_variant:Nn \siunitx_angle:nnn { xxx }
+\cs_generate_variant:Nn \siunitx_angle:nnn { eee , xxx }
 \cs_new_protected:Npn \@@_arc_convert:n #1
   {
-    \siunitx_angle:xxx
+    \siunitx_angle:eee
       { \fp_eval:n { trunc(#1,0) } }
       { \fp_eval:n { trunc((#1 - trunc(#1,0)) * 60,0) } }
       {
@@ -319,7 +319,7 @@
           }
       }
   }
-\cs_generate_variant:Nn \@@_arc_convert:n { x }
+\cs_generate_variant:Nn \@@_arc_convert:n { e }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-complex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-complex.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-complex.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -66,7 +66,7 @@
 % assumptions concerning \LaTeXe{} commands in the submodule beyond those in the
 % core number and unit submodules.
 %
-% \begin{function}{\siunitx_complex_number:n, \siunitx_complex_number:x}
+% \begin{function}{\siunitx_complex_number:n, \siunitx_complex_number:e}
 %   \begin{syntax}
 %     \cs{siunitx_complex_number:n} \Arg{number}
 %   \end{syntax}
@@ -96,7 +96,7 @@
 % \begin{function}
 %   {
 %     \siunitx_complex_quantity:nn  ,
-%     \siunitx_complex_quantity:xn  ,
+%     \siunitx_complex_quantity:en  ,
 %     \siunitx_complex_quantity:nnn
 %   }
 %   \begin{syntax}
@@ -691,9 +691,9 @@
 %    \end{macrocode}
 % \end{variable}
 %
-% \begin{macro}{\siunitx_complex_number:n, \siunitx_complex_number:x}
+% \begin{macro}{\siunitx_complex_number:n, \siunitx_complex_number:e}
 % \begin{macro}{\siunitx_complex_number:nn, \@@_number:nn}
-% \begin{macro}{\siunitx_complex_quantity:nn, \siunitx_complex_quantity:xn}
+% \begin{macro}{\siunitx_complex_quantity:nn, \siunitx_complex_quantity:en}
 % \begin{macro}{\siunitx_complex_quantity:nnn, \@@_quantity:nnn}
 %   The work here is pretty trivial: only conversion between forms makes
 %   things a bit more intricate.
@@ -722,7 +722,7 @@
           }
       }
   }
-\cs_generate_variant:Nn \siunitx_complex_number:n { x }
+\cs_generate_variant:Nn \siunitx_complex_number:n { e, x }
 \cs_new_protected:Npn \siunitx_complex_number:nn #1#2
   {
     \bool_lazy_or:nnTF
@@ -740,7 +740,7 @@
       { \l_@@_force_cartesian_bool }
       { \l_siunitx_number_parse_bool }
       {
-        \siunitx_complex_number:x
+        \siunitx_complex_number:e
           { \@@_convert_cartesian:nn {#1} {#2} }
       }
       {
@@ -770,7 +770,7 @@
           { \siunitx_quantity:nn {#1} {#2} }
       }
   }
-\cs_generate_variant:Nn \siunitx_complex_quantity:nn { x }
+\cs_generate_variant:Nn \siunitx_complex_quantity:nn { e , x }
 \cs_new_protected:Npn \siunitx_complex_quantity:nnn #1#2#3
   {
     \bool_lazy_or:nnTF
@@ -788,7 +788,7 @@
       { \l_@@_force_cartesian_bool }
       { \l_siunitx_number_parse_bool }
       {
-        \siunitx_complex_quantity:xn
+        \siunitx_complex_quantity:en
           { \@@_convert_cartesian:nn {#1} {#2} }
           {#3}
       }

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-compound.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-compound.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-compound.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -535,7 +535,7 @@
 % \begin{macro}{\siunitx_compound_number:n}
 % \begin{macro}{\@@_format:n}
 % \begin{macro}{\@@_format:nn}
-% \begin{macro}{\@@_format:nnn, \@@_format:xxn}
+% \begin{macro}{\@@_format:nnn, \@@_format:een}
 %   Printing a generic set starts with the question of whether we want to
 %   extract exponents. If we do, then there is the work to do with extraction.
 %   Either way, the printing is handed off to a common function. We do a quick
@@ -546,7 +546,7 @@
     \group_begin:
       \bool_set_false:N \l_@@_unit_bool
       \@@_format:nn {#1} { }
-      \@@_print:N \siunitx_print_number:x
+      \@@_print:N \siunitx_print_number:e
     \group_end:
   }
 \cs_new_protected:Npn \@@_format:nn #1#2
@@ -554,7 +554,7 @@
     \seq_clear:N \l_@@_tmp_seq
     \bool_if:NTF \l_siunitx_number_parse_bool
       {
-        \@@_format:xxn
+        \@@_format:een
           { \tl_head:n {#1} }
           { \tl_tail:n {#1} }
           {#2}
@@ -575,7 +575,7 @@
       }
       { \@@_format_aux:nnn {#1} {#2} {#3} }
   }
-\cs_generate_variant:Nn \@@_format:nnn { xx }
+\cs_generate_variant:Nn \@@_format:nnn { ee }
 \cs_new_protected:Npn \@@_format_aux:nnn #1#2#3
   {
     \siunitx_number_parse:nN {#1} \l_@@_tmp_tl
@@ -855,7 +855,7 @@
     \str_if_eq:VnT \l_siunitx_quantity_prefix_mode_tl { combine-exponent }
       { \tl_clear:N \l_@@_exp_tl }
     \bool_if:NTF \l_@@_unit_repeat_bool
-      { \@@_print:N \@@_print_quantity:x }
+      { \@@_print:N \@@_print_quantity:e }
       {
         \bool_lazy_and:nnTF
           { \l_@@_unit_bracket_bool }
@@ -862,10 +862,10 @@
           { \tl_if_empty_p:N \l_@@_exp_tl }
           {
             \siunitx_print_number:V \l_@@_bracket_open_tl
-            \@@_print:N \siunitx_print_number:x
+            \@@_print:N \siunitx_print_number:e
             \siunitx_print_number:V \l_@@_bracket_close_tl
           }
-          { \@@_print:N \siunitx_print_number:x }
+          { \@@_print:N \siunitx_print_number:e }
         \@@_print_quantity:n { \c_empty_tl }
       }
   }
@@ -874,11 +874,11 @@
 % \end{macro}
 %
 % \begin{macro}{\@@_print:N}
-% \begin{macro}{\@@_print:nnN, \@@_print:nVN, \@@_print:xnN, \@@_print:xxN}
-% \begin{macro}{\@@_print:nnnN, \@@_print:xnnN}
+% \begin{macro}{\@@_print:nnN, \@@_print:nVN, \@@_print:enN, \@@_print:eeN}
+% \begin{macro}{\@@_print:nnnN, \@@_print:ennN}
 % \begin{macro}{\@@_print_aux:n}
 % \begin{macro}{\@@_print_aux:nn}
-% \begin{macro}{\@@_print_quantity:n, \@@_print_quantity:x}
+% \begin{macro}{\@@_print_quantity:n, \@@_print_quantity:e}
 % \begin{macro}
 %   {
 %     \@@_print_boundary:n, \@@_print_boundary:V,
@@ -894,7 +894,7 @@
       { \l_@@_exp_bracket_bool }
       { ! \tl_if_empty_p:N \l_@@_exp_tl }
       {
-        \@@_print:xxN
+        \@@_print:eeN
           { \exp_not:V \l_@@_bracket_open_tl }
           {
             \exp_not:V \l_@@_bracket_close_tl
@@ -906,10 +906,10 @@
   }
 \cs_new_protected:Npn \@@_print:nnN #1#2#3
   {
-    \@@_print:xnnN
+    \@@_print:ennN
       { \seq_count:N \l_@@_tmp_seq } {#1} {#2} #3
   }
-\cs_generate_variant:Nn \@@_print:nnN { nV , x , xx }
+\cs_generate_variant:Nn \@@_print:nnN { nV , e , ee }
 %    \end{macrocode}
 %   A rather long auxiliary as we want a way to have the brackets/exponent
 %   available. The actual flow is simple enough: see how many entries there are
@@ -955,7 +955,7 @@
         \@@_print_boundary:V \l_@@_boundary_close_tl
       }
   }
-\cs_generate_variant:Nn \@@_print:nnnN { x }
+\cs_generate_variant:Nn \@@_print:nnnN { e }
 \cs_new_protected:Npn \@@_print_aux:n #1 { }
 \cs_new_protected:Npn \@@_print_aux:nn #1#2
   {
@@ -991,7 +991,7 @@
   }
 \cs_new_protected:Npn \@@_print_quantity:n #1
   { \siunitx_quantity_print:nV {#1} \l_@@_unit_tl }
-\cs_generate_variant:Nn  \@@_print_quantity:n { x }
+\cs_generate_variant:Nn  \@@_print_quantity:n { e }
 \cs_new_protected:Npn \@@_print_boundary:n #1
   {
     \tl_if_blank:nF {#1}
@@ -1191,7 +1191,7 @@
 % \begin{macro}{\siunitx_number_product:n}
 % \begin{macro}{\siunitx_quantity_product:nn}
 % \begin{macro}{\@@_aux:}
-% \begin{macro}{\@@_aux:n, \@@_aux:x}
+% \begin{macro}{\@@_aux:n, \@@_aux:e}
 %   Simply recover the settings and use as a list.
 %    \begin{macrocode}
 \cs_new_protected:Npn \siunitx_number_product:n #1
@@ -1211,8 +1211,8 @@
 \cs_new_protected:Npn \@@_aux:
   {
     \bool_if:NTF \l_@@_phrase_bool
-      { \@@_aux:x { \exp_not:V \l_@@_phrase_tl } }
-      { \@@_aux:x { { } \exp_not:V \l_@@_symbol_tl { } } }
+      { \@@_aux:e { \exp_not:V \l_@@_phrase_tl } }
+      { \@@_aux:e { { } \exp_not:V \l_@@_symbol_tl { } } }
   }
 \cs_new_protected:Npn \@@_aux:n #1
   {
@@ -1235,7 +1235,7 @@
         compound-units                = \l_@@_units_tl
       }
   }
-\cs_generate_variant:Nn \@@_aux:n { x }
+\cs_generate_variant:Nn \@@_aux:n { e }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-emulation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-emulation.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-emulation.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -1050,7 +1050,7 @@
   {
     \quark_if_recursion_tail_stop:N #1
     \bool_new:c { g_@@_unit_warning_ \token_to_str:N #1 _bool }
-    \siunitx_declare_unit:Nx #1
+    \siunitx_declare_unit:Ne #1
       {
         \exp_not:N \bool_if:NF
           \exp_not:c { g_@@_unit_warning_ \token_to_str:N #1 _bool  }

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-number.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-number.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-number.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -1777,7 +1777,7 @@
 % \begin{macro}
 %   {
 %     \@@_parse_uncert_marker:nnnnnnN ,
-%     \@@_parse_uncert_marker:xnnnnnN
+%     \@@_parse_uncert_marker:ennnnnN
 %   }
 % \begin{macro}{\@@_parse_uncert_after:N}
 %   Parsing a combined uncertainty has a very restricted range of allowed
@@ -1954,7 +1954,7 @@
   }
 \cs_new_protected:Npn \@@_parse_uncert_marker:nnnnnN #1#2#3#4#5#6
   {
-    \@@_parse_uncert_marker:xnnnnnN
+    \@@_parse_uncert_marker:ennnnnN
       { \int_eval:n { \tl_count:n {#4} } }
       {#1} {#2} {#3} {#4} {#5} #6
   }
@@ -1990,7 +1990,7 @@
       }
         #5#6#7
   }
-\cs_generate_variant:Nn \@@_parse_uncert_marker:nnnnnnN { x }
+\cs_generate_variant:Nn \@@_parse_uncert_marker:nnnnnnN { e }
 %    \end{macrocode}
 %   At the end of collection, we can either start another one or be done:
 %   either way we move the data around.
@@ -4148,7 +4148,11 @@
                 { ! \str_if_eq_p:nn { #1 . #2 } { 1. } }
                 {
                   \bool_lazy_and_p:nn
-                    { \str_if_eq_p:nn {#3} { 0 } }
+                    {
+                      \bool_lazy_or_p:nn
+                        { \tl_if_blank_p:n {#3} }
+                        { \str_if_eq_p:nn {#3} { 0 } }
+                    }
                     { ! \l_@@_zero_exponent_bool }
                 }
                 {

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-print.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-print.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-print.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -105,9 +105,9 @@
 % \begin{function}
 %   {
 %     \siunitx_print_number:n, \siunitx_print_number:V,
-%       \siunitx_print_number:x,
-%     \siunitx_print_unit:n, \siunitx_print_unit:V, \siunitx_print_unit:o,
-%       \siunitx_print_unit:x
+%       \siunitx_print_number:e,
+%     \siunitx_print_unit:n, \siunitx_print_unit:V, \siunitx_print_unit:e,
+%       \siunitx_print_unit:o
 %   }
 %   \begin{syntax}
 %     \cs{siunitx_print_number:n} \Arg{material}
@@ -458,9 +458,9 @@
 % \begin{macro}
 %   {
 %     \siunitx_print_number:n, \siunitx_print_number:V,
-%       \siunitx_print_number:x,
-%     \siunitx_print_unit:n, \siunitx_print_unit:V, \siunitx_print_unit:o,
-%       \siunitx_print_unit:x
+%       \siunitx_print_number:e,
+%     \siunitx_print_unit:n, \siunitx_print_unit:V, \siunitx_print_unit:e,
+%       \siunitx_print_unit:o
 %   }
 % \begin{macro}{\@@_aux:nn}
 %   The main printing function doesn't actually need to do very much: just set
@@ -471,10 +471,10 @@
 %    \begin{macrocode}
 \cs_new_protected:Npn \siunitx_print_number:n #1
   { \@@_aux:nn { number } {#1} }
-\cs_generate_variant:Nn \siunitx_print_number:n { V , x }
+\cs_generate_variant:Nn \siunitx_print_number:n { V , e , x }
 \cs_new_protected:Npn \siunitx_print_unit:n #1
   { \@@_aux:nn { unit } {#1} }
-\cs_generate_variant:Nn \siunitx_print_unit:n { V , o , x }
+\cs_generate_variant:Nn \siunitx_print_unit:n { V , e , o , x }
 \cs_new_protected:Npn \@@_aux:nn #1#2
   {
     \tl_if_empty:oF {#2}

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-quantity.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-quantity.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-quantity.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -78,7 +78,7 @@
 % \begin{function}
 %   {
 %     \siunitx_quantity_print:nn, \siunitx_quantity_print:nV,
-%     \siunitx_quantity_print:VV, \siunitx_quantity_print:xV
+%     \siunitx_quantity_print:VV, \siunitx_quantity_print:eV
 %   }
 %   \begin{syntax}
 %     \cs{siunitx_quantity_print:nn} \Arg{number} \Arg{unit}
@@ -311,7 +311,7 @@
       {
         \bool_if:NTF \l_@@_uncert_bracket_bool
           {
-            \siunitx_quantity_print:xV
+            \siunitx_quantity_print:eV
               {
                 \exp_not:n {#2}
                 \exp_not:V \l_@@_bracket_open_tl
@@ -376,7 +376,7 @@
 % \begin{macro}
 %   {
 %     \siunitx_quantity_print:nn, \siunitx_quantity_print:nV,
-%     \siunitx_quantity_print:VV, \siunitx_quantity_print:xV
+%     \siunitx_quantity_print:VV, \siunitx_quantity_print:eV
 %   }
 %   For printing a single part of a quantity. This is needed for compound
 %   quantities and so is public: that's also the reason for passing both
@@ -403,7 +403,7 @@
           { \siunitx_print_unit:o { \use_none:n #2 } }
       }
   }
-\cs_generate_variant:Nn \siunitx_quantity_print:nn { nV , VV , xV }
+\cs_generate_variant:Nn \siunitx_quantity_print:nn { nV , VV , eV , xV }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -437,13 +437,13 @@
 %   in quantities. This is done here as it avoids a dependency in
 %   \pkg{siunitx-unit} on options it does not contain.
 %    \begin{macrocode}
-\siunitx_declare_unit:Nxn \arcminute
+\siunitx_declare_unit:Nen \arcminute
   { \@@_non_latin:n { "02B9 } }
   { quantity-product = { } }
-\siunitx_declare_unit:Nxn \arcsecond
+\siunitx_declare_unit:Nen \arcsecond
   { \@@_non_latin:n { "02BA } }
   { quantity-product = { } }
-\siunitx_declare_unit:Nxn \degree
+\siunitx_declare_unit:Nen \degree
   { \@@_non_latin:n { "00B0 } }
   { quantity-product = { } }
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-symbol.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-symbol.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-symbol.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -159,7 +159,7 @@
 %    \begin{macrocode}
     \@@_if_replace:NnT \degree { "00B0 }
       {
-        \siunitx_declare_unit:Nxn \degree
+        \siunitx_declare_unit:Nen \degree
           {
             \exp_not:N \ifmmode
               \@ifpackageloaded { unicode-math }
@@ -189,7 +189,7 @@
       \str_if_eq:VVTF \l_@@_tmpa_tl \l_@@_tmpb_tl
         {
           \group_end:
-          \siunitx_declare_unit:Nx \degreeCelsius
+          \siunitx_declare_unit:Ne \degreeCelsius
             {
               \exp_not:N \ifmmode
                 \@ifpackageloaded { unicode-math }
@@ -225,7 +225,7 @@
             \exp_not:N \text
               { \exp_not:N \ensuremath { \exp_not:V \l_@@_tmpa_tl } }
           }
-        \siunitx_declare_unit:Nx \ohm
+        \siunitx_declare_unit:Ne \ohm
           {
             \@ifpackageloaded { fourier }
               {
@@ -260,7 +260,7 @@
 %    \begin{macrocode}
     \@@_if_replace:NnT \micro { "03BC }
       {
-        \siunitx_declare_prefix:Nnx \micro { -6 }
+        \siunitx_declare_prefix:Nne \micro { -6 }
           {
             \exp_not:N \text
               {
@@ -286,7 +286,7 @@
   {
     \@ifpackageloaded { hyperref }
       {
-        \ExpandArgs { x } \pdfstringdefDisableCommands
+        \ExpandArgs { e } \pdfstringdefDisableCommands
           {
             \cs_set_eq:NN \siunitx_print_text:n \exp_not:N \use:n
             \siunitx_declare_unit:Nn \exp_not:N \ohm

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-table.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-table.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-table.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -1263,7 +1263,7 @@
       { \siunitx_print_number:n { #1#2#3 } }
     \hbox_set:Nn \l_@@_decimal_box
       {
-        \siunitx_print_number:x
+        \siunitx_print_number:e
           { \@@_print_marker_aux:w #4 \q_stop }
       }
     \@@_center_marker:

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx-unit.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx-unit.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx-unit.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -191,7 +191,7 @@
 %
 % \section{Defining symbolic units}
 %
-% \begin{function}{\siunitx_declare_prefix:Nnn, \siunitx_declare_prefix:Nnx}
+% \begin{function}{\siunitx_declare_prefix:Nnn, \siunitx_declare_prefix:Nne}
 %   \begin{syntax}
 %     \cs{siunitx_declare_prefix:Nnn} \meta{prefix} \Arg{power} \Arg{symbol}
 %   \end{syntax}
@@ -248,9 +248,9 @@
 % \begin{function}
 %   {
 %     \siunitx_declare_unit:Nn,
-%     \siunitx_declare_unit:Nx,
+%     \siunitx_declare_unit:Ne,
 %     \siunitx_declare_unit:Nnn,
-%     \siunitx_declare_unit:Nxn
+%     \siunitx_declare_unit:Nen
 %   }
 %   \begin{syntax}
 %     \cs{siunitx_declare_unit:Nn}  \meta{unit} \Arg{meaning}
@@ -868,7 +868,7 @@
 % \end{macro}
 %
 % \begin{macro}{\siunitx_declare_prefix:Nn}
-% \begin{macro}{\siunitx_declare_prefix:Nnn, \siunitx_declare_prefix:Nnx}
+% \begin{macro}{\siunitx_declare_prefix:Nnn, \siunitx_declare_prefix:Nne}
 % \begin{variable}
 %   {\l_@@_prefixes_forward_prop, \l_@@_prefixes_reverse_prop}
 %   For prefixes there are a couple of options. In all cases, the basic
@@ -890,7 +890,7 @@
     \prop_put:Nnn \l_@@_prefixes_forward_prop {#3} {#2}
     \prop_put:Nnn \l_@@_prefixes_reverse_prop {#2} {#3}
   }
-\cs_generate_variant:Nn \siunitx_declare_prefix:Nnn { Nnx }
+\cs_generate_variant:Nn \siunitx_declare_prefix:Nnn { Nne , Nnx }
 \prop_new:N \l_@@_prefixes_forward_prop
 \prop_new:N \l_@@_prefixes_reverse_prop
 %    \end{macrocode}
@@ -911,14 +911,14 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\siunitx_declare_unit:Nn, \siunitx_declare_unit:Nx}
-% \begin{macro}{\siunitx_declare_unit:Nnn, \siunitx_declare_unit:Nxn}
+% \begin{macro}{\siunitx_declare_unit:Nn, \siunitx_declare_unit:Ne}
+% \begin{macro}{\siunitx_declare_unit:Nnn, \siunitx_declare_unit:Nen}
 %   For the unit parsing, allowing for variations in definition order requires
 %   that a test is made for the output of each unit at point of use.
 %    \begin{macrocode}
 \cs_new_protected:Npn \siunitx_declare_unit:Nn #1#2
   { \siunitx_declare_unit:Nnn #1 {#2} { } }
-\cs_generate_variant:Nn \siunitx_declare_unit:Nn { Nx }
+\cs_generate_variant:Nn \siunitx_declare_unit:Nn { Ne , Nx }
 \cs_new_protected:Npn \siunitx_declare_unit:Nnn #1#2#3
   {
     \seq_put_right:Nn \l_siunitx_unit_seq {#1}
@@ -933,7 +933,7 @@
     \tl_if_empty:nF {#3}
       { \tl_set:cn { l_@@_options_ \token_to_str:N #1 _tl } {#3} }
   }
-\cs_generate_variant:Nn \siunitx_declare_unit:Nnn { Nx }
+\cs_generate_variant:Nn \siunitx_declare_unit:Nnn { Ne , Nx }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -2718,7 +2718,7 @@
 \siunitx_declare_prefix:Nnn \femto  { -15 } { f }
 \siunitx_declare_prefix:Nnn \pico   { -12 } { p }
 \siunitx_declare_prefix:Nnn \nano   {  -9 } { n }
-\siunitx_declare_prefix:Nnx \micro  { -6 } { \@@_non_latin:n { "03BC } }
+\siunitx_declare_prefix:Nne \micro  { -6 } { \@@_non_latin:n { "03BC } }
 \siunitx_declare_prefix:Nnn \milli  { -3 } { m }
 \siunitx_declare_prefix:Nnn \centi  { -2 } { c }
 \siunitx_declare_prefix:Nnn \deci   { -1 } { d }
@@ -2775,7 +2775,7 @@
 %    Named derived units: first half of alphabet.
 %    \begin{macrocode}
 \siunitx_declare_unit:Nn \becquerel { Bq }
-\siunitx_declare_unit:Nx \degreeCelsius { \@@_non_latin:n { "00B0 } C }
+\siunitx_declare_unit:Ne \degreeCelsius { \@@_non_latin:n { "00B0 } C }
 \siunitx_declare_unit:Nn \coulomb   { C }
 \siunitx_declare_unit:Nn \farad     { F }
 \siunitx_declare_unit:Nn \gray      { Gy }
@@ -2804,7 +2804,7 @@
 %    Named derived units: second half of alphabet.
 %    \begin{macrocode}
 \siunitx_declare_unit:Nn \newton    { N }
-\siunitx_declare_unit:Nx \ohm       { \@@_non_latin:n { "2126 } }
+\siunitx_declare_unit:Ne \ohm       { \@@_non_latin:n { "2126 } }
 \siunitx_declare_unit:Nn \pascal    { Pa }
 \siunitx_declare_unit:Nn \radian    { rad }
 \siunitx_declare_unit:Nn \siemens   { S }
@@ -2859,9 +2859,9 @@
 %  }
 %   Arc units: again, non-\acro{SI}, but accepted for general use.
 %    \begin{macrocode}
-\siunitx_declare_unit:Nx \arcminute { \@@_non_latin:n { "02B9 } }
-\siunitx_declare_unit:Nx \arcsecond { \@@_non_latin:n { "02BA } }
-\siunitx_declare_unit:Nx \degree { \@@_non_latin:n { "00B0 } }
+\siunitx_declare_unit:Ne \arcminute { \@@_non_latin:n { "02B9 } }
+\siunitx_declare_unit:Ne \arcsecond { \@@_non_latin:n { "02BA } }
+\siunitx_declare_unit:Ne \degree { \@@_non_latin:n { "00B0 } }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -2868,7 +2868,7 @@
 % \begin{macro}{\percent}
 %   For percent, the raw character is the most flexible way of handling output.
 %    \begin{macrocode}
-\siunitx_declare_unit:Nx \percent { \cs_to_str:N \% }
+\siunitx_declare_unit:Ne \percent { \cs_to_str:N \% }
 %    \end{macrocode}
 % \end{macro}
 %

Modified: trunk/Master/texmf-dist/source/latex/siunitx/siunitx.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/siunitx/siunitx.dtx	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/source/latex/siunitx/siunitx.dtx	2023-11-09 22:16:35 UTC (rev 68775)
@@ -121,7 +121,7 @@
 %
 % Identify the package and give the over all version information.
 %    \begin{macrocode}
-\ProvidesExplPackage {siunitx} {2023-10-07} {3.3.7}
+\ProvidesExplPackage {siunitx} {2023-11-06} {3.3.8}
   {A comprehensive (SI) units package}
 %    \end{macrocode}
 %

Modified: trunk/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/siunitx/siunitx.sty	2023-11-09 22:16:24 UTC (rev 68774)
+++ trunk/Master/texmf-dist/tex/latex/siunitx/siunitx.sty	2023-11-09 22:16:35 UTC (rev 68775)
@@ -41,7 +41,7 @@
       }%
     \endinput
   }%
-\ProvidesExplPackage {siunitx} {2023-10-07} {3.3.7}
+\ProvidesExplPackage {siunitx} {2023-11-06} {3.3.8}
   {A comprehensive (SI) units package}
 \msg_new:nnnn { siunitx } { incompatible-package }
   { Package~'#1'~incompatible. }
@@ -772,7 +772,7 @@
   }
 \cs_new_protected:Npn \__siunitx_number_parse_uncert_marker:nnnnnN #1#2#3#4#5#6
   {
-    \__siunitx_number_parse_uncert_marker:xnnnnnN
+    \__siunitx_number_parse_uncert_marker:ennnnnN
       { \int_eval:n { \tl_count:n {#4} } }
       {#1} {#2} {#3} {#4} {#5} #6
   }
@@ -808,7 +808,7 @@
       }
         #5#6#7
   }
-\cs_generate_variant:Nn \__siunitx_number_parse_uncert_marker:nnnnnnN { x }
+\cs_generate_variant:Nn \__siunitx_number_parse_uncert_marker:nnnnnnN { e }
 \cs_new_protected:Npn \__siunitx_number_parse_uncert_after:N #1
   {
     \tl_set:Nx \l__siunitx_number_uncert_tl
@@ -2265,7 +2265,11 @@
                 { ! \str_if_eq_p:nn { #1 . #2 } { 1. } }
                 {
                   \bool_lazy_and_p:nn
-                    { \str_if_eq_p:nn {#3} { 0 } }
+                    {
+                      \bool_lazy_or_p:nn
+                        { \tl_if_blank_p:n {#3} }
+                        { \str_if_eq_p:nn {#3} { 0 } }
+                    }
                     { ! \l__siunitx_number_zero_exponent_bool }
                 }
                 {
@@ -2907,11 +2911,11 @@
           }
       }
   }
-\cs_generate_variant:Nn \siunitx_angle:n { x }
+\cs_generate_variant:Nn \siunitx_angle:n { e , x }
 \cs_new_protected:Npn \__siunitx_angle_angle:n #1
   {
     \bool_if:NTF \l__siunitx_angle_force_arc_bool
-      { \__siunitx_angle_arc_convert:x { \fp_eval:n {#1} } }
+      { \__siunitx_angle_arc_convert:e { \fp_eval:n {#1} } }
       {
         \siunitx_number_parse:nN {#1} \l__siunitx_angle_degrees_tl
         \siunitx_number_process:NN \l__siunitx_angle_degrees_tl \l__siunitx_angle_degrees_tl
@@ -2929,7 +2933,7 @@
       {
         \bool_if:NTF \l__siunitx_angle_force_decimal_bool
           {
-            \siunitx_angle:x
+            \siunitx_angle:e
               { \fp_eval:n { #1 + (#2) / 60 + (#3) / 3600 } }
           }
           { \__siunitx_angle_arc_sign:nnn {#1} {#2} {#3} }
@@ -2947,10 +2951,10 @@
           \l__siunitx_angle_seconds_tl
       }
   }
-\cs_generate_variant:Nn \siunitx_angle:nnn { xxx }
+\cs_generate_variant:Nn \siunitx_angle:nnn { eee , xxx }
 \cs_new_protected:Npn \__siunitx_angle_arc_convert:n #1
   {
-    \siunitx_angle:xxx
+    \siunitx_angle:eee
       { \fp_eval:n { trunc(#1,0) } }
       { \fp_eval:n { trunc((#1 - trunc(#1,0)) * 60,0) } }
       {
@@ -2964,7 +2968,7 @@
           }
       }
   }
-\cs_generate_variant:Nn \__siunitx_angle_arc_convert:n { x }
+\cs_generate_variant:Nn \__siunitx_angle_arc_convert:n { e }
 \tl_new:N \l__siunitx_angle_degrees_tl
 \tl_new:N \l__siunitx_angle_minutes_tl
 \tl_new:N \l__siunitx_angle_seconds_tl
@@ -3516,7 +3520,7 @@
           }
       }
   }
-\cs_generate_variant:Nn \siunitx_complex_number:n { x }
+\cs_generate_variant:Nn \siunitx_complex_number:n { e, x }
 \cs_new_protected:Npn \siunitx_complex_number:nn #1#2
   {
     \bool_lazy_or:nnTF
@@ -3534,7 +3538,7 @@
       { \l__siunitx_complex_force_cartesian_bool }
       { \l_siunitx_number_parse_bool }
       {
-        \siunitx_complex_number:x
+        \siunitx_complex_number:e
           { \__siunitx_complex_convert_cartesian:nn {#1} {#2} }
       }
       {
@@ -3564,7 +3568,7 @@
           { \siunitx_quantity:nn {#1} {#2} }
       }
   }
-\cs_generate_variant:Nn \siunitx_complex_quantity:nn { x }
+\cs_generate_variant:Nn \siunitx_complex_quantity:nn { e , x }
 \cs_new_protected:Npn \siunitx_complex_quantity:nnn #1#2#3
   {
     \bool_lazy_or:nnTF
@@ -3582,7 +3586,7 @@
       { \l__siunitx_complex_force_cartesian_bool }
       { \l_siunitx_number_parse_bool }
       {
-        \siunitx_complex_quantity:xn
+        \siunitx_complex_quantity:en
           { \__siunitx_complex_convert_cartesian:nn {#1} {#2} }
           {#3}
       }
@@ -4008,7 +4012,7 @@
     \group_begin:
       \bool_set_false:N \l__siunitx_compound_unit_bool
       \__siunitx_compound_format:nn {#1} { }
-      \__siunitx_compound_print:N \siunitx_print_number:x
+      \__siunitx_compound_print:N \siunitx_print_number:e
     \group_end:
   }
 \cs_new_protected:Npn \__siunitx_compound_format:nn #1#2
@@ -4016,7 +4020,7 @@
     \seq_clear:N \l__siunitx_compound_tmp_seq
     \bool_if:NTF \l_siunitx_number_parse_bool
       {
-        \__siunitx_compound_format:xxn
+        \__siunitx_compound_format:een
           { \tl_head:n {#1} }
           { \tl_tail:n {#1} }
           {#2}
@@ -4032,7 +4036,7 @@
       }
       { \__siunitx_compound_format_aux:nnn {#1} {#2} {#3} }
   }
-\cs_generate_variant:Nn \__siunitx_compound_format:nnn { xx }
+\cs_generate_variant:Nn \__siunitx_compound_format:nnn { ee }
 \cs_new_protected:Npn \__siunitx_compound_format_aux:nnn #1#2#3
   {
     \siunitx_number_parse:nN {#1} \l__siunitx_compound_tmp_tl
@@ -4235,7 +4239,7 @@
     \str_if_eq:VnT \l_siunitx_quantity_prefix_mode_tl { combine-exponent }
       { \tl_clear:N \l__siunitx_compound_exp_tl }
     \bool_if:NTF \l__siunitx_compound_unit_repeat_bool
-      { \__siunitx_compound_print:N \__siunitx_compound_print_quantity:x }
+      { \__siunitx_compound_print:N \__siunitx_compound_print_quantity:e }
       {
         \bool_lazy_and:nnTF
           { \l__siunitx_compound_unit_bracket_bool }
@@ -4242,10 +4246,10 @@
           { \tl_if_empty_p:N \l__siunitx_compound_exp_tl }
           {
             \siunitx_print_number:V \l__siunitx_compound_bracket_open_tl
-            \__siunitx_compound_print:N \siunitx_print_number:x
+            \__siunitx_compound_print:N \siunitx_print_number:e
             \siunitx_print_number:V \l__siunitx_compound_bracket_close_tl
           }
-          { \__siunitx_compound_print:N \siunitx_print_number:x }
+          { \__siunitx_compound_print:N \siunitx_print_number:e }
         \__siunitx_compound_print_quantity:n { \c_empty_tl }
       }
   }
@@ -4255,7 +4259,7 @@
       { \l__siunitx_compound_exp_bracket_bool }
       { ! \tl_if_empty_p:N \l__siunitx_compound_exp_tl }
       {
-        \__siunitx_compound_print:xxN
+        \__siunitx_compound_print:eeN
           { \exp_not:V \l__siunitx_compound_bracket_open_tl }
           {
             \exp_not:V \l__siunitx_compound_bracket_close_tl
@@ -4267,10 +4271,10 @@
   }
 \cs_new_protected:Npn \__siunitx_compound_print:nnN #1#2#3
   {
-    \__siunitx_compound_print:xnnN
+    \__siunitx_compound_print:ennN
       { \seq_count:N \l__siunitx_compound_tmp_seq } {#1} {#2} #3
   }
-\cs_generate_variant:Nn \__siunitx_compound_print:nnN { nV , x , xx }
+\cs_generate_variant:Nn \__siunitx_compound_print:nnN { nV , e , ee }
 \cs_new_protected:Npn \__siunitx_compound_print:nnnN #1#2#3#4
   {
     \int_case:nnF {#1}
@@ -4310,7 +4314,7 @@
         \__siunitx_compound_print_boundary:V \l__siunitx_compound_boundary_close_tl
       }
   }
-\cs_generate_variant:Nn \__siunitx_compound_print:nnnN { x }
+\cs_generate_variant:Nn \__siunitx_compound_print:nnnN { e }
 \cs_new_protected:Npn \__siunitx_compound_print_aux:n #1 { }
 \cs_new_protected:Npn \__siunitx_compound_print_aux:nn #1#2
   {
@@ -4346,7 +4350,7 @@
   }
 \cs_new_protected:Npn \__siunitx_compound_print_quantity:n #1
   { \siunitx_quantity_print:nV {#1} \l__siunitx_compound_unit_tl }
-\cs_generate_variant:Nn  \__siunitx_compound_print_quantity:n { x }
+\cs_generate_variant:Nn  \__siunitx_compound_print_quantity:n { e }
 \cs_new_protected:Npn \__siunitx_compound_print_boundary:n #1
   {
     \tl_if_blank:nF {#1}
@@ -4482,8 +4486,8 @@
 \cs_new_protected:Npn \__siunitx_product_aux:
   {
     \bool_if:NTF \l__siunitx_product_phrase_bool
-      { \__siunitx_product_aux:x { \exp_not:V \l__siunitx_product_phrase_tl } }
-      { \__siunitx_product_aux:x { { } \exp_not:V \l__siunitx_product_symbol_tl { } } }
+      { \__siunitx_product_aux:e { \exp_not:V \l__siunitx_product_phrase_tl } }
+      { \__siunitx_product_aux:e { { } \exp_not:V \l__siunitx_product_symbol_tl { } } }
   }
 \cs_new_protected:Npn \__siunitx_product_aux:n #1
   {
@@ -4506,7 +4510,7 @@
         compound-units                = \l__siunitx_product_units_tl
       }
   }
-\cs_generate_variant:Nn \__siunitx_product_aux:n { x }
+\cs_generate_variant:Nn \__siunitx_product_aux:n { e }
 \tl_new:N \l__siunitx_range_exp_tl
 \tl_new:N \l__siunitx_range_units_tl
 \keys_define:nn { siunitx }
@@ -4785,10 +4789,10 @@
   }
 \cs_new_protected:Npn \siunitx_print_number:n #1
   { \__siunitx_print_aux:nn { number } {#1} }
-\cs_generate_variant:Nn \siunitx_print_number:n { V , x }
+\cs_generate_variant:Nn \siunitx_print_number:n { V , e , x }
 \cs_new_protected:Npn \siunitx_print_unit:n #1
   { \__siunitx_print_aux:nn { unit } {#1} }
-\cs_generate_variant:Nn \siunitx_print_unit:n { V , o , x }
+\cs_generate_variant:Nn \siunitx_print_unit:n { V , e , o , x }
 \cs_new_protected:Npn \__siunitx_print_aux:nn #1#2
   {
     \tl_if_empty:oF {#2}
@@ -5851,7 +5855,7 @@
       { \siunitx_print_number:n { #1#2#3 } }
     \hbox_set:Nn \l__siunitx_table_decimal_box
       {
-        \siunitx_print_number:x
+        \siunitx_print_number:e
           { \__siunitx_table_print_marker_aux:w #4 \q_stop }
       }
     \__siunitx_table_center_marker:
@@ -6272,7 +6276,7 @@
     \prop_put:Nnn \l__siunitx_unit_prefixes_forward_prop {#3} {#2}
     \prop_put:Nnn \l__siunitx_unit_prefixes_reverse_prop {#2} {#3}
   }
-\cs_generate_variant:Nn \siunitx_declare_prefix:Nnn { Nnx }
+\cs_generate_variant:Nn \siunitx_declare_prefix:Nnn { Nne , Nnx }
 \prop_new:N \l__siunitx_unit_prefixes_forward_prop
 \prop_new:N \l__siunitx_unit_prefixes_reverse_prop
 \cs_new_protected:Npn \siunitx_declare_qualifier:Nn #1#2
@@ -6283,7 +6287,7 @@
   }
 \cs_new_protected:Npn \siunitx_declare_unit:Nn #1#2
   { \siunitx_declare_unit:Nnn #1 {#2} { } }
-\cs_generate_variant:Nn \siunitx_declare_unit:Nn { Nx }
+\cs_generate_variant:Nn \siunitx_declare_unit:Nn { Ne , Nx }
 \cs_new_protected:Npn \siunitx_declare_unit:Nnn #1#2#3
   {
     \seq_put_right:Nn \l_siunitx_unit_seq {#1}
@@ -6298,7 +6302,7 @@
     \tl_if_empty:nF {#3}
       { \tl_set:cn { l__siunitx_unit_options_ \token_to_str:N #1 _tl } {#3} }
   }
-\cs_generate_variant:Nn \siunitx_declare_unit:Nnn { Nx }
+\cs_generate_variant:Nn \siunitx_declare_unit:Nnn { Ne , Nx }
 \bool_new:N \l__siunitx_unit_options_bool
 \cs_new_protected:Npn \siunitx_unit_options_apply:n #1
   {
@@ -7315,7 +7319,7 @@
 \siunitx_declare_prefix:Nnn \femto  { -15 } { f }
 \siunitx_declare_prefix:Nnn \pico   { -12 } { p }
 \siunitx_declare_prefix:Nnn \nano   {  -9 } { n }
-\siunitx_declare_prefix:Nnx \micro  { -6 } { \__siunitx_unit_non_latin:n { "03BC } }
+\siunitx_declare_prefix:Nne \micro  { -6 } { \__siunitx_unit_non_latin:n { "03BC } }
 \siunitx_declare_prefix:Nnn \milli  { -3 } { m }
 \siunitx_declare_prefix:Nnn \centi  { -2 } { c }
 \siunitx_declare_prefix:Nnn \deci   { -1 } { d }
@@ -7333,7 +7337,7 @@
 \siunitx_declare_prefix:Nnn \ronna  { 27 } { R }
 \siunitx_declare_prefix:Nnn \quetta { 30 } { Q }
 \siunitx_declare_unit:Nn \becquerel { Bq }
-\siunitx_declare_unit:Nx \degreeCelsius { \__siunitx_unit_non_latin:n { "00B0 } C }
+\siunitx_declare_unit:Ne \degreeCelsius { \__siunitx_unit_non_latin:n { "00B0 } C }
 \siunitx_declare_unit:Nn \coulomb   { C }
 \siunitx_declare_unit:Nn \farad     { F }
 \siunitx_declare_unit:Nn \gray      { Gy }
@@ -7344,7 +7348,7 @@
 \siunitx_declare_unit:Nn \lumen     { lm }
 \siunitx_declare_unit:Nn \lux       { lx }
 \siunitx_declare_unit:Nn \newton    { N }
-\siunitx_declare_unit:Nx \ohm       { \__siunitx_unit_non_latin:n { "2126 } }
+\siunitx_declare_unit:Ne \ohm       { \__siunitx_unit_non_latin:n { "2126 } }
 \siunitx_declare_unit:Nn \pascal    { Pa }
 \siunitx_declare_unit:Nn \radian    { rad }
 \siunitx_declare_unit:Nn \siemens   { S }
@@ -7367,10 +7371,10 @@
 \siunitx_declare_unit:Nn \minute           { min }
 \siunitx_declare_unit:Nn \neper            { Np }
 \siunitx_declare_unit:Nn \tonne            { t }
-\siunitx_declare_unit:Nx \arcminute { \__siunitx_unit_non_latin:n { "02B9 } }
-\siunitx_declare_unit:Nx \arcsecond { \__siunitx_unit_non_latin:n { "02BA } }
-\siunitx_declare_unit:Nx \degree { \__siunitx_unit_non_latin:n { "00B0 } }
-\siunitx_declare_unit:Nx \percent { \cs_to_str:N \% }
+\siunitx_declare_unit:Ne \arcminute { \__siunitx_unit_non_latin:n { "02B9 } }
+\siunitx_declare_unit:Ne \arcsecond { \__siunitx_unit_non_latin:n { "02BA } }
+\siunitx_declare_unit:Ne \degree { \__siunitx_unit_non_latin:n { "00B0 } }
+\siunitx_declare_unit:Ne \percent { \cs_to_str:N \% }
 \siunitx_declare_power:NNn \square \squared { 2 }
 \siunitx_declare_power:NNn \cubic  \cubed   { 3 }
 \msg_new:nnnn { siunitx } { dangling-part }
@@ -7567,7 +7571,7 @@
       {
         \bool_if:NTF \l__siunitx_quantity_uncert_bracket_bool
           {
-            \siunitx_quantity_print:xV
+            \siunitx_quantity_print:eV
               {
                 \exp_not:n {#2}
                 \exp_not:V \l__siunitx_quantity_bracket_open_tl
@@ -7622,7 +7626,7 @@
           { \siunitx_print_unit:o { \use_none:n #2 } }
       }
   }
-\cs_generate_variant:Nn \siunitx_quantity_print:nn { nV , VV , xV }
+\cs_generate_variant:Nn \siunitx_quantity_print:nn { nV , VV , eV , xV }
 \keys_set:nn { siunitx }
   {
     allow-quantity-breaks      = false  ,
@@ -7632,13 +7636,13 @@
   }
 \cs_new:Npn \__siunitx_quantity_non_latin:n #1
   { \codepoint_generate:nn {#1} { \char_value_catcode:n {#1} } }
-\siunitx_declare_unit:Nxn \arcminute
+\siunitx_declare_unit:Nen \arcminute
   { \__siunitx_quantity_non_latin:n { "02B9 } }
   { quantity-product = { } }
-\siunitx_declare_unit:Nxn \arcsecond
+\siunitx_declare_unit:Nen \arcsecond
   { \__siunitx_quantity_non_latin:n { "02BA } }
   { quantity-product = { } }
-\siunitx_declare_unit:Nxn \degree
+\siunitx_declare_unit:Nen \degree
   { \__siunitx_quantity_non_latin:n { "00B0 } }
   { quantity-product = { } }
 \tl_new:N \l__siunitx_symbol_tmpa_tl
@@ -7685,7 +7689,7 @@
       }
     \__siunitx_symbol_if_replace:NnT \degree { "00B0 }
       {
-        \siunitx_declare_unit:Nxn \degree
+        \siunitx_declare_unit:Nen \degree
           {
             \exp_not:N \ifmmode
               \@ifpackageloaded { unicode-math }
@@ -7711,7 +7715,7 @@
       \str_if_eq:VVTF \l__siunitx_symbol_tmpa_tl \l__siunitx_symbol_tmpb_tl
         {
           \group_end:
-          \siunitx_declare_unit:Nx \degreeCelsius
+          \siunitx_declare_unit:Ne \degreeCelsius
             {
               \exp_not:N \ifmmode
                 \@ifpackageloaded { unicode-math }
@@ -7742,7 +7746,7 @@
             \exp_not:N \text
               { \exp_not:N \ensuremath { \exp_not:V \l__siunitx_symbol_tmpa_tl } }
           }
-        \siunitx_declare_unit:Nx \ohm
+        \siunitx_declare_unit:Ne \ohm
           {
             \@ifpackageloaded { fourier }
               {
@@ -7773,7 +7777,7 @@
       }
     \__siunitx_symbol_if_replace:NnT \micro { "03BC }
       {
-        \siunitx_declare_prefix:Nnx \micro { -6 }
+        \siunitx_declare_prefix:Nne \micro { -6 }
           {
             \exp_not:N \text
               {
@@ -7790,7 +7794,7 @@
   {
     \@ifpackageloaded { hyperref }
       {
-        \ExpandArgs { x } \pdfstringdefDisableCommands
+        \ExpandArgs { e } \pdfstringdefDisableCommands
           {
             \cs_set_eq:NN \siunitx_print_text:n \exp_not:N \use:n
             \siunitx_declare_unit:Nn \exp_not:N \ohm
@@ -9228,7 +9232,7 @@
   {
     \quark_if_recursion_tail_stop:N #1
     \bool_new:c { g__siunitx_emulation_unit_warning_ \token_to_str:N #1 _bool }
-    \siunitx_declare_unit:Nx #1
+    \siunitx_declare_unit:Ne #1
       {
         \exp_not:N \bool_if:NF
           \exp_not:c { g__siunitx_emulation_unit_warning_ \token_to_str:N #1 _bool  }



More information about the tex-live-commits mailing list.