summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/chemformula
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-01-09 22:29:43 +0000
committerKarl Berry <karl@freefriends.org>2016-01-09 22:29:43 +0000
commite4f647b8b85aacc98046b96d379b53ff4efa36c0 (patch)
tree846838a1abd5ce699f10a3dc7bf2503fc2fb327f /Master/texmf-dist/tex/latex/chemformula
parent5f3c1c2ceedbec84321884f8ac5a1a8f9c4ae1b5 (diff)
chemformula (9jan16)
git-svn-id: svn://tug.org/texlive/trunk@39332 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/chemformula')
-rw-r--r--Master/texmf-dist/tex/latex/chemformula/chemformula.sty89
1 files changed, 66 insertions, 23 deletions
diff --git a/Master/texmf-dist/tex/latex/chemformula/chemformula.sty b/Master/texmf-dist/tex/latex/chemformula/chemformula.sty
index cea54bf7107..6115486b295 100644
--- a/Master/texmf-dist/tex/latex/chemformula/chemformula.sty
+++ b/Master/texmf-dist/tex/latex/chemformula/chemformula.sty
@@ -12,7 +12,7 @@
% If you have any ideas, questions, suggestions or bugs to report, please
% feel free to contact me.
% --------------------------------------------------------------------------
-% Copyright 2011-2015 Clemens Niederberger
+% Copyright 2011-2016 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -30,8 +30,8 @@
\usetikzlibrary{arrows.meta}
\ExplSyntaxOn
-\tl_const:Nn \c_chemformula_date_tl {2015/10/01}
-\tl_const:Nn \c_chemformula_version_number_tl {4.14}
+\tl_const:Nn \c_chemformula_date_tl {2016/01/07}
+\tl_const:Nn \c_chemformula_version_number_tl {4.14a}
\tl_const:Nn \c_chemformula_version_suffix_tl {}
\tl_const:Nx \c_chemformula_version_tl
{ \c_chemformula_version_number_tl \c_chemformula_version_suffix_tl }
@@ -147,7 +147,7 @@
\cs_generate_variant:Nn \tl_set:Nn { cV }
\cs_generate_variant:Nn \tl_replace_all:Nnn { NV }
\cs_generate_variant:Nn \tl_set_rescan:Nnn { NnV }
-\cs_generate_variant:Nn \prop_get:Nn { NV }
+\cs_generate_variant:Nn \prop_item:Nn { NV }
\cs_generate_variant:Nn \dim_set:Nn { NV }
\cs_generate_variant:Nn \skip_set:Nn { cV }
\cs_generate_variant:Nn \str_if_eq:nnT { V }
@@ -286,7 +286,6 @@
\tl_new:N \l__chemformula_arrow_style_tl
\tl_new:N \l__chemformula_arrow_label_style_tl
\tl_set:Nn \l__chemformula_arrow_label_style_tl { \footnotesize }
-\tl_new:N \l__chemformula_arrow_tmp_tl
\tl_new:N \l__chemformula_arrow_type_tl
\tl_new:N \l__chemformula_arrow_penalty_tl
\tl_set:Nn \l__chemformula_arrow_penalty_tl { 0 }
@@ -294,7 +293,6 @@
\tl_set:Nn \l__chemformula_arrow_offset_tl { .75em }
\tl_new:N \l__chemformula_bond_penalty_tl
\tl_set:Nn \l__chemformula_bond_penalty_tl { 10000 }
-\tl_new:N \l__chemformula_name_tmp_tl
\tl_new:N \l__chemformula_chemformula_tmpa_tl
\tl_new:N \g__chemformula_options_tl
\tl_new:N \g__chemformula_output_tl
@@ -479,8 +477,8 @@
\cs_new_protected:Npn \chemformula_plain_plus:
{
\bool_if:NTF \l__chemformula_charge_style_math_bool
- { \ensuremath { + } }
- { \mode_if_math:TF { \text { + } } { + } }
+ { \ensuremath {+} }
+ { \mode_if_math:TF { \text {+} } {+} }
}
\cs_new_protected:Npn \chemformula_formal_plus:
@@ -504,7 +502,7 @@
\cs_new_protected:Npn \chemformula_plain_minus:
{
\bool_if:NTF \l__chemformula_charge_style_math_bool
- { \ensuremath { - } }
+ { \ensuremath {-} }
{ \mode_if_math:TF { \text { \textendash } } { \textendash } }
}
@@ -1208,7 +1206,7 @@
\tl_replace_all:Nnn \l__chemformula_tmpa_tl
{##1} { \charrow {##1} }
}
- \tl_set_eq:NN #1 \l__chemformula_tmpa_tl
+ \tl_set:NV #1 \l__chemformula_tmpa_tl
}
\cs_generate_variant:Nn \__chemformula_generate_arrows:Nn { NV }
@@ -1233,19 +1231,36 @@
\cs_new_protected:Npn \chemformula_chwritebelow:nn #1#2
{
+ % \tl_set:Nn \l_tmpa_tl {#1} \show \l_tmpa_tl
+ % \tl_set:Nn \l_tmpa_tl {#2} \show \l_tmpa_tl
\c_math_toggle_token
\underset
{
\bool_if:NF \l__chemformula_name_width_bool
{
\chemformula_dim_to_width:Nn \l__chemformula_name_dim
- { \l__chemformula_name_format_tl #1 }
+ {
+ \chemformula_group_begin:
+ \l__chemformula_name_format_tl #1
+ \chemformula_group_end:
+ }
}
\parbox
{ \dim_use:N \l__chemformula_name_dim }
- { \l__chemformula_name_format_tl #1 }
+ {
+ \chemformula_group_begin:
+ \l__chemformula_name_format_tl #1
+ \chemformula_group_end:
+ }
+ }
+ {
+ \text
+ {
+ \chemformula_group_begin:
+ \strut #2
+ \chemformula_group_end:
+ }
}
- { \text { \strut #2 } }
\c_math_toggle_token
}
@@ -1258,7 +1273,7 @@
{ ! }
{ \__chemformula_name_cmpd:w }
}
- \tl_set_eq:NN #1 \l__chemformula_tmpa_tl
+ \tl_set:NV #1 \l__chemformula_tmpa_tl
}
\cs_generate_variant:Nn \__chemformula_generate_name:Nn { NV }
@@ -1450,7 +1465,7 @@
\cs_new_protected:Npn \__chemformula_bond_draw:n #1
{
\__chemformula_reset:Nn \l__chemformula_tmpa_tl {#1}
- \prop_get:NV \l__chemformula_bonds_prop
+ \prop_item:NV \l__chemformula_bonds_prop
\l__chemformula_tmpa_tl
}
@@ -2146,7 +2161,7 @@
{
\tl_put_right:Nn #1
{
- \group_begin:
+ \chemformula_group_begin:
% open group
\keys_set:nV
{chemformula}
@@ -2170,7 +2185,7 @@
\tl_put_right:Nn #1
{
% end group
- \group_end:
+ \chemformula_group_end:
\tl_clear:N \l__chemformula_internal_options_tl
}
\bool_set_false:N \l__chemformula_options_bool
@@ -2185,6 +2200,24 @@
}
\cs_generate_variant:Nn \__chemformula_input_cmpd:Nn { NV }
+\bool_new:N \g__chemformula_cmpd_group_open_bool
+\cs_new_protected:Npn \chemformula_group_begin:
+ {
+ \bool_if:NF \g__chemformula_cmpd_group_open_bool
+ {
+ % \group_begin:
+ \bool_gset_true:N \g__chemformula_cmpd_group_open_bool
+ }
+ }
+\cs_new_protected:Npn \chemformula_group_end:
+ {
+ \bool_if:NT \g__chemformula_cmpd_group_open_bool
+ {
+ % \group_end:
+ \bool_gset_false:N \g__chemformula_cmpd_group_open_bool
+ }
+ }
+
\cs_new_protected:Npn \chemformula_font_inner:
{
\bool_if:NT \l__chemformula_fss_bool
@@ -2338,7 +2371,7 @@
% start formula
\tl_put_left:Nn \l__chemformula_tmpa_tl
{
- \group_begin:
+ \chemformula_group_begin:
\l__chemformula_atom_format_tl
}
\int_zero:N \l__chemformula_count_tokens_int
@@ -2377,7 +2410,7 @@
{ \tl_put_right:Nn #1 {##1} }
}
}
- \tl_put_right:Nn #1 { \group_end: }
+ \tl_put_right:Nn #1 { \chemformula_group_end: }
% if Kroeger-Vink notation is active:
\bool_if:NT \l__chemformula_kroegervink_bool
{
@@ -2592,8 +2625,8 @@
!\l__chemformula_first_last_math_bool
}
{
- \__chemformula_generate_arrows:Nn \l__chemformula_arrow_tmp_tl {#1}
- \tl_put_right:NV \l__chemformula_input_tl \l__chemformula_arrow_tmp_tl
+ \__chemformula_generate_arrows:Nn \l__chemformula_tmpa_tl {#1}
+ \tl_put_right:NV \l__chemformula_input_tl \l__chemformula_tmpa_tl
}
\bool_set_false:N \l__chemformula_is_arrow_bool
}
@@ -2610,8 +2643,8 @@
!\l__chemformula_first_last_math_bool
}
{
- \__chemformula_generate_name:Nn \l__chemformula_name_tmp_tl {#1}
- \tl_put_right:NV \l__chemformula_input_tl \l__chemformula_name_tmp_tl
+ \__chemformula_generate_name:Nn \l__chemformula_tmpa_tl {#1}
+ \tl_put_right:NV \l__chemformula_input_tl \l__chemformula_tmpa_tl
}
\bool_set_false:N \l__chemformula_is_name_bool
}
@@ -2671,6 +2704,11 @@
{ _ } { \sb }
\tl_replace_all:Nnn \l__chemformula_tmpa_tl
{ chemformulaplaceholder } { \_ }
+ % those cause trouble with chemmacros' \ox:
+ % \tl_put_left:Nn \l__chemformula_tmpa_tl
+ % { \chemformula_group_begin: }
+ % \tl_put_right:Nn \l__chemformula_tmpa_tl
+ % { \chemformula_group_end: }
% TODO: waum ist das auskommentiert
% \__chemformula_reset:NV \l__chemformula_tmpa_tl \l__chemformula_tmpa_tl
\tl_put_right:NV \l__chemformula_input_tl \l__chemformula_tmpa_tl
@@ -2732,6 +2770,10 @@
\tl_replace_all:Nnn \l__chemformula_tmpa_tl
{ chemformulaplaceholder } { \_ }
% \__chemformula_reset:NV \l__chemformula_tmpa_tl \l__chemformula_tmpa_tl
+ \tl_put_left:Nn \l__chemformula_tmpa_tl
+ { \chemformula_group_begin: }
+ \tl_put_right:Nn \l__chemformula_tmpa_tl
+ { \chemformula_group_end: }
\tl_put_right:NV \l__chemformula_input_tl \l__chemformula_tmpa_tl
\tl_put_right:Nn \l__chemformula_input_tl
{ \chemformula_skip_nobreak:N \l__chemformula_math_space_skip }
@@ -3310,6 +3352,7 @@ VERSION HISTORY
2015/10/21 - version 4.14 - fix issue
https://github.com/cgnieder/chemformula/issues/2
- new option `adduct-penalty'
+2016/01/07 - version 4.14a - \prop_get:Nn => \prop_item:Nn
% --------------------------------------------------------------------------
% TODO