diff --git a/classes/base.lua b/classes/base.lua index ac6405bc6..d12cd33ec 100644 --- a/classes/base.lua +++ b/classes/base.lua @@ -697,15 +697,15 @@ end -- WARNING: not called as class method function class.endPar (typesetter) SILE.settings:set("current.parindent", nil) - typesetter:pushVglue(SILE.settings:get("document.parskip")) - if SILE.settings:get("current.hangIndent") then - SILE.settings:set("current.hangIndent", nil) - SILE.settings:set("linebreak.hangIndent", nil) - end - if SILE.settings:get("current.hangAfter") then - SILE.settings:set("current.hangAfter", nil) - SILE.settings:set("linebreak.hangAfter", nil) + -- If we're already explicitly out of hmode don't do anything special in the way of skips or indents. Assume the user + -- has handled that how they want, e.g. with a skip. + local queue = typesetter.state.outputQueue + local last_vbox = queue and queue[#queue] + if typesetter:vmode() and last_vbox and last_vbox.is_vglue then + return end + typesetter:leaveHmode() + typesetter:pushVglue(SILE.settings:get("document.parskip")) end function class:newPage () @@ -725,6 +725,7 @@ end function class:finish () SILE.inputter:postamble() + SILE.typesetter:endline() SILE.call("vfill") while not SILE.typesetter:isQueueEmpty() do SILE.call("supereject") diff --git a/classes/book.lua b/classes/book.lua index 4388d1ed1..7289477f7 100644 --- a/classes/book.lua +++ b/classes/book.lua @@ -166,6 +166,7 @@ function class:registerCommands () if SILE.Commands[postcmd .. ":" .. lang] then postcmd = postcmd .. ":" .. lang end + SILE.call("nofoliothispage") SILE.call(postcmd) SILE.call("book:chapterfont", {}, content) SILE.call("left-running-head", {}, function () @@ -173,8 +174,8 @@ function class:registerCommands () SILE.call("book:left-running-head-font", {}, content) end) end) + SILE.call("par") SILE.call("bigskip") - SILE.call("nofoliothispage") -- English typography (notably) expects the first paragraph under a section -- not to be indented. Frenchies, don't use this class :) SILE.call("noindent") @@ -214,6 +215,7 @@ function class:registerCommands () end) end) end + SILE.call("par") SILE.call("novbreak") SILE.call("bigskip") SILE.call("novbreak") diff --git a/classes/plain.lua b/classes/plain.lua index 08fcd337d..149694153 100644 --- a/classes/plain.lua +++ b/classes/plain.lua @@ -78,8 +78,16 @@ function class:registerCommands () self:registerCommand("noindent", function (_, content) if #SILE.typesetter.state.nodes ~= 0 then - SU.warn( - "\\noindent called after nodes already received in a paragraph, the setting will have no effect because the parindent (if any) has already been output" + SU.warn([[\noindent was called after paragraph content has already been procesed. + + This will not result in avoiding the current paragraph being indented. + This function must be called before any content belonging to the + paragraph is processed. If the intent was to suppress indentation of a + following paragraph, first explicitly close the current paragraph. From + an input document this is typically done with an empty line between + paragraphs, but calling the \par command explicitly or from Lua code + running SILE.call("par") will end the current paragraph. +]] ) end SILE.settings:set("current.parindent", SILE.types.node.glue()) diff --git a/tests/alignment.expected b/tests/alignment.expected index be4fe4129..5e51c68d7 100644 --- a/tests/alignment.expected +++ b/tests/alignment.expected @@ -168,7 +168,7 @@ Mx 4.4700 Mx 5.4200 T 72 a=5.0000 86 a=5.3100 67 a=4.9300 70 a=4.4700 83 a=3.7200 72 a=5.0000 83 a=3.7200 70 a=4.4700 79 a=5.4200 (gubergren) Mx 26.8819 -My 95.9564 +My 85.9564 Set font Libertinus Serif;10;400;Italic;normal;;;LTR Mx 5.8700 Mx 4.5700 @@ -200,7 +200,7 @@ T 68 80 79 84 70 85 70 85 86 83 w=42.9300 (consetetur) Mx 239.8919 T 84 66 69 74 81 84 68 74 79 72 w=42.7400 (sadipscing) Mx 14.8819 -My 107.9564 +My 97.9564 T 70 77 74 85 83 w=16.7000 (elitr) Mx 33.8353 Mx 3.9000 @@ -250,7 +250,7 @@ Mx 3.6400 Mx 4.4700 T 69 a=5.0600 80 a=5.0400 77 a=2.6400 80 a=5.0400 83 a=3.7200 70 a=4.4700 (dolore) Mx 14.8819 -My 119.9564 +My 109.9564 T 78 66 72 79 66 w=27.4600 (magna) Mx 44.8368 T 66 77 74 82 86 90 66 78 w=37.8800 (aliquyam) @@ -293,7 +293,7 @@ T 66 68 68 86 84 66 78 w=34.8100 (accusam) Mx 275.1259 T 70 85 w=7.6300 (et) Mx 14.8819 -My 131.9564 +My 121.9564 T 75 86 84 85 80 w=20.1300 (justo) Mx 37.5119 T 69 86 80 w=15.4100 (duo) @@ -335,7 +335,7 @@ Mx 4.4700 Mx 5.4200 T 72 a=5.0000 86 a=5.3100 67 a=4.9300 70 a=4.4700 83 a=3.7200 72 a=5.0000 83 a=3.7200 70 a=4.4700 79 a=5.4200 (gubergren) Mx 18.9889 -My 163.9564 +My 143.9564 Set font Libertinus Serif;10;400;Italic;normal;;;LTR Mx 6.4600 Mx 4.4700 @@ -369,7 +369,7 @@ T 84 66 69 74 81 84 68 74 79 72 w=42.7400 (sadipscing) Mx 261.9489 T 70 77 74 85 83 w=16.7000 (elitr) Mx 23.2489 -My 175.9564 +My 155.9564 Mx 3.9000 Mx 4.5400 Mx 5.0600 @@ -417,7 +417,7 @@ Mx 3.6400 Mx 4.4700 T 69 a=5.0600 80 a=5.0400 77 a=2.6400 80 a=5.0400 83 a=3.7200 70 a=4.4700 (dolore) Mx 14.8819 -My 187.9564 +My 167.9564 T 78 66 72 79 66 w=27.4600 (magna) Mx 44.8368 T 66 77 74 82 86 90 66 78 w=37.8800 (aliquyam) @@ -460,7 +460,7 @@ T 66 68 68 86 84 66 78 w=34.8100 (accusam) Mx 275.1259 T 70 85 w=7.6300 (et) Mx 37.0639 -My 199.9564 +My 179.9564 T 75 86 84 85 80 w=20.1300 (justo) Mx 59.6939 T 69 86 80 w=15.4100 (duo) @@ -502,7 +502,7 @@ Mx 4.4700 Mx 5.4200 T 72 a=5.0000 86 a=5.3100 67 a=4.9300 70 a=4.4700 83 a=3.7200 72 a=5.0000 83 a=3.7200 70 a=4.4700 79 a=5.4200 (gubergren) Mx 26.8819 -My 231.9564 +My 201.9564 Set font Libertinus Serif;10;400;Italic;normal;;;LTR Mx 3.2200 Mx 5.3100 @@ -536,7 +536,7 @@ T 84 66 69 74 81 84 68 74 79 72 w=42.7400 (sadipscing) Mx 266.0559 T 70 77 74 85 83 w=16.7000 (elitr) Mx 14.8819 -My 243.9564 +My 213.9564 Mx 3.9000 Mx 4.5400 Mx 5.0600 @@ -588,7 +588,7 @@ T 78 66 w=12.4700 (ma) Mx 279.3759 T 14 w=3.3800 (-) Mx 14.8819 -My 255.9564 +My 225.9564 T 72 79 66 w=14.9900 (gna) Mx 33.5004 T 66 77 74 82 86 90 66 78 w=37.8800 (aliquyam) @@ -631,7 +631,7 @@ T 66 68 68 86 84 66 78 w=34.8100 (accusam) Mx 275.1259 T 70 85 w=7.6300 (et) Mx 14.8819 -My 267.9564 +My 237.9564 T 75 86 84 85 80 w=20.1300 (justo) Mx 37.5174 T 69 86 80 w=15.4100 (duo) @@ -673,7 +673,7 @@ Mx 4.4700 Mx 5.4200 T 72 a=5.0000 86 a=5.3100 67 a=4.9300 70 a=4.4700 83 a=3.7200 72 a=5.0000 83 a=3.7200 70 a=4.4700 79 a=5.4200 (gubergren) Mx 138.2259 -My 299.9564 +My 259.9564 Set font Libertinus Serif;10;400;Italic;normal;;;LTR T 51 74 72 73 85 w=22.1200 (Right) Mx 162.8459 diff --git a/tests/bug-1647.sil b/tests/bug-1647.sil index 0a71bbbed..58ad26447 100644 --- a/tests/bug-1647.sil +++ b/tests/bug-1647.sil @@ -8,6 +8,7 @@ This paragraph is at the page top. This paragraph has a big parskip before it. + \vfill This paragraph must be at the page bottom. \par diff --git a/tests/bug-262.expected b/tests/bug-262.expected index b399b878a..b4bf3d414 100644 --- a/tests/bug-262.expected +++ b/tests/bug-262.expected @@ -201,19 +201,13 @@ T 72 87 w=8.0615 (et) Mx 252.9827 My 43.4739 T 55 75 76 86 w=17.5977 (This) -Mx 273.2242 +Mx 273.2254 T 76 86 w=6.5723 (is) -Mx 282.4402 +Mx 282.4427 T 68 81 w=10.1074 (an) -Mx 295.1915 +Mx 295.1952 T 76 81 71 72 81 87 72 71 w=36.8262 (indented) -Mx 334.6615 -T 72 81 w=10.1367 (en) -Mx 344.7982 -T 89 76 w=7.6416 (vi) -Mx 352.4398 -T 85 82 81 w=14.5068 (ron) -Mx 366.9466 -T 80 72 81 87 w=21.6113 (ment) +Mx 334.6664 +T 72 81 89 76 85 82 81 80 72 81 87 w=53.8965 (environment) End page Finish diff --git a/tests/bug-301.expected b/tests/bug-301.expected index e9c59861e..b391a72bc 100644 --- a/tests/bug-301.expected +++ b/tests/bug-301.expected @@ -59,7 +59,7 @@ T 45 82 75 81 w=18.1604 (John) Mx 146.8685 T 43 68 81 70 82 70 78 w=33.5283 (Hancock) Mx 37.4104 -My 225.7379 +My 224.7379 T 36 w=5.6545 (A) Mx 47.0753 T 79 76 81 72 w=14.7788 (line) @@ -76,7 +76,7 @@ T 83 68 85 68 74 85 68 83 75 w=40.5466 (paragraph) Mx 164.2543 T 87 75 68 87 w=16.1426 (that) Mx 17.4104 -My 242.7423 +My 241.7423 T 90 85 68 83 86 w=23.5320 (wraps) Mx 44.9637 T 82 81 w=10.0195 (on) @@ -101,14 +101,14 @@ T 82 81 w=10.0195 (on) Mx 69.5699 T 17 w=2.1755 (.) Mx 123.9924 -My 59.7203 +My 58.2203 T 55 75 72 w=14.8623 (The) Mx 141.3651 T 88 81 71 72 85 86 76 74 81 72 71 w=48.8127 (undersigned) Mx 190.1779 T 15 w=2.1755 (,) Mx 138.1542 -My 78.7247 +My 74.7247 T 45 82 75 81 w=18.1604 (John) Mx 158.8251 T 43 68 81 70 82 70 78 w=33.5283 (Hancock) @@ -129,7 +129,7 @@ T 87 75 72 w=12.9001 (the) Mx 162.7189 T 81 72 91 87 w=17.6780 (next) Mx 17.4104 -My 58.5609 +My 58.6971 T 83 68 74 72 w=18.4155 (page) Mx 39.0274 T 71 82 72 86 81 10 87 w=28.6624 (doesn't) @@ -150,7 +150,7 @@ T 76 87 w=5.8447 (it) Mx 170.3773 T 82 81 w=10.0195 (on) Mx 17.4104 -My 75.4058 +My 75.6783 T 87 75 76 86 w=14.7556 (this) Mx 34.6895 T 83 68 74 72 w=18.4155 (page) diff --git a/tests/bug-301.sil b/tests/bug-301.sil index c514110ba..4dd30c9d8 100644 --- a/tests/bug-301.sil +++ b/tests/bug-301.sil @@ -19,7 +19,7 @@ A line of stuff in a paragraph that wraps on the page following the one it start \raggedleft{John Hancock} -\skip[height=16em] +\vfill The problem with hfills on the next page doesn't repro if you try to do it on this page. diff --git a/tests/bug-344.expected b/tests/bug-344.expected index 36f83e1bd..09b5205c6 100644 --- a/tests/bug-344.expected +++ b/tests/bug-344.expected @@ -11,7 +11,7 @@ T 80 68 81 w=18.1396 (man) Mx 108.8377 T 17 w=2.2900 (.) Mx 54.8208 -My 459.2688 +My 458.2688 T 50 81 72 w=16.1377 (One) Mx 70.9585 T 15 w=2.2900 (,) @@ -28,7 +28,7 @@ T 86 75 82 72 w=19.0283 (shoe) Mx 161.0933 T 17 w=2.2900 (.) Mx 54.8208 -My 483.9172 +My 482.9172 T 50 81 72 w=16.1377 (One) Mx 70.9585 T 15 w=2.2900 (,) diff --git a/tests/disappearing-skip.expected b/tests/disappearing-skip.expected index c048fea84..191f50565 100644 --- a/tests/disappearing-skip.expected +++ b/tests/disappearing-skip.expected @@ -9,7 +9,7 @@ T 20 w=4.6924 (1) Mx 64.0185 T 17 w=2.2900 (.) Mx 38.2835 -My 488.4344 +My 487.7319 T 51 68 85 68 w=18.3691 (Para) Mx 59.3261 T 21 w=4.6924 (2) diff --git a/tests/hangafter.expected b/tests/hangafter.expected index 28bd9d08f..0e88d35b3 100644 --- a/tests/hangafter.expected +++ b/tests/hangafter.expected @@ -21,7 +21,7 @@ T 72 79 76 87 85 w=17.4414 (elitr) Mx 269.0743 T 86 72 71 w=13.6816 (sed) Mx 14.8819 -My 40.6562 +My 41.0056 T 71 76 68 80 w=20.5322 (diam) Mx 37.7267 T 81 82 81 88 80 92 w=34.3262 (nonumy) @@ -42,7 +42,7 @@ T 71 82 79 82 85 72 w=26.5479 (dolore) Mx 255.1485 T 80 68 74 81 68 w=27.6074 (magna) Mx 14.8819 -My 52.7678 +My 53.4664 T 68 79 76 84 88 92 68 80 w=38.0127 (aliquyam) Mx 55.5399 T 72 85 68 87 w=16.6113 (erat) @@ -65,7 +65,7 @@ T 68 70 70 88 86 68 80 w=35.1123 (accusam) Mx 250.0262 T 72 87 w=8.0615 (et) Mx 54.8819 -My 69.4203 +My 70.4682 T 58 76 87 75 w=20.1709 (With) Mx 77.8541 T 75 68 81 74 w=20.5029 (hang) @@ -94,7 +94,7 @@ T 71 82 79 82 85 w=21.9287 (dolor) Mx 272.7413 T 86 76 87 w=10.0146 (sit) Mx 54.8819 -My 81.5318 +My 82.9290 T 68 80 72 87 w=20.6836 (amet) Mx 78.3359 T 70 82 81 86 72 87 72 87 88 85 w=44.1602 (consetetur) @@ -113,7 +113,7 @@ T 72 76 85 w=11.2891 (eir) Mx 279.3868 T 16 w=3.3691 (-) Mx 54.8819 -My 93.6433 +My 95.3898 T 80 82 71 w=18.2617 (mod) Mx 77.3414 T 87 72 80 83 82 85 w=30.3809 (tempor) @@ -134,7 +134,7 @@ T 68 79 76 w=10.0098 (ali) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 105.7548 +My 107.8507 T 84 88 92 68 80 w=28.0029 (quyam) Mx 46.6040 T 72 85 68 87 w=16.6113 (erat) @@ -159,7 +159,7 @@ T 72 87 w=8.0615 (et) Mx 262.5362 T 77 88 86 87 82 w=20.2197 (justo) Mx 14.8819 -My 117.8663 +My 120.3115 T 71 88 82 w=15.5273 (duo) Mx 34.0951 T 71 82 79 82 85 72 86 w=30.4102 (dolores) @@ -188,7 +188,7 @@ T 78 76 w=7.5879 (ki) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 129.9778 +My 132.7723 T 80 68 87 68 w=20.6543 (mata) Mx 39.4388 T 86 68 81 70 87 88 86 w=30.9424 (sanctus) @@ -213,7 +213,7 @@ T 71 82 w=10.2295 (do) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 142.0893 +My 145.2331 T 79 82 85 w=11.6992 (lor) Mx 29.1129 T 86 76 87 w=10.0146 (sit) @@ -234,12 +234,12 @@ T 81 82 81 88 80 92 w=34.3262 (nonumy) Mx 253.2051 T 72 76 85 80 82 71 w=29.5508 (eirmod) Mx 14.8819 -My 154.2008 +My 157.6939 T 87 72 80 83 82 85 w=30.3809 (tempor) Mx 47.9273 T 76 81 89 76 71 88 81 87 w=35.3271 (invidunt) Mx 34.8819 -My 175.3944 +My 174.6958 T 79 82 85 72 80 w=24.3506 (lorem) Mx 62.6594 T 76 83 86 88 80 w=25.2002 (ipsum) @@ -258,7 +258,7 @@ T 72 79 76 87 85 w=17.4414 (elitr) Mx 269.0743 T 86 72 71 w=13.6816 (sed) Mx 14.8819 -My 187.5059 +My 187.1566 T 71 76 68 80 w=20.5322 (diam) Mx 37.7267 T 81 82 81 88 80 92 w=34.3262 (nonumy) @@ -302,7 +302,7 @@ T 68 70 70 88 86 68 80 w=35.1123 (accusam) Mx 250.0262 T 72 87 w=8.0615 (et) Mx 14.8819 -My 216.2699 +My 216.6192 T 58 76 87 75 w=20.1709 (With) Mx 37.7337 T 75 68 81 74 w=20.5029 (hang) @@ -335,7 +335,7 @@ T 70 82 81 w=14.9170 (con) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 228.3814 +My 229.0800 T 86 72 w=8.4814 (se) Mx 23.3633 T 87 72 w=8.0615 (te) @@ -362,7 +362,7 @@ T 89 76 w=7.6416 (vi) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 240.4929 +My 241.5409 T 71 88 81 87 w=19.4580 (dunt) Mx 36.9437 T 88 87 w=8.7402 (ut) @@ -385,7 +385,7 @@ T 71 76 68 80 w=20.5322 (diam) Mx 246.1592 T 89 82 79 88 83 87 88 68 w=36.5967 (voluptua) Mx 54.8819 -My 252.6044 +My 254.0017 T 68 87 w=8.0322 (at) Mx 66.6577 T 89 72 85 82 w=18.5400 (vero) @@ -412,7 +412,7 @@ T 85 72 w=8.5791 (re) Mx 279.3868 T 16 w=3.3691 (-) Mx 54.8819 -My 264.7159 +My 266.4625 T 69 88 80 w=18.4082 (bum) Mx 76.3032 T 86 87 72 87 w=15.3662 (stet) @@ -431,7 +431,7 @@ T 87 68 78 76 80 68 87 68 w=36.2744 (takimata) Mx 251.8135 T 86 68 81 70 87 88 86 w=30.9424 (sanctus) Mx 54.8819 -My 276.8275 +My 278.9233 T 72 86 87 w=11.9238 (est) Mx 70.3922 T 79 82 85 72 80 w=24.3506 (lorem) @@ -452,7 +452,7 @@ T 71 82 79 82 85 w=21.9287 (dolor) Mx 272.7413 T 86 76 87 w=10.0146 (sit) Mx 54.8819 -My 288.9390 +My 291.3841 T 68 80 72 87 w=20.6836 (amet) Mx 78.3359 T 70 82 81 86 72 87 72 87 88 85 w=44.1602 (consetetur) @@ -471,14 +471,14 @@ T 72 76 85 w=11.2891 (eir) Mx 279.3868 T 16 w=3.3691 (-) Mx 54.8819 -My 301.0505 +My 303.8449 T 80 82 71 w=18.2617 (mod) Mx 75.8014 T 87 72 80 83 82 85 w=30.3809 (tempor) Mx 108.8401 T 76 81 89 76 71 88 81 87 w=35.3271 (invidunt) Mx 34.8819 -My 322.2440 +My 320.8468 T 79 82 85 72 80 w=24.3506 (lorem) Mx 62.6594 T 76 83 86 88 80 w=25.2002 (ipsum) @@ -497,7 +497,7 @@ T 72 79 76 87 85 w=17.4414 (elitr) Mx 269.0743 T 86 72 71 w=13.6816 (sed) Mx 14.8819 -My 334.3555 +My 333.3076 T 71 76 68 80 w=20.5322 (diam) Mx 37.7267 T 81 82 81 88 80 92 w=34.3262 (nonumy) @@ -518,7 +518,7 @@ T 71 82 79 82 85 72 w=26.5479 (dolore) Mx 255.1485 T 80 68 74 81 68 w=27.6074 (magna) Mx 14.8819 -My 346.4670 +My 345.7684 T 68 79 76 84 88 92 68 80 w=38.0127 (aliquyam) Mx 55.5399 T 72 85 68 87 w=16.6113 (erat) @@ -541,7 +541,7 @@ T 68 70 70 88 86 68 80 w=35.1123 (accusam) Mx 250.0262 T 72 87 w=8.0615 (et) Mx 14.8819 -My 363.1195 +My 362.7702 T 58 76 87 75 w=20.1709 (With) Mx 38.3108 T 75 68 81 74 w=20.5029 (hang) @@ -713,7 +713,7 @@ T 87 72 80 83 82 85 w=30.3809 (tempor) Mx 176.6972 T 76 81 89 76 71 88 81 87 w=35.3271 (invidunt) Mx 34.8819 -My 121.6268 +My 117.0858 T 79 82 85 72 80 w=24.3506 (lorem) Mx 62.6594 T 76 83 86 88 80 w=25.2002 (ipsum) @@ -732,7 +732,7 @@ T 72 79 76 87 85 w=17.4414 (elitr) Mx 269.0743 T 86 72 71 w=13.6816 (sed) Mx 14.8819 -My 133.6268 +My 129.0858 T 71 76 68 80 w=20.5322 (diam) Mx 37.7267 T 81 82 81 88 80 92 w=34.3262 (nonumy) @@ -753,7 +753,7 @@ T 71 82 79 82 85 72 w=26.5479 (dolore) Mx 255.1485 T 80 68 74 81 68 w=27.6074 (magna) Mx 14.8819 -My 145.6268 +My 141.0858 T 68 79 76 84 88 92 68 80 w=38.0127 (aliquyam) Mx 55.5399 T 72 85 68 87 w=16.6113 (erat) @@ -776,7 +776,7 @@ T 68 70 70 88 86 68 80 w=35.1123 (accusam) Mx 250.0262 T 72 87 w=8.0615 (et) Mx 14.8819 -My 162.1678 +My 157.6268 T 58 76 87 75 w=20.1709 (With) Mx 37.4217 T 75 68 81 74 w=20.5029 (hang) @@ -811,7 +811,7 @@ T 70 82 81 w=14.9170 (con) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 174.1678 +My 169.6268 T 86 72 w=8.4814 (se) Mx 23.3633 T 87 72 w=8.0615 (te) @@ -838,7 +838,7 @@ T 89 76 w=7.6416 (vi) Mx 279.3868 T 16 w=3.3691 (-) Mx 14.8819 -My 186.1678 +My 181.6268 T 71 88 81 87 w=19.4580 (dunt) Mx 38.1497 T 88 87 w=8.7402 (ut) @@ -859,7 +859,7 @@ T 86 72 71 w=13.6816 (sed) Mx 233.8772 T 71 76 68 80 w=20.5322 (diam) Mx 14.8819 -My 198.1678 +My 193.6268 T 89 82 79 88 83 87 88 68 w=36.5967 (voluptua) Mx 54.0408 T 68 87 w=8.0322 (at) @@ -884,7 +884,7 @@ T 72 87 w=8.0615 (et) Mx 245.2005 T 72 68 w=9.2090 (ea) Mx 14.8819 -My 210.1678 +My 205.6268 T 85 72 69 88 80 w=26.9873 (rebum) Mx 45.2666 T 86 87 72 87 w=15.3662 (stet) @@ -903,7 +903,7 @@ T 87 68 78 76 80 68 87 68 w=36.2744 (takimata) Mx 223.4671 T 86 68 81 70 87 88 86 w=30.9424 (sanctus) Mx 14.8819 -My 222.1678 +My 217.6268 T 72 86 87 w=11.9238 (est) Mx 29.1305 T 79 82 85 72 80 w=24.3506 (lorem) @@ -926,7 +926,7 @@ T 86 76 87 w=10.0146 (sit) Mx 233.7259 T 68 80 72 87 w=20.6836 (amet) Mx 14.8819 -My 234.1678 +My 229.6268 T 70 82 81 86 72 87 72 87 88 85 w=44.1602 (consetetur) Mx 61.5241 T 86 68 71 76 83 86 70 76 81 74 w=42.9980 (sadipscing) @@ -945,7 +945,7 @@ T 87 72 80 w=16.0938 (tem) Mx 251.0403 T 16 w=3.3691 (-) Mx 14.8819 -My 246.1678 +My 241.6268 T 83 82 85 w=14.2871 (por) Mx 31.8322 T 76 81 89 76 71 88 81 87 w=35.3271 (invidunt) diff --git a/typesetters/base.lua b/typesetters/base.lua index 0d3f0201c..f6efd0dc3 100644 --- a/typesetters/base.lua +++ b/typesetters/base.lua @@ -349,8 +349,16 @@ function typesetter:initline () end function typesetter:endline () - self:leaveHmode() SILE.documentState.documentClass.endPar(self) + self:leaveHmode() + if SILE.settings:get("current.hangIndent") then + SILE.settings:set("current.hangIndent", nil) + SILE.settings:set("linebreak.hangIndent", nil) + end + if SILE.settings:get("current.hangAfter") then + SILE.settings:set("current.hangAfter", nil) + SILE.settings:set("linebreak.hangAfter", nil) + end end -- Just compute once, to avoid unicode characters in source code.