diff options
author | Karl Berry <karl@freefriends.org> | 2022-02-20 21:21:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-02-20 21:21:01 +0000 |
commit | c7c1e843dca195d32cb6d976f4f75ffd942d573a (patch) | |
tree | 1928290b30332c4fb86094e037a7daa11590688e /Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty | |
parent | 26849a68ecf5a0476ec5bd1fbc4a194b31af0060 (diff) |
linebreaker (20feb22)
git-svn-id: svn://tug.org/texlive/trunk@62106 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty')
-rw-r--r-- | Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty b/Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty new file mode 100644 index 00000000000..2804f4bbe69 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/linebreaker/linebreaker.sty @@ -0,0 +1,31 @@ +\ProvidesPackage{linebreaker} + +\RequirePackage{luatexbase} +\directlua{% +linebreaker = require "linebreaker" +luatexbase.add_to_callback("linebreak_filter", linebreaker.linebreak, "new linebreak callback") +luatexbase.add_to_callback("post_linebreak_filter", linebreaker.post_linebreak, "new linebreak callback") +luatexbase.add_to_callback("hpack_quality", linebreaker.hpack_quality, "Our overfull box reporting function") +} + + +% linebreaker setup +\ExplSyntaxOn +\keys_define:nn{linebreaker}{ + debug .code:n = \directlua{linebreaker.debug=true}, + maxtolerance .code:n = \directlua{linebreaker.max_tolerance = tonumber("#1")}, + maxemergencystretch .code:n = \directlua{linebreaker.max_emergencystretch = tex.sp("#1")}, + maxcycles .code:n = \directlua{linebreaker.max_cycles = tonumber("#1")}, +} +\NewDocumentCommand{\linebreakersetup}{m}{ +\keys_set:nn {linebreaker} {#1} +} +\ExplSyntaxOff + +% enable/disable linebreaker +\NewDocumentCommand{\linebreakerenable}{}{\directlua{linebreaker.active=true}} +\NewDocumentCommand{\linebreakerdisable}{}{\directlua{linebreaker.active=false}} + + + +\endinput |