From 147b42500c5ad159da818792bf6b18e3f4b4e11c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 15 Nov 2010 23:47:26 +0000 Subject: siunitx 2.1d (15nov10) git-svn-id: svn://tug.org/texlive/trunk@20450 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/siunitx/config/siunitx-binary.cfg | 2 +- .../tex/latex/siunitx/config/siunitx-version-1.cfg | 4 +- Master/texmf-dist/tex/latex/siunitx/siunitx.sty | 103 +++++++++++++++++---- 3 files changed, 89 insertions(+), 20 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/latex/siunitx/config/siunitx-binary.cfg b/Master/texmf-dist/tex/latex/siunitx/config/siunitx-binary.cfg index 3557545c710..fbef2f0d7e2 100644 --- a/Master/texmf-dist/tex/latex/siunitx/config/siunitx-binary.cfg +++ b/Master/texmf-dist/tex/latex/siunitx/config/siunitx-binary.cfg @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% --------------------------------------------------------------- %% -\ProvidesExplFile {siunitx-binary.cfg} {2010/11/05} {2.1b} +\ProvidesExplFile {siunitx-binary.cfg} {2010/11/14} {2.1c} {siunitx: Binary units} \DeclareBinaryPrefix \kibi { Ki } { 10 } \DeclareBinaryPrefix \mebi { Mi } { 20 } diff --git a/Master/texmf-dist/tex/latex/siunitx/config/siunitx-version-1.cfg b/Master/texmf-dist/tex/latex/siunitx/config/siunitx-version-1.cfg index 00cd5a02dd8..615dcd983c4 100644 --- a/Master/texmf-dist/tex/latex/siunitx/config/siunitx-version-1.cfg +++ b/Master/texmf-dist/tex/latex/siunitx/config/siunitx-version-1.cfg @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% --------------------------------------------------------------- %% -\ProvidesExplFile {siunitx-version-1.cfg} {2010/11/05} {2.1b} +\ProvidesExplFile {siunitx-version-1.cfg} {2010/11/14} {2.1c} {siunitx: Version 1 settings} \keys_set:nn { siunitx } { load-configurations = { abbreviations , binary } } @@ -615,7 +615,7 @@ valuesep / unknown .meta:n = { number-unit-separator = #1 }, xspace .meta:n = { use-xspace = #1 }, - xpace .default:n = { true }, + xspace .default:n = { true }, } \keys_define:nn { siunitx } { unknown .code:n = diff --git a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty index f5a4fcb5d00..9b53d47ef63 100644 --- a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty +++ b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty @@ -14,7 +14,7 @@ %% --------------------------------------------------------------- %% \RequirePackage{expl3} -\ProvidesExplPackage {siunitx} {2010/11/05} {2.1b} +\ProvidesExplPackage {siunitx} {2010/11/14} {2.1c} {A comprehensive (SI) units package} \msg_set:nnnn { siunitx } { incompatible-package } { Package~'#1'~incompatible. } @@ -3679,6 +3679,13 @@ { \ProvideDocumentCommand \exp_not:N #1 { } { + \exp_not:N \cs_if_free:NF + \exp_not:c { l_siunitx_ \token_to_str:N #1 _options_tl } + { + \keys_set:nV { siunitx } + \exp_not:c + { l_siunitx_ \token_to_str:N #1 _options_tl } + } \bool_if:NT \l_siunitx_create_prespace_bool { \exp_not:n @@ -3704,6 +3711,13 @@ { \ProvideDocumentCommand \exp_not:N #1 { o } { + \exp_not:N \cs_if_free:cF + \exp_not:c { l_siunitx_ \token_to_str:N #1 _options_tl } + { + \keys_set:nV { siunitx } + \exp_not:c + { l_siunitx_ \token_to_str:N #1 _options_tl } + } \exp_not:N \IfNoValueTF {####1} { \exp_not:n { \siunitx_unit_output:nn {#1} { } } } { @@ -3989,6 +4003,8 @@ { \tl_set:Nn \l_siunitx_qualifier_mode_tl { space } }, qualifier-mode / subscript .code:n = { \tl_set:Nn \l_siunitx_qualifier_mode_tl { subscript } }, + qualifier-mode / text .code:n = + { \tl_set:Nn \l_siunitx_qualifier_mode_tl { text } }, } \keys_set:nn { siunitx } { bracket-unit-denominator = true, @@ -4385,6 +4401,9 @@ { @ { \exp_not:V \l_siunitx_tmpa_tl } } } } +\cs_new_protected_nopar:Npn \siunitx_unit_format_qualifier_text: { + \tl_put_right:NV \l_siunitx_unit_current_tl \l_siunitx_tmpa_tl +} \cs_new_protected_nopar:Npn \siunitx_unit_format_sorted: { \tl_set_eq:NN \l_siunitx_unit_tl \l_siunitx_unit_numerator_tl \tl_if_empty:NF \l_siunitx_unit_tl @@ -4513,7 +4532,7 @@ \cs_generate_variant:Nn \siunitx_unit_output:nn { V } \cs_new_protected_nopar:Npn \siunitx_unit_output_number_sep: { \bool_if:NTF \l_siunitx_number_unit_breaks_bool - { \allowbreak } { \nobreak } + { \penalty \binoppenalty } { \nobreak } \siunitx_ensuremath:n { \l_siunitx_number_unit_separator_tl } } \cs_new_protected_nopar:Npn \siunitx_unit_output_pre_print: { @@ -4647,11 +4666,7 @@ \tl_clear:N \l_siunitx_list_tl \tl_clear:N \l_siunitx_list_current_tl \tl_map_function:nN {#1} \siunitx_list_numbers_aux_ii:n - \tl_set:Nx \l_siunitx_tmpa_tl - { - \exp_not:N \text { \exp_not:V \l_siunitx_list_separator_final_tl } - } - \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_tmpa_tl + \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_list_separator_final_tl \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_list_current_tl \tl_use:N \l_siunitx_list_tl } @@ -4659,10 +4674,8 @@ \tl_if_empty:NTF \l_siunitx_list_tl { \tl_set_eq:NN \l_siunitx_list_tl \l_siunitx_list_current_tl } { - \tl_set:Nx \l_siunitx_tmpa_tl - { \exp_not:N \text { \exp_not:V \l_siunitx_list_separator_tl } } - \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_tmpa_tl - \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_list_current_tl + \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_list_separator_tl + \tl_put_right:NV \l_siunitx_list_tl \l_siunitx_list_current_tl } \tl_set:Nn \l_siunitx_list_current_tl { \siunitx_combined_output:n {#1} } @@ -4719,7 +4732,7 @@ } \cs_new_protected:Npn \siunitx_range_numbers:nn #1#2 { \siunitx_range_numbers_aux:n {#1} - \text { \l_siunitx_range_phrase_tl } + \tl_use:N \l_siunitx_range_phrase_tl \siunitx_range_numbers_aux:n {#2} } \cs_new_protected:Npn \siunitx_range_numbers_aux:n #1 { @@ -4796,6 +4809,7 @@ \tl_new:N \l_siunitx_table_collect_pre_tl \tl_new:N \l_siunitx_table_collect_post_tl \tl_new:N \l_siunitx_number_valid_tl +\bool_new:N \l_siunitx_table_math_bool \bool_new:N \l_siunitx_table_collect_pre_bool \bool_new:N \l_siunitx_table_collect_post_bool \cs_new_protected:Npn \siunitx_table_collect_begin:Nn #1#2 { @@ -4843,7 +4857,10 @@ } { \bool_if:NTF \l_siunitx_table_collect_pre_bool - { \tl_put_right:Nn \l_siunitx_table_collect_pre_tl {#1} } + { + \tl_put_right:Nn \l_siunitx_table_collect_pre_tl {#1} + \siunitx_table_collect_expand_math:N #1 + } { \bool_set_true:N \l_siunitx_table_collect_post_bool \tl_put_right:Nn \l_siunitx_table_collect_post_tl {#1} @@ -4851,6 +4868,22 @@ } } } +\cs_new_protected:Npn \siunitx_table_collect_expand_math:N #1 { + \token_if_math_shift:NTF #1 + { + \bool_if:NTF \l_siunitx_table_math_bool + { \bool_set_false:N \l_siunitx_table_math_bool } + { \bool_set_true:N \l_siunitx_table_math_bool } + } + { + \cs_if_eq:NNTF #1 \( % \) + { \bool_set_true:N \l_siunitx_table_math_bool } + { % \( + \cs_if_eq:NNT #1 \) + { \bool_set_false:N \l_siunitx_table_math_bool } + } + } +} \cs_new_protected_nopar:Npn \siunitx_table_collect_get: { \cs_set_eq:NN \siunitx_table_collect_next: \siunitx_table_collect_get: @@ -4869,6 +4902,7 @@ \tl_clear:N \l_siunitx_table_collect_pre_tl \tl_clear:N \l_siunitx_table_collect_post_tl \bool_set_false:N \l_siunitx_table_collect_post_bool + \bool_set_false:N \l_siunitx_table_math_bool } \cs_new_protected_nopar:Npn \siunitx_table_collect_init_s: { \siunitx_table_collect_init: @@ -5207,6 +5241,7 @@ { \box_wd:N \l_siunitx_table_pre_box } = { \c_zero_skip } { \tl_use:N \l_siunitx_table_collect_pre_tl } { \box_use:N \l_siunitx_table_pre_box } + \bool_if:NT \l_siunitx_table_math_bool { \c_math_shift_token } \siunitx_table_print_S_parse: \siunitx_table_print_S_measure:Nnn \l_siunitx_number_out_prop { integer } { mantissa } @@ -5227,6 +5262,7 @@ { \l_siunitx_table_integer_dim } > { \l_siunitx_table_fill_dim } { \siunitx_table_print_S_centered_integer: } { \siunitx_table_print_S_centered_decimal: } + \bool_if:NT \l_siunitx_table_math_bool { \c_math_shift_token } \bool_if:NTF \l_siunitx_table_align_post_bool { \box_use:N \l_siunitx_table_post_box } { @@ -5239,9 +5275,25 @@ } \cs_new_protected_nopar:Npn \siunitx_table_print_S_centered_ends: { \hbox_set:Nn \l_siunitx_table_pre_box - { { \tl_use:N \l_siunitx_table_collect_pre_tl } } + { + { + \tl_use:N \l_siunitx_table_collect_pre_tl + \bool_if:NT \l_siunitx_table_math_bool + { + \scan_stop: + \c_math_shift_token + } + } + } \hbox_set:Nn \l_siunitx_table_post_box - { \tl_use:N \l_siunitx_table_collect_post_tl } + { + \bool_if:NT \l_siunitx_table_math_bool + { + \c_math_shift_token + \scan_stop: + } + \tl_use:N \l_siunitx_table_collect_post_tl + } \dim_compare:nNnTF { \box_wd:N \l_siunitx_table_pre_box } > { \box_wd:N \l_siunitx_table_post_box } @@ -5285,7 +5337,10 @@ \dim_compare:nNnTF { \box_wd:N \l_siunitx_table_pre_box } = { \c_zero_skip } { \tl_use:N \l_siunitx_table_collect_pre_tl } - { \box_use:N \l_siunitx_table_pre_box } + { + \box_use:N \l_siunitx_table_pre_box + \bool_if:NT \l_siunitx_table_math_bool { \c_math_shift_token } + } \siunitx_table_print_S_model_create: \bool_if:NT \l_siunitx_table_auto_bool { @@ -5328,6 +5383,7 @@ { an~exponent } } } + \bool_if:NT \l_siunitx_table_math_bool { \c_math_shift_token } \bool_if:NTF \l_siunitx_table_align_post_bool { \box_use:N \l_siunitx_table_post_box } { @@ -5342,7 +5398,15 @@ } } \cs_new_protected_nopar:Npn \siunitx_table_print_S_reserved_ends: { - \hbox_set:Nn \l_siunitx_tmp_box { \l_siunitx_table_pre_tl } + \hbox_set:Nn \l_siunitx_tmp_box + { + \l_siunitx_table_pre_tl + \bool_if:NT \l_siunitx_table_math_bool + { + \scan_stop: + \c_math_shift_token + } + } \hbox_set_to_wd:Nnn \l_siunitx_table_pre_box { \box_wd:N \l_siunitx_tmp_box } { @@ -5353,6 +5417,11 @@ \hbox_set_to_wd:Nnn \l_siunitx_table_post_box { \box_wd:N \l_siunitx_tmp_box } { + \bool_if:NT \l_siunitx_table_math_bool + { + \c_math_shift_token + \scan_stop: + } \tl_use:N \l_siunitx_table_collect_post_tl \tex_hfil:D } -- cgit v1.2.3