From afa344f33db80456bb3091e3863ca673d43c5db8 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Wed, 1 Feb 2023 13:32:05 +0100 Subject: [PATCH] Fix raw show rule --- library/src/text/raw.rs | 17 ++++++++++++----- tests/ref/text/raw.png | Bin 18101 -> 19645 bytes tests/typ/math/syntax.typ | 3 +-- tests/typ/text/raw.typ | 5 +++++ 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/library/src/text/raw.rs b/library/src/text/raw.rs index 2f0ec79ec..1051992a1 100644 --- a/library/src/text/raw.rs +++ b/library/src/text/raw.rs @@ -2,7 +2,9 @@ use once_cell::sync::Lazy; use syntect::highlighting as synt; use typst::syntax::{self, LinkedNode}; -use super::{FontFamily, Hyphenate, LinebreakNode, SmartQuoteNode, TextNode}; +use super::{ + FallbackList, FontFamily, Hyphenate, LinebreakNode, SmartQuoteNode, TextNode, +}; use crate::layout::BlockNode; use crate::prelude::*; @@ -88,7 +90,7 @@ use crate::prelude::*; /// ## Category /// text #[func] -#[capable(Show, Prepare)] +#[capable(Prepare, Show, Finalize)] #[derive(Debug, Hash)] pub struct RawNode { /// The raw text. @@ -203,13 +205,18 @@ impl Show for RawNode { realized = BlockNode(realized).pack(); } + Ok(realized) + } +} + +impl Finalize for RawNode { + fn finalize(&self, realized: Content) -> Content { let mut map = StyleMap::new(); map.set(TextNode::OVERHANG, false); map.set(TextNode::HYPHENATE, Hyphenate(Smart::Custom(false))); map.set(SmartQuoteNode::ENABLED, false); - map.set_family(FontFamily::new("IBM Plex Mono"), styles); - - Ok(realized.styled_with_map(map)) + map.set(TextNode::FAMILY, FallbackList(vec![FontFamily::new("IBM Plex Mono")])); + realized.styled_with_map(map) } } diff --git a/tests/ref/text/raw.png b/tests/ref/text/raw.png index f7912051d2e39526d099d5a952874b4a0564b925..e2fd87d0a8695c174c95b2e317cb2266e903109e 100644 GIT binary patch literal 19645 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: it => table( columns: 2, inset: 8pt, ..it.text .split("\n") - .map(line => (text(10pt, raw(line, lang: "typ")), eval(line) + [ ])) + .map(line => (raw(line, lang: "typ"), text("Latin Modern Roman", eval(line)))) .flatten() ) diff --git a/tests/typ/text/raw.typ b/tests/typ/text/raw.typ index 96a23b66d..f8731cca5 100644 --- a/tests/typ/text/raw.typ +++ b/tests/typ/text/raw.typ @@ -44,6 +44,11 @@ The keyword ```rust let```. C ``` +--- +// Text show rule +#show raw: set text("Roboto") +`Roboto` + --- // Unterminated. // Error: 2:1 expected 1 backtick