From 3fd2570533e874ffd5323d55b481f508c40fe3d9 Mon Sep 17 00:00:00 2001 From: Malo <57839069+MDLC01@users.noreply.github.com> Date: Thu, 12 Jun 2025 22:01:13 +0100 Subject: [PATCH] Better name for subperscripts --- crates/typst-layout/src/inline/line.rs | 2 +- crates/typst-layout/src/inline/shaping.rs | 6 +++--- crates/typst-library/src/text/mod.rs | 5 +++-- crates/typst-library/src/text/shift.rs | 4 ++-- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/crates/typst-layout/src/inline/line.rs b/crates/typst-layout/src/inline/line.rs index 3782f7034..67ace7988 100644 --- a/crates/typst-layout/src/inline/line.rs +++ b/crates/typst-layout/src/inline/line.rs @@ -420,7 +420,7 @@ pub fn apply_shift<'a>( ) { let mut baseline = TextElem::baseline_in(styles); let mut compensation = Abs::zero(); - if let Some(scripts) = TextElem::subperscript_in(styles) { + if let Some(scripts) = TextElem::shift_settings_in(styles) { let font_metrics = TextElem::font_in(styles) .into_iter() .find_map(|family| { diff --git a/crates/typst-layout/src/inline/shaping.rs b/crates/typst-layout/src/inline/shaping.rs index dabf59e34..84babd6a3 100644 --- a/crates/typst-layout/src/inline/shaping.rs +++ b/crates/typst-layout/src/inline/shaping.rs @@ -13,7 +13,7 @@ use typst_library::foundations::{Smart, StyleChain}; use typst_library::layout::{Abs, Dir, Em, Frame, FrameItem, Point, Size}; use typst_library::text::{ families, features, is_default_ignorable, variant, Font, FontFamily, FontVariant, - Glyph, Lang, Region, ScriptSettings, TextEdgeBounds, TextElem, TextItem, + Glyph, Lang, Region, ShiftSettings, TextEdgeBounds, TextElem, TextItem, }; use typst_library::World; use typst_utils::SliceExt; @@ -672,7 +672,7 @@ fn shape<'a>( region: Option, ) -> ShapedText<'a> { let size = TextElem::size_in(styles); - let script_settings = TextElem::subperscript_in(styles); + let script_settings = TextElem::shift_settings_in(styles); let mut ctx = ShapingContext { engine, size, @@ -736,7 +736,7 @@ fn shape_segment<'a>( base: usize, text: &str, mut families: impl Iterator + Clone, - script_settings: Option, + script_settings: Option, ) { // Don't try shaping newlines, tabs, or default ignorables. if text diff --git a/crates/typst-library/src/text/mod.rs b/crates/typst-library/src/text/mod.rs index 4b53822ad..13e5a46d0 100644 --- a/crates/typst-library/src/text/mod.rs +++ b/crates/typst-library/src/text/mod.rs @@ -755,10 +755,11 @@ pub struct TextElem { #[ghost] pub smallcaps: Option, - /// The settings for superscripts or subscripts, if one of them is enabled. + /// The configuration for superscripts or subscripts, if one of them is + /// enabled. #[internal] #[ghost] - pub subperscript: Option, + pub shift_settings: Option, } impl TextElem { diff --git a/crates/typst-library/src/text/shift.rs b/crates/typst-library/src/text/shift.rs index 05cd941c5..acbddea1c 100644 --- a/crates/typst-library/src/text/shift.rs +++ b/crates/typst-library/src/text/shift.rs @@ -153,7 +153,7 @@ fn show_script( kind: ScriptKind, ) -> SourceResult { let outer_text_size = TextElem::size_in(styles); - Ok(body.styled(TextElem::set_subperscript(Some(ScriptSettings { + Ok(body.styled(TextElem::set_shift_settings(Some(ShiftSettings { typographic, shift: baseline.map(|l| -l.to_em(outer_text_size)), size: size.map(|t| t.0.to_em(outer_text_size)), @@ -163,7 +163,7 @@ fn show_script( /// Configuration values for sub- or superscript text. #[derive(Debug, Copy, Clone, Eq, PartialEq, Hash)] -pub struct ScriptSettings { +pub struct ShiftSettings { /// Whether the OpenType feature should be used if possible. pub typographic: bool, /// The baseline shift of the script, relative to the outer text size.