summaryrefslogtreecommitdiff
path: root/macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv')
-rw-r--r--macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv48
1 files changed, 23 insertions, 25 deletions
diff --git a/macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv b/macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv
index 1e52f8d901..090ff5aa80 100644
--- a/macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv
+++ b/macros/luatex/generic/lua-widow-control/t-lua-widow-control.mkiv
@@ -1,10 +1,10 @@
%D \module
%D [ file=t-lua-widow-control,
-%D version=2.0.6, %%version
+%D version=2.1.0, %%version
%D title=lua-widow-control,
%D subtitle=\ConTeXt module for lua-widow-control,
%D author=Max Chernoff,
-%D date=2022-04-23, %%dashdate
+%D date=2022-05-14, %%dashdate
%D copyright=Max Chernoff,
%D license=MPL-2.0+,
%D url=https://github.com/gucci-on-fleek/lua-widow-control]
@@ -16,39 +16,36 @@
\installcommandhandler \????lwc {lwc} \????lwc
\newdimen\lwc_emergency_stretch
+\newcount\lwc_max_cost
\appendtoks
\lwc_emergency_stretch=\lwcparameter{emergencystretch}
-\to\everysetuplwc
-\appendtoks
\doifelse{\lwcparameter{\c!state}}\v!start{
- \ctxlua{lwc.enable_callbacks()}
+ \lwc_enable
}{
- \ctxlua{lwc.disable_callbacks()}
+ \lwc_disable
}
-\to\everysetuplwc
-\appendtoks
- \doifelse{\lwcparameter{debug}}\v!start{
- \ctxlua{lwc.debug = true}
- }{
- \ctxlua{lwc.debug = false}
- }
-\to\everysetuplwc
+ \lwc_debug{\lwcparameter{debug}}
-\appendtoks
- \ctxlua{lwc.nobreak_behaviour = "\lwcparameter{nobreak}"}
-\to\everysetuplwc
+ \lwc_nobreak{\lwcparameter{nobreak}}
-\newcount\lwc_max_cost
-\appendtoks
\lwc_max_cost=\lwcparameter{maxcost}
-\to\everysetuplwc
-\appendtoks
% We can't just set the penalties because they will be reset automatically
% at \\starttext.
\startsetups[*default]
+ \directsetup{*reset}
+
+ \clubpenalty=\lwcparameter{orphanpenalty}
+ \widowpenalty=\lwcparameter{widowpenalty}
+ \displaywidowpenalty=\lwcparameter{widowpenalty}
+ \brokenpenalty=\lwcparameter{brokenpenalty}
+ \stopsetups
+
+ \startsetups[grid][*default]
+ \directsetup{*reset}
+
\clubpenalty=\lwcparameter{orphanpenalty}
\widowpenalty=\lwcparameter{widowpenalty}
\displaywidowpenalty=\lwcparameter{widowpenalty}
@@ -58,8 +55,6 @@
\setups[*default]
\to\everysetuplwc
-\define\iflwc{\ctxlua{lwc.if_lwc_enabled()}}
-
\ctxloadluafile{lua-widow-control}
\setuplwc[
@@ -86,14 +81,14 @@
\newcount\lwc_disable_count
\define\lwc_patch_pre{%
- \iflwc%
+ \lwc_if_enabled%
\advance\lwc_disable_count by 1%
\setuplwc[\c!state=\v!stop]%
\fi%
}
\define\lwc_patch_post{
- \ifnum\lwc_disable_count>0%
+ \ifnum\lwc_disable_count>0\relax%
\setuplwc[\c!state=\v!start]%
\advance\lwc_disable_count by -1%
\fi%
@@ -102,5 +97,8 @@
\prependtoks\lwc_patch_pre\to\everybeforesectionheadhandle % Sectioning
\prependtoks\lwc_patch_post\to\everyaftersectionheadhandle
+% Make the commands public
+\let\iflwc=\lwc_if_enabled
+
\protect
\stopmodule