summaryrefslogtreecommitdiff
path: root/crates/typst-library
diff options
context:
space:
mode:
authorTobias Schmitz <tobiasschmitz2001@gmail.com>2025-05-06 16:03:48 +0200
committerGitHub <noreply@github.com>2025-05-06 14:03:48 +0000
commit9b09146a6b5e936966ed7ee73bce9dd2df3810ae (patch)
tree5a55355e4356d31e3449d1ceb8b29cb52c753a28 /crates/typst-library
parentb322da930fe35ee3d19896de6ab653e2f321e301 (diff)
Use list spacing for attach spacing in tight lists (#6242)
Diffstat (limited to 'crates/typst-library')
-rw-r--r--crates/typst-library/src/model/enum.rs9
-rw-r--r--crates/typst-library/src/model/list.rs9
-rw-r--r--crates/typst-library/src/model/terms.rs8
3 files changed, 15 insertions, 11 deletions
diff --git a/crates/typst-library/src/model/enum.rs b/crates/typst-library/src/model/enum.rs
index 2d95996a..f1f93702 100644
--- a/crates/typst-library/src/model/enum.rs
+++ b/crates/typst-library/src/model/enum.rs
@@ -259,10 +259,11 @@ impl Show for Packed<EnumElem> {
.spanned(self.span());
if tight {
- let leading = ParElem::leading_in(styles);
- let spacing =
- VElem::new(leading.into()).with_weak(true).with_attach(true).pack();
- realized = spacing + realized;
+ let spacing = self
+ .spacing(styles)
+ .unwrap_or_else(|| ParElem::leading_in(styles).into());
+ let v = VElem::new(spacing.into()).with_weak(true).with_attach(true).pack();
+ realized = v + realized;
}
Ok(realized)
diff --git a/crates/typst-library/src/model/list.rs b/crates/typst-library/src/model/list.rs
index d93ec917..3c3afd33 100644
--- a/crates/typst-library/src/model/list.rs
+++ b/crates/typst-library/src/model/list.rs
@@ -166,10 +166,11 @@ impl Show for Packed<ListElem> {
.spanned(self.span());
if tight {
- let leading = ParElem::leading_in(styles);
- let spacing =
- VElem::new(leading.into()).with_weak(true).with_attach(true).pack();
- realized = spacing + realized;
+ let spacing = self
+ .spacing(styles)
+ .unwrap_or_else(|| ParElem::leading_in(styles).into());
+ let v = VElem::new(spacing.into()).with_weak(true).with_attach(true).pack();
+ realized = v + realized;
}
Ok(realized)
diff --git a/crates/typst-library/src/model/terms.rs b/crates/typst-library/src/model/terms.rs
index e197ff31..3df74cd9 100644
--- a/crates/typst-library/src/model/terms.rs
+++ b/crates/typst-library/src/model/terms.rs
@@ -189,13 +189,15 @@ impl Show for Packed<TermsElem> {
.styled(TermsElem::set_within(true));
if tight {
- let leading = ParElem::leading_in(styles);
- let spacing = VElem::new(leading.into())
+ let spacing = self
+ .spacing(styles)
+ .unwrap_or_else(|| ParElem::leading_in(styles).into());
+ let v = VElem::new(spacing.into())
.with_weak(true)
.with_attach(true)
.pack()
.spanned(span);
- realized = spacing + realized;
+ realized = v + realized;
}
Ok(realized)