diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-03-12 18:48:11 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-03-12 18:48:11 +0100 |
| commit | 1584b09708a81a96f52b20a29dfb36c04d6e71ab (patch) | |
| tree | b192df82590f9718658d152607e75d8ae3d9e73a /src/library | |
| parent | c3acb491e38d333acff6897479f7dd9c86fba307 (diff) | |
Fix pagebreak-in-box bug ✔
Diffstat (limited to 'src/library')
| -rw-r--r-- | src/library/page.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/library/page.rs b/src/library/page.rs index 963ab913..20d7f069 100644 --- a/src/library/page.rs +++ b/src/library/page.rs @@ -38,6 +38,7 @@ pub fn page(ctx: &mut EvalContext, args: &mut ValueArgs) -> Value { let main = args.get(ctx, "main-dir"); let cross = args.get(ctx, "cross-dir"); let body = args.find::<ValueTemplate>(ctx); + let span = args.span; Value::template("page", move |ctx| { let snapshot = ctx.state.clone(); @@ -83,20 +84,21 @@ pub fn page(ctx: &mut EvalContext, args: &mut ValueArgs) -> Value { } ctx.set_dirs(Gen::new(main, cross)); - ctx.finish_page(false, Softness::Hard); + ctx.finish_page(false, Softness::Hard, span); if let Some(body) = &body { // TODO: Restrict body to a single page? body.exec(ctx); ctx.state = snapshot; - ctx.finish_page(true, Softness::Soft); + ctx.finish_page(true, Softness::Soft, span); } }) } /// `pagebreak`: Start a new page. -pub fn pagebreak(_: &mut EvalContext, _: &mut ValueArgs) -> Value { +pub fn pagebreak(_: &mut EvalContext, args: &mut ValueArgs) -> Value { + let span = args.span; Value::template("pagebreak", move |ctx| { - ctx.finish_page(true, Softness::Hard); + ctx.finish_page(true, Softness::Hard, span); }) } |
