summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/siunitx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-03-21 16:55:59 +0000
committerKarl Berry <karl@freefriends.org>2023-03-21 16:55:59 +0000
commit954cb6d8f93ad7b3192c7fc1d5e948632356d5e9 (patch)
tree74ba47e19ea438de3ae05384c1319764ec5df906 /Master/texmf-dist/tex/latex/siunitx
parent9f3fe3f6c00094cda68cbcabae31d6f1e0e76ef6 (diff)
siunitx (14mar23)
git-svn-id: svn://tug.org/texlive/trunk@66627 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/siunitx')
-rw-r--r--Master/texmf-dist/tex/latex/siunitx/siunitx.sty55
1 files changed, 46 insertions, 9 deletions
diff --git a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
index 7d01bed00e5..2a998acf188 100644
--- a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
+++ b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
@@ -42,7 +42,7 @@
}%
\endinput
}%
-\ProvidesExplPackage {siunitx} {2023-03-04} {3.2.2}
+\ProvidesExplPackage {siunitx} {2023-03-14} {3.2.3}
{A comprehensive (SI) units package}
\msg_new:nnnn { siunitx } { incompatible-package }
{ Package~'#1'~incompatible. }
@@ -107,6 +107,21 @@
\bool_new:N \l__siunitx_angle_force_decimal_bool
\cs_new_protected:Npn \siunitx_angle:n #1
{
+ \bool_if:NTF \l_siunitx_number_parse_bool
+ { \__siunitx_angle_angle:n {#1} }
+ {
+ \tl_if_blank:nF {#1}
+ {
+ \tl_set:Nn \l__siunitx_angle_degrees_tl { \ensuremath {#1} }
+ \__siunitx_angle_arc_print:VVV
+ \l__siunitx_angle_degrees_tl
+ \c_empty_tl
+ \c_empty_tl
+ }
+ }
+ }
+\cs_new_protected:Npn \__siunitx_angle_angle:n #1
+ {
\bool_if:NTF \l__siunitx_angle_force_arc_bool
{ \exp_args:Ne \__siunitx_angle_arc_convert:n { \fp_eval:n {#1} } }
{
@@ -122,12 +137,27 @@
}
\cs_new_protected:Npn \siunitx_angle:nnn #1#2#3
{
- \bool_if:NTF \l__siunitx_angle_force_decimal_bool
+ \bool_if:NTF \l_siunitx_number_parse_bool
+ {
+ \bool_if:NTF \l__siunitx_angle_force_decimal_bool
+ {
+ \exp_args:Ne \siunitx_angle:n
+ { \fp_eval:n { #1 + (#2) / 60 + (#3) / 3600 } }
+ }
+ { \__siunitx_angle_arc_sign:nnn {#1} {#2} {#3} }
+ }
{
- \exp_args:Ne \siunitx_angle:n
- { \fp_eval:n { #1 + (#2) / 60 + (#3) / 3600 } }
+ \tl_set:Nx \l__siunitx_angle_degrees_tl
+ { \tl_if_blank:nF {#1} { \exp_not:n { \ensuremath {#1} } } }
+ \tl_set:Nx \l__siunitx_angle_minutes_tl
+ { \tl_if_blank:nF {#2} { \exp_not:n { \ensuremath {#2} } } }
+ \tl_set:Nx \l__siunitx_angle_seconds_tl
+ { \tl_if_blank:nF {#3} { \exp_not:n { \ensuremath {#3} } } }
+ \__siunitx_angle_arc_print:VVV
+ \l__siunitx_angle_degrees_tl
+ \l__siunitx_angle_minutes_tl
+ \l__siunitx_angle_seconds_tl
}
- { \__siunitx_angle_arc_sign:nnn {#1} {#2} {#3} }
}
\cs_new_protected:Npn \__siunitx_angle_arc_convert:n #1
{
@@ -249,13 +279,20 @@
{
\tl_if_blank:nF {#1}
{
- \bool_if:NTF \l__siunitx_angle_astronomy_bool
- { \__siunitx_angle_arc_print_auxii:nw {#2} #1 \q_stop }
+ \bool_if:NTF \l_siunitx_number_parse_bool
+ {
+ \bool_if:NTF \l__siunitx_angle_astronomy_bool
+ { \__siunitx_angle_arc_print_auxii:nw {#2} #1 \q_stop }
+ {
+ \__siunitx_angle_arc_print_auxv:w #1 \q_stop
+ \__siunitx_angle_arc_print_auxvi:n {#2}
+ }
+ }
{
- \__siunitx_angle_arc_print_auxv:w #1 \q_stop
+ \siunitx_print_number:n {#1}
\__siunitx_angle_arc_print_auxvi:n {#2}
}
- \tl_if_blank:nF {#3}
+ \tl_if_blank:nF {#3}
{
\nobreak
\l__siunitx_angle_separator_tl