summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/embrac
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-01-05 23:48:51 +0000
committerKarl Berry <karl@freefriends.org>2020-01-05 23:48:51 +0000
commit46b4be03e0a86a0f4eeca053d9a5ce7350749e3d (patch)
tree37ccee9704f869177d1673402466200bccec370f /Master/texmf-dist/tex/latex/embrac
parentb8b82d8520dcef89f00ec840eb0bb213b04762ce (diff)
embrac
git-svn-id: svn://tug.org/texlive/trunk@53334 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/embrac')
-rw-r--r--Master/texmf-dist/tex/latex/embrac/embrac.sty109
1 files changed, 56 insertions, 53 deletions
diff --git a/Master/texmf-dist/tex/latex/embrac/embrac.sty b/Master/texmf-dist/tex/latex/embrac/embrac.sty
index 279291a5537..55786b982af 100644
--- a/Master/texmf-dist/tex/latex/embrac/embrac.sty
+++ b/Master/texmf-dist/tex/latex/embrac/embrac.sty
@@ -34,8 +34,8 @@
\RequirePackage { expl3 , xparse , l3keys2e }
\ProvidesExplPackage
{embrac}
- {2019/10/01}
- {0.8}
+ {2019/12/31}
+ {0.9}
{Upright Brackets in Emphasized Text}
% --------------------------------------------------------------------------
@@ -89,13 +89,10 @@
}
\cs_new_protected:Npn \embrac_nobreak:
- { \embrac_allow_break:n {10000} }
+ { \tex_penalty:D 10000 \scan_stop: }
-\cs_new_protected:Npn \embrac_allow_break:n #1
- { \tex_penalty:D #1 \scan_stop: }
-
-\cs_new_protected:Npn \embrac_save_penalty:
- { \int_set:Nn \l__embrac_penalty_int { \lastpenalty } }
+\cs_new_protected:Npn \embrac_allow_break:
+ { \tex_penalty:D 0 \scan_stop: }
% --------------------------------------------------------------------------
% THE MAIN PART:
@@ -110,29 +107,28 @@
\bool_new:N \l__embrac_opening_bool
% #1: tl macro
-% #2: code before
-% #3: kerning before
-% #4: symbol
-% #5: kerning after
-% #6: code after
-\cs_new_protected:Npn \__embrac_replace:Nnnnnn #1#2#3#4#5#6
- {
- \tl_replace_all:Nnn #1 {#4}
+% #2: kerning before
+% #3: symbol
+% #4: kerning after
+% #5: code after
+\cs_new_protected:Npn \__embrac_replace:Nnnnn #1#2#3#4#5
+ {
+ \tl_replace_all:Nnn #1 {#3}
{
\mode_if_math:TF
{#4}
{
- #2
- \embrac_kern:n {#3}
\embrac_nobreak:
- \embrac_braces_format:n {#4}
+ \embrac_kern:n {#2}
+ \embrac_nobreak:
+ \embrac_braces_format:n {#3}
\embrac_nobreak:
- \embrac_kern:n {#5}
- #6
+ \embrac_kern:n {#4}
+ #5
}
}
}
-\cs_generate_variant:Nn \__embrac_replace:Nnnnnn {Nnxx,Nnnxx}
+\cs_generate_variant:Nn \__embrac_replace:Nnnnn {Nxx,Nnxx}
% do the replacing:
% #1: tl macro
@@ -140,8 +136,7 @@
{
\prop_map_inline:Nn \l__embrac_emph_obrackets_inner_prop
{
- \__embrac_replace:Nnxxnn #1
- { \embrac_allow_break:n { \lastpenalty } }
+ \__embrac_replace:Nxxnn #1
{ \prop_item:Nn \l__embrac_emph_obrackets_outer_prop {##1} }
{ \prop_item:Nn \l__embrac_emph_obrackets_symbol_prop {##1} }
{##2}
@@ -149,39 +144,42 @@
}
\prop_map_inline:Nn \l__embrac_emph_cbrackets_inner_prop
{
- \__embrac_replace:Nnnxxn #1
- { \embrac_save_penalty: \embrac_nobreak: }
+ \__embrac_replace:Nnxxn #1
{##2}
{ \prop_item:Nn \l__embrac_emph_cbrackets_symbol_prop {##1} }
{ \prop_item:Nn \l__embrac_emph_cbrackets_outer_prop {##1} }
- { \embrac_allow_break:n { \l__embrac_penalty_int } }
+ {
+ \peek_charcode:NTF \c_space_tl
+ { \embrac_allow_break: }
+ { \embrac_nobreak: }
+ }
}
}
\cs_new_protected:Npn \embrac_enparen:nnn #1#2#3
{
- \group_begin:
- \embrac_allow_break:n { \lastpenalty }
- \embrac_kern:n
- { \prop_item:Nn \l__embrac_emph_obrackets_outer_prop {#1} }
- \embrac_nobreak:
- \embrac_braces_format:n
- { \prop_item:Nn \l__embrac_emph_obrackets_symbol_prop {#1} }
- \embrac_nobreak:
- \embrac_kern:n
- { \prop_item:Nn \l__embrac_emph_obrackets_inner_prop {#1} }
- #3
- \embrac_save_penalty: \embrac_nobreak:
- \embrac_kern:n
- { \prop_item:Nn \l__embrac_emph_cbrackets_inner_prop {#2} }
- \embrac_nobreak:
- \embrac_braces_format:n
- { \prop_item:Nn \l__embrac_emph_cbrackets_symbol_prop {#2} }
- \embrac_nobreak:
- \embrac_kern:n
- { \prop_item:Nn \l__embrac_emph_cbrackets_outer_prop {#2} }
- \embrac_allow_break:n { \l__embrac_penalty_int }
- \group_end:
+ \embrac_nobreak:
+ \embrac_kern:n
+ { \prop_item:Nn \l__embrac_emph_obrackets_outer_prop {#1} }
+ \embrac_nobreak:
+ \embrac_braces_format:n
+ { \prop_item:Nn \l__embrac_emph_obrackets_symbol_prop {#1} }
+ \embrac_nobreak:
+ \embrac_kern:n
+ { \prop_item:Nn \l__embrac_emph_obrackets_inner_prop {#1} }
+ #3
+ \embrac_nobreak:
+ \embrac_kern:n
+ { \prop_item:Nn \l__embrac_emph_cbrackets_inner_prop {#2} }
+ \embrac_nobreak:
+ \embrac_braces_format:n
+ { \prop_item:Nn \l__embrac_emph_cbrackets_symbol_prop {#2} }
+ \embrac_nobreak:
+ \embrac_kern:n
+ { \prop_item:Nn \l__embrac_emph_cbrackets_outer_prop {#2} }
+ \peek_charcode:NTF \c_space_tl
+ { \embrac_allow_break: }
+ { \embrac_nobreak: }
}
% --------------------------------------------------------------------------
@@ -243,11 +241,14 @@
}
}
-\embrac_new_replacement_macro:n {emph}
-\embrac_new_replacement_macro:n {textit}
-\embrac_new_replacement_macro:n {textsl}
+\NewDocumentCommand \EmbracMakeKnown {m}
+ { \embrac_new_replacement_macro:n {#1} }
+
+\EmbracMakeKnown {emph}
+\EmbracMakeKnown {textit}
+\EmbracMakeKnown {textsl}
\AtBeginDocument
- { \embrac_if_fontspec:T { \embrac_new_replacement_macro:n {textsi} } }
+ { \embrac_if_fontspec:T { \EmbracMakeKnown {textsi} } }
% --------------------------------------------------------------------------
% TURNING EMBRAC OFF AND ON:
@@ -518,3 +519,5 @@
other than 12 is possible)
2019/10/01 - v0.8 - fix issue #9
- new macros \embparen, \embbracket and \emb
+2019/12/31 - v0.9 - new: \EmbracMakeKnown
+ - change penalties