summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/siunitx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-06-18 03:01:13 +0000
committerNorbert Preining <norbert@preining.info>2021-06-18 03:01:13 +0000
commit3ecc00c27119bc47ba26b518b7d26c00b69599df (patch)
treedb60a75c06403ca74ed76bc3339d80958159ae3e /macros/latex/contrib/siunitx
parent5f3280db1e6f333f79e9930e5609d3f5175d5af7 (diff)
CTAN sync 202106180301
Diffstat (limited to 'macros/latex/contrib/siunitx')
-rw-r--r--macros/latex/contrib/siunitx/CHANGELOG.md31
-rw-r--r--macros/latex/contrib/siunitx/siunitx-code.pdfbin1486326 -> 1489673 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx-complex.dtx72
-rw-r--r--macros/latex/contrib/siunitx/siunitx-compound.dtx2
-rw-r--r--macros/latex/contrib/siunitx/siunitx-locale.dtx2
-rw-r--r--macros/latex/contrib/siunitx/siunitx-number.dtx13
-rw-r--r--macros/latex/contrib/siunitx/siunitx-quantity.dtx22
-rw-r--r--macros/latex/contrib/siunitx/siunitx-symbol.dtx42
-rw-r--r--macros/latex/contrib/siunitx/siunitx-table.dtx14
-rw-r--r--macros/latex/contrib/siunitx/siunitx-table.pdfbin475888 -> 0 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx-unit.dtx8
-rw-r--r--macros/latex/contrib/siunitx/siunitx.dtx15
-rw-r--r--macros/latex/contrib/siunitx/siunitx.pdfbin634773 -> 635013 bytes
-rw-r--r--macros/latex/contrib/siunitx/siunitx.tex23
14 files changed, 169 insertions, 75 deletions
diff --git a/macros/latex/contrib/siunitx/CHANGELOG.md b/macros/latex/contrib/siunitx/CHANGELOG.md
index 364058db97..1266b1623b 100644
--- a/macros/latex/contrib/siunitx/CHANGELOG.md
+++ b/macros/latex/contrib/siunitx/CHANGELOG.md
@@ -7,6 +7,33 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
## [Unreleased]
+## [v3.0.14]
+
+### Changed
+- Auto-enable `table-fixed-width` when setting `table-column-width`
+ to a positive value
+- Expand `table-format` input before splitting
+
+### Fixed
+- Incorrect handling of `{}` in literal units (issue #487)
+- Placement of sign in some complex numbers (issue #488)
+- Printing of units in quantities when `uncertainty-mode` is
+ `separate` and an exponent is present (issue #490)
+
+## [v3.0.13]
+
+### Added
+- Catalan translations for lists and ranges
+
+### Fixed
+- Position of complex root when no real part is present (issue #481)
+- Skip defining `\unit` if the `units` package is loaded (issue #482)
+- Printing units in compound quantities when `parse-numbers` is
+ false (issue #484)
+- Printing of `1` when both `print-zero-exponent` and
+ `print-unity-mantissa` are false (issue #485)
+- Printing of ohm symbol in text mode with `fourier` package (issue #486)
+
## [v3.0.12]
### Fixed
@@ -1368,7 +1395,9 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
### Added
- First public testing release (as `si`)
-[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.0.12...HEAD
+[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.0.14...HEAD
+[v3.0.14]: https://github.com/josephwright/siunitx/compare/v3.0.13...v3.0.14
+[v3.0.13]: https://github.com/josephwright/siunitx/compare/v3.0.12...v3.0.13
[v3.0.12]: https://github.com/josephwright/siunitx/compare/v3.0.11...v3.0.12
[v3.0.11]: https://github.com/josephwright/siunitx/compare/v3.0.10...v3.0.11
[v3.0.10]: https://github.com/josephwright/siunitx/compare/v3.0.9...v3.0.10
diff --git a/macros/latex/contrib/siunitx/siunitx-code.pdf b/macros/latex/contrib/siunitx/siunitx-code.pdf
index b62b22632d..ff484ac37d 100644
--- a/macros/latex/contrib/siunitx/siunitx-code.pdf
+++ b/macros/latex/contrib/siunitx/siunitx-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/siunitx-complex.dtx b/macros/latex/contrib/siunitx/siunitx-complex.dtx
index 1a81054a5c..ca4262bdce 100644
--- a/macros/latex/contrib/siunitx/siunitx-complex.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-complex.dtx
@@ -597,12 +597,12 @@
%
% \begin{macro}{\@@_format:n}
% \begin{macro}{\@@_format_auxi:n}
-% \begin{macro}{\@@_format_unary:nnnnnnn}
% \begin{macro}{\@@_format_auxii:n}
% \begin{macro}{\@@_drop_exponent:nnnnnnn}
% \begin{macro}{\@@_format_sign:nnnnnnn}
% \begin{macro}{\@@_extract_exponent:nw}
% \begin{macro}{\@@_extract_exponent_aux:w}
+% \begin{macro}{\@@_format_unary:nnnnnnn}
% \begin{macro}[EXP]{\@@_format_bracket:n}
% We start here checking that there is something to do.
% \begin{macrocode}
@@ -614,53 +614,24 @@
{ \@@_format_auxi:n {#1} }
}
% \end{macrocode}
+% We split based on whether the number has a complex part at all,
+% then print the result.
% \begin{macrocode}
\cs_new_protected:Npn \@@_format_auxi:n #1
{
\tl_clear:N \l_@@_tmp_tl
- \tl_if_empty:NTF \l_@@_real_tl
+ \tl_if_empty:NTF \l_@@_img_tl
{
- \@@_format_units:n {#1}
- \exp_after:wN \@@_format_unary:nnnnnnn \l_@@_img_tl
+ \siunitx_number_process:NN \l_@@_real_tl \l_@@_real_tl
\tl_set:Nx \l_@@_tmp_tl
- {
- \siunitx_number_output:N \l_@@_img_tl
- \exp_not:V \l_@@_output_root_tl
- }
- }
- {
- \tl_if_empty:NTF \l_@@_img_tl
- {
- \siunitx_number_process:NN \l_@@_real_tl \l_@@_real_tl
- \tl_set:Nx \l_@@_tmp_tl
- { \siunitx_number_output:N \l_@@_real_tl }
- }
- { \@@_format_auxii:n {#1} }
+ { \siunitx_number_output:N \l_@@_real_tl }
}
+ { \@@_format_auxii:n {#1} }
\tl_if_blank:nTF {#1}
{ \siunitx_print_number:V \l_@@_tmp_tl }
{ \siunitx_quantity_print:VV \l_@@_tmp_tl \l_@@_unit_tl }
}
% \end{macrocode}
-% An imaginary part that is exactly $1$ is omitted, with only the complex
-% root printed. That means checking and removing a lone $1$ here.
-% \begin{macrocode}
-\cs_new_protected:Npn \@@_format_unary:nnnnnnn #1#2#3#4#5#6#7
- {
- \tl_set:Nx \l_@@_img_tl
- {
- \exp_not:n { {#1} {#2} }
- \tl_if_blank:nTF {#4}
- {
- \str_if_eq:nnTF {#3} { 1 }
- { { } { } }
- { \exp_not:n { {#3} {#4} } }
- }
- { \exp_not:n { {#3} {#4} } }
- \exp_not:n { {#5} {#6} {#7} }
- }
- }
-% \end{macrocode}
% If we get to this stage we have both parts to a complex number. We
% need to process both and do some massaging, then it's just a question
% of reassembly with the right parts in the right places.
@@ -668,8 +639,10 @@
\cs_new_protected:Npn \@@_format_auxii:n #1
{
\@@_format_units:n {#1}
- \exp_after:wN \@@_drop_exponent:nnnnnnn \l_@@_real_tl
+ \tl_if_empty:NF \l_@@_real_tl
+ { \exp_after:wN \@@_drop_exponent:nnnnnnn \l_@@_real_tl }
\exp_after:wN \@@_format_sign:nnnnnnn \l_@@_img_tl
+ \exp_after:wN \@@_format_unary:nnnnnnn \l_@@_img_tl
\tl_set:Nx \l_@@_tmp_tl
{ \siunitx_number_output:NN \l_@@_img_tl \q_nil }
\exp_after:wN \@@_extract_exponent:w \l_@@_tmp_tl \q_stop
@@ -706,7 +679,11 @@
\tl_set:Nx \l_@@_img_tl
{
{ }
- { \tl_if_blank:nTF {#2} { + } { \exp_not:n {#2} } }
+ {
+ \tl_if_blank:nTF {#2}
+ { \tl_if_empty:NF \l_@@_real_tl { + } }
+ { \exp_not:n {#2} }
+ }
\tl_if_blank:nTF {#4}
{
\str_if_eq:nnTF {#3} { 1 }
@@ -733,6 +710,25 @@
\tl_set:Nn \l_@@_tmp_tl {#1#2}
\tl_set:Nn \l_@@_exp_tl {#3#4}
}
+% \end{macrocode}
+% An imaginary part that is exactly $1$ is omitted, with only the complex
+% root printed. That means checking and removing a lone $1$ here.
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_format_unary:nnnnnnn #1#2#3#4#5#6#7
+ {
+ \tl_set:Nx \l_@@_img_tl
+ {
+ \exp_not:n { {#1} {#2} }
+ \tl_if_blank:nTF {#4}
+ {
+ \str_if_eq:nnTF {#3} { 1 }
+ { { } { } }
+ { \exp_not:n { {#3} {#4} } }
+ }
+ { \exp_not:n { {#3} {#4} } }
+ \exp_not:n { {#5} {#6} {#7} }
+ }
+ }
\cs_new_protected:Npn \@@_format_bracket:n #1
{
\exp_not:V \l_@@_bracket_open_tl
diff --git a/macros/latex/contrib/siunitx/siunitx-compound.dtx b/macros/latex/contrib/siunitx/siunitx-compound.dtx
index f377585b78..5f119f1372 100644
--- a/macros/latex/contrib/siunitx/siunitx-compound.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-compound.dtx
@@ -666,6 +666,8 @@
{ \bool_set_false:N \l_siunitx_number_bracket_ambiguous_bool }
\bool_set_true:N \l_@@_unit_bool
\@@_format:nn {#1} {#2}
+ \bool_if:NF \l_siunitx_number_parse_bool
+ { \siunitx_unit_format:nN {#2} \l_@@_unit_tl }
\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
diff --git a/macros/latex/contrib/siunitx/siunitx-locale.dtx b/macros/latex/contrib/siunitx/siunitx-locale.dtx
index f037fcfae3..8535a74c20 100644
--- a/macros/latex/contrib/siunitx/siunitx-locale.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-locale.dtx
@@ -136,6 +136,8 @@
\file_if_exist:nT { translations.sty }
{
\RequirePackage { translations }
+ \DeclareTranslation { Catalan } { and } { i }
+ \DeclareTranslation { Catalan } { to~(numerical~range) } { a }
\DeclareTranslation { English } { to~(numerical~range) } { to }
\DeclareTranslation { French } { to~(numerical~range) } { à }
\DeclareTranslation { German } { to~(numerical~range) } { bis }
diff --git a/macros/latex/contrib/siunitx/siunitx-number.dtx b/macros/latex/contrib/siunitx/siunitx-number.dtx
index 2dfa66374c..737b503b37 100644
--- a/macros/latex/contrib/siunitx/siunitx-number.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-number.dtx
@@ -3165,9 +3165,16 @@
% \begin{macrocode}
\cs_new:Npn \@@_output_integer:nnn #1#2#3
{
- \bool_lazy_or:nnT
- { \l_@@_unity_mantissa_bool }
- { ! \str_if_eq_p:nn { #1 . #2 } { 1. } }
+ \bool_lazy_any:nT
+ {
+ { \l_@@_unity_mantissa_bool }
+ { ! \str_if_eq_p:nn { #1 . #2 } { 1. } }
+ {
+ \bool_lazy_and_p:nn
+ { \str_if_eq_p:nn {#3} { 0 } }
+ { ! \l_@@_zero_exponent_bool }
+ }
+ }
{ \@@_output_digits:nn { integer } {#1} }
}
\cs_new:Npn \@@_output_decimal:nn #1#2
diff --git a/macros/latex/contrib/siunitx/siunitx-quantity.dtx b/macros/latex/contrib/siunitx/siunitx-quantity.dtx
index 930f75c5fc..353fe94e6e 100644
--- a/macros/latex/contrib/siunitx/siunitx-quantity.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-quantity.dtx
@@ -221,6 +221,7 @@
% \begin{macro}{\@@_parsed_aux:w}
% \begin{macro}{\@@_parsed_aux:nnnw}
% \begin{macro}{\@@_parsed_aux:nnnn}
+% \begin{macro}{\@@_parsed_aux:nnn}
% For quantities, there is bit to do to combine things. The first question is
% whether we are parsing at all: if not, things are quite short. Notice that
% within this group we turn off bracketing in the number formatter: we
@@ -319,17 +320,28 @@
{
\bool_if:NTF \l_@@_uncert_repeat_bool
{
- \siunitx_quantity_print:nV {#1#2}
- \l_@@_unit_tl
- \siunitx_quantity_print:nV { { } #3 }
- \l_@@_unit_tl
- \siunitx_print_number:n { { } #4 }
+ \tl_if_blank:nTF {#4}
+ { \@@_parsed_aux:nnn {#1#2} {#3} { } }
+ { \@@_parsed_aux:nnn {#1#2} {#3} { { } #4 } }
}
{ \siunitx_quantity_print:nV {#1#2#3#4} \l_@@_unit_tl }
}
}
}
% \end{macrocode}
+% For the case of a separated uncertainty with repeated units, we print the
+% two parts independently. The third argument here is the exponent if there
+% is one, with the spacing correct in either case as we only pass the empty
+% group if one is required.
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_parsed_aux:nnn #1#2#3
+ {
+ \siunitx_quantity_print:nV {#1#3} \l_@@_unit_tl
+ \tl_if_blank:nF {#2}
+ { \siunitx_quantity_print:nV { { } #2#3 } \l_@@_unit_tl }
+ }
+% \end{macrocode}
+% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
diff --git a/macros/latex/contrib/siunitx/siunitx-symbol.dtx b/macros/latex/contrib/siunitx/siunitx-symbol.dtx
index 6c7154d751..40b461bd84 100644
--- a/macros/latex/contrib/siunitx/siunitx-symbol.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-symbol.dtx
@@ -225,26 +225,38 @@
{ \group_end: }
% \end{macrocode}
% For |\ohm|, there is a math mode symbol we can use, so there has to be
-% a mode-dependent definition.
+% a mode-dependent definition. This doesn't work if the text mode symbol is
+% bust: the \pkg{fourier} package puts us in that position.
% \begin{macrocode}
\@@_if_replace:NnT \ohm { "03A9 }
{
\siunitx_declare_unit:Nx \ohm
{
- \exp_not:N \ifmmode
- \cs_if_exist:NTF \upOmega
- { \exp_not:N \upOmega }
- { \exp_not:N \Omega }
- \exp_not:N \else
- \exp_not:N \text
- {
- \bool_lazy_or:nnTF
- { \sys_if_engine_luatex_p: }
- { \sys_if_engine_xetex_p: }
- { \@@_non_latin:n { "03A9 } }
- { \exp_not:N \textohm }
- }
- \exp_not:N \fi
+ \@ifpackageloaded { fourier }
+ {
+ \exp_not:N \ensuremath
+ {
+ \cs_if_exist:NTF \upOmega
+ { \exp_not:N \upOmega }
+ { \exp_not:N \Omega }
+ }
+ }
+ {
+ \exp_not:N \ifmmode
+ \cs_if_exist:NTF \upOmega
+ { \exp_not:N \upOmega }
+ { \exp_not:N \Omega }
+ \exp_not:N \else
+ \exp_not:N \text
+ {
+ \bool_lazy_or:nnTF
+ { \sys_if_engine_luatex_p: }
+ { \sys_if_engine_xetex_p: }
+ { \@@_non_latin:n { "03A9 } }
+ { \exp_not:N \textohm }
+ }
+ \exp_not:N \fi
+ }
}
}
% \end{macrocode}
diff --git a/macros/latex/contrib/siunitx/siunitx-table.dtx b/macros/latex/contrib/siunitx/siunitx-table.dtx
index 137c2e18d6..efd2c6bc9b 100644
--- a/macros/latex/contrib/siunitx/siunitx-table.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-table.dtx
@@ -584,10 +584,15 @@
% \begin{variable}{\l_@@_column_width_dim, \l_@@_fixed_width_bool}
% Settings which apply to aligned columns in general.
% \begin{macrocode}
+\dim_new:N \l_@@_column_width_dim
\keys_define:nn { siunitx }
{
- table-column-width .dim_set:N =
- \l_@@_column_width_dim ,
+ table-column-width .code:n =
+ {
+ \dim_set:Nn \l_@@_column_width_dim {#1}
+ \dim_compare:nNnT \l_@@_column_width_dim > \c_zero_dim
+ { \bool_set_true:N \l_@@_fixed_width_bool }
+ } ,
table-fixed-width .bool_set:N =
\l_@@_fixed_width_bool
}
@@ -776,7 +781,10 @@
\l_@@_auto_round_bool ,
table-format .code:n =
{
- \@@_split:nNNN {#1}
+ \group_begin:
+ \protected@edef \l_@@_tmp_tl {#1}
+ \exp_args:NNV \group_end:
+ \@@_split:nNNN \l_@@_tmp_tl
\l_@@_before_model_tl
\l_@@_model_tl
\l_@@_after_model_tl
diff --git a/macros/latex/contrib/siunitx/siunitx-table.pdf b/macros/latex/contrib/siunitx/siunitx-table.pdf
deleted file mode 100644
index 6c241941b5..0000000000
--- a/macros/latex/contrib/siunitx/siunitx-table.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/siunitx/siunitx-unit.dtx b/macros/latex/contrib/siunitx/siunitx-unit.dtx
index 3cbfa728fc..ab9c30a1c2 100644
--- a/macros/latex/contrib/siunitx/siunitx-unit.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-unit.dtx
@@ -1189,7 +1189,7 @@
% }
% \begin{macro}{\@@_format_literal_super:nn, \@@_format_literal_sub:nn}
% \begin{macro}{\@@_format_literal_add:n}
-% \begin{macro}{\@@_format_literal_auxvii:nn}
+% \begin{macro}{\@@_format_literal_auxix:nn}
% \begin{variable}{\l_@@_separator_tl}
% To format literal units, there are two tasks to do. The input is
% \texttt{x}-type expanded to force any symbolic units to be converted into
@@ -1285,7 +1285,7 @@
{
\tl_if_head_is_N_type:nTF {#2}
{ \@@_format_literal_auxvi:nN }
- { \@@_format_literal_auxvii:nn }
+ { \@@_format_literal_auxix:nn }
{#1} #2 \q_recursion_stop
}
\cs_new_protected:Npx \@@_format_literal_auxvi:nN #1#2
@@ -1308,7 +1308,7 @@
{
\str_if_eq:nnTF {#2} { \protect }
{ \@@_format_literal_auxviii:nN {#1} }
- { \@@_format_literal_auxvi:nN {#1#2} }
+ { \@@_format_literal_auxv:nw {#1#2} }
}
\cs_new_protected:Npn \@@_format_literal_auxviii:nN #1#2
{ \@@_format_literal_auxv:nw { #1 \protect #2 } }
@@ -1345,7 +1345,7 @@
}
\tl_clear:N \l_@@_separator_tl
}
-\cs_new_protected:Npn \@@_format_literal_auxvii:nn #1#2
+\cs_new_protected:Npn \@@_format_literal_auxix:nn #1#2
{ \@@_format_literal_auxvi:nN { #1 {#2} } }
\tl_new:N \l_@@_separator_tl
% \end{macrocode}
diff --git a/macros/latex/contrib/siunitx/siunitx.dtx b/macros/latex/contrib/siunitx/siunitx.dtx
index 53cfbd8426..75c494abb4 100644
--- a/macros/latex/contrib/siunitx/siunitx.dtx
+++ b/macros/latex/contrib/siunitx/siunitx.dtx
@@ -121,7 +121,7 @@
%
% Identify the package and give the over all version information.
% \begin{macrocode}
-\ProvidesExplPackage {siunitx} {2021-06-09} {3.0.12}
+\ProvidesExplPackage {siunitx} {2021-06-17} {3.0.14}
{A comprehensive (SI) units package}
% \end{macrocode}
%
@@ -309,6 +309,17 @@
\siunitx_print_number:V \l_@@_tmp_tl
\group_end:
}
+\@ifpackageloaded { units }
+ {
+ \msg_new:nnn { siunitx } { units-pkg }
+ {
+ Detected~the~"units"~package: \\
+ Omitting~definition~of~\token_to_str:N \unit.
+ }
+ \msg_warning:nn { siunitx } { units-pkg }
+ \use_none:nnnn
+ }
+ { }
\NewDocumentCommand \unit { O { } > { \TrimSpaces } m }
{
\mode_leave_vertical:
@@ -522,7 +533,7 @@
% \subsection{Document commands in bookmarks}
%
% In bookmarks, the \pkg{siunitx} document commands need to produce simple
-% strings that represent their input as far a possible.
+% strings that represent their input as far as possible.
%
% \begin{macro}{\@@_bookmark_cmd:Nn}
% To keep things fast, expandable versions of the document command are
diff --git a/macros/latex/contrib/siunitx/siunitx.pdf b/macros/latex/contrib/siunitx/siunitx.pdf
index 36c97918d0..02d552c6ad 100644
--- a/macros/latex/contrib/siunitx/siunitx.pdf
+++ b/macros/latex/contrib/siunitx/siunitx.pdf
Binary files differ
diff --git a/macros/latex/contrib/siunitx/siunitx.tex b/macros/latex/contrib/siunitx/siunitx.tex
index 28eaa37b2c..2be2483297 100644
--- a/macros/latex/contrib/siunitx/siunitx.tex
+++ b/macros/latex/contrib/siunitx/siunitx.tex
@@ -1748,7 +1748,9 @@ if no sign was present in the input.
\DescribeOption{print-zero-exponent}
Printing of a mantissa of $1$ and an exponent of $0$ is controllable by the
options \opt{print-unity-mantissa} and \opt{print-zero-exponent}. The standard
-settings print a mantissa of $1$ but omit an exponent of $0$.
+settings print a mantissa of $1$ but omit an exponent of $0$. Notice that where
+both are set to \opt{false}, the value $1$ will still be printed
+(\foreign{i.e.}~\opt{print-zero-exponent} has a higher priority).
\begin{LaTeXdemo}
\num{1e4} \\
\num[print-unity-mantissa = false]{1e4} \\
@@ -1993,7 +1995,7 @@ the \LaTeX3 floating-point unit, so is limited to $16$ decimal places.
\DescribeOption{number-angle-product}
The separator between the number and angle symbol (degrees, minutes or seconds)
can be set using the \opt{number-angle-product} option, independent of the
-related \opt{number-unit-product} option used by the \cs{qty} command.
+related \opt{quantity-product} option used by the \cs{qty} command.
\begin{LaTeXdemo}
\ang{2.67} \\
\ang[number-angle-product = \,]{2.67}
@@ -2102,6 +2104,14 @@ outside of the \cs{unit} and \cs{qty} arguments. When this option is
method to achieve this does not overwrite any existing macros: this behaviour
can be altered using the \opt{overwrite-commands} switch.
+When using the approach of \enquote{free-standing} unit commands, only macros
+created using \cs{DeclareSIUnit} are defined generally. Thus prefixes and
+powers should be combined with the desired unit into a single free-standing
+command, for example
+\begin{LaTeXdemo}[code only]
+ \DeclareSIUnit\kilometre{\kilo\metre}
+\end{LaTeXdemo}
+
\DescribeOption{space-before-unit}
\DescribeOption{unit-optional-argument}
\DescribeOption{use-xspace}
@@ -2324,7 +2334,7 @@ needed. This can be turned on using the \opt{allow-quantity-breaks} option.
\end{minipage}
\end{LaTeXdemo}
-\DescribeOption{number-unit-product}
+\DescribeOption{quantity-product}
The product symbol between the number and unit is set using the
\opt{quantity-product} option.
\begin{LaTeXdemo}
@@ -2742,7 +2752,8 @@ content. However, there are cases where a strictly fixed width is desirable.
For these cases, the \opt{table-fixed-width} and \opt{table-column-width}
options are available. The \opt{table-fixed-width} option activates fixed-width
columns, whilst \opt{table-column-width} defines the target width
-(Table~\ref{tab:width:fixed}).
+(Table~\ref{tab:width:fixed}). Setting \opt{table-column-width} to a positive
+value automatically enables \opt{table-fixed-width}.
\begin{LaTeXdemo}[code and float]
\begin{table}
\caption{Fixed-width columns.%
@@ -3026,6 +3037,10 @@ When the \pkg{physics} package is loaded before \pkg{siunitx}, the command
\cs{qty} is not defined: users will need to use the version~$2$ command
\cs{SI}.
+When the \pkg{units} package is loaded before \pkg{siunitx}, the command
+\cs{unit} is not defined: users will need to use the version~$2$ command
+\cs{si}.
+
\section{Hints for using \pkg{siunitx}}
\subsection{Adjusting \cs{litre} and \cs{liter}%