2 % lltjp-siunitx.sty 2021-10-31
5 \NeedsTeXFormat{LaTeX2e}
7 \RequirePackage{siunitx}
10 \cs_if_exist:NTF \siunitx_print_text:n {% siunitx v3.00
11 \cs_set_protected:Npn \siunitx_print_text:n #1
15 \ltj@allalchar % <--- LuaTeX-ja
16 \bool_if:NT \l__siunitx_print_text_family_bool
18 \fontfamily { \familydefault }
21 \bool_if:NT \l__siunitx_print_text_series_bool
23 \fontseries { \seriesdefault }
26 \bool_if:NT \l__siunitx_print_text_shape_bool
28 \fontshape { \shapedefault }
31 \__siunitx_print_text_replace:n {#1}
34 \cs_set_eq:NN \ltj_orig__siunitx_table_collect_begin:w \__siunitx_table_collect_begin:w
35 \cs_set_protected:Npn \__siunitx_table_collect_begin:w #1 \relax
36 { \ltj_orig__siunitx_table_collect_begin:w }
39 \cs_generate_variant:Nn \tl_if_in:NnT { coT }
40 \cs_new:Nn \__ltj_siunix_patch_inner:n {
41 \cs_if_exist:cT { #1_tl } {
42 \tl_if_in:coT { #1_tl } { \tex_char:D } {
43 \tl_replace_all:cnn { #1_tl } { \tex_char:D } { \ltjalchar }
47 \cs_new:Nn \__ltj_siunix_patch_inner_math:n {
48 \__ltj_siunix_patch_inner:n { l__siunitx_#1_math }
49 \__ltj_siunix_patch_inner:n { l__siunitx_#1_text }
52 \__ltj_siunix_patch_inner:n { c__siunitx_minus }
53 \__ltj_siunix_patch_inner:n { c__siunitx_mu }
54 \__ltj_siunix_patch_inner_math:n { angstrom }
55 \__ltj_siunix_patch_inner_math:n { arcminute }
56 \__ltj_siunix_patch_inner_math:n { arcsecond }
57 \__ltj_siunix_patch_inner_math:n { ohm }
60 %%%% new table column: S and s
61 \bool_new:N \l__ltj_siunitx_table_collect_relax_bool
62 \cs_set_protected:Npn \__siunitx_table_collect_begin_s: {
63 \bool_set_false:N \l__ltj_siunitx_table_collect_relax_bool
64 \cs_set_eq:NN \__siunitx_table_collect_token:N
65 \__siunitx_table_collect_token_s:N
66 \cs_set_eq:NN \__siunitx_table_print: \__siunitx_table_print_s:
67 \__siunitx_table_collect_init_s:
68 \__siunitx_table_collect_get:
71 \cs_set_protected:Npn \__siunitx_table_collect_not_braced:N #1
73 \token_if_eq_meaning:NNTF #1 \tex_relax:D {
74 \bool_if:NTF \l__ltj_siunitx_table_collect_relax_bool {
75 \__siunitx_table_collect_not_braced_aux_i:N #1
77 \bool_set_true:N \l__ltj_siunitx_table_collect_relax_bool
80 \token_if_eq_meaning:NNF #1 \ltjfakeboxbdd {
81 \token_if_eq_meaning:NNF #1 \pltx@next@inhibitglue {
82 \token_if_eq_meaning:NNF #1 \tex_ignorespaces:D
84 \token_if_eq_meaning:NNF #1 \tex_unskip:D
85 { \__siunitx_table_collect_not_braced_aux_i:N #1 }
88 \__siunitx_table_collect_next:
93 \@ifpackageloaded { mdwtab }
95 \cs_set_protected:Npn \__siunitx_table_collect_not_braced:N #1
97 \token_if_eq_meaning:NNTF #1 \tex_relax:D {
98 \bool_if:NTF \l__ltj_siunitx_table_collect_relax_bool {
99 \__siunitx_table_collect_not_braced_aux_i:N #1
101 \bool_set_true:N \l__ltj_siunitx_table_collect_relax_bool
104 \token_if_eq_meaning:NNF #1 \ltjfakeboxbdd {
105 \token_if_eq_meaning:NNF #1 \pltx@next@inhibitglue {
106 \token_if_eq_meaning:NNF #1 \tex_ignorespaces:D
108 \token_if_eq_meaning:NNF #1 \tex_unskip:D
110 \token_if_eq_meaning:NNF #1 \tab@setcr
112 \token_if_eq_meaning:NNF #1 \@maybe@unskip
113 { \__siunitx_table_collect_not_braced_aux_i:N #1 }
118 \__siunitx_table_collect_next: