summaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2023-11-27 16:04:47 +0100
committerLaurenz <laurmaedje@gmail.com>2023-11-27 16:04:47 +0100
commitbf8a3ecec5ac0f48d5bbf59930b4ea07c03c3c96 (patch)
tree8fb94d07612b585e64d004e5d901c0019c4c1f27 /crates
parent76c5ca051e9c784e919e0b85155d147388e8e3d7 (diff)
Update changelog
Diffstat (limited to 'crates')
-rw-r--r--crates/typst-docs/src/link.rs19
-rw-r--r--crates/typst/src/foundations/args.rs4
-rw-r--r--crates/typst/src/lib.rs1
-rw-r--r--crates/typst/src/math/lr.rs2
4 files changed, 13 insertions, 13 deletions
diff --git a/crates/typst-docs/src/link.rs b/crates/typst-docs/src/link.rs
index e2721b95..e7e191fe 100644
--- a/crates/typst-docs/src/link.rs
+++ b/crates/typst-docs/src/link.rs
@@ -55,20 +55,19 @@ fn resolve_known(head: &str) -> Option<&'static str> {
fn resolve_definition(head: &str) -> StrResult<String> {
let mut parts = head.trim_start_matches('$').split('.').peekable();
let mut focus = &LIBRARY.global;
+ let mut category = None;
- let Some(name) = parts.peek() else {
- bail!("missing first link component");
- };
-
- let Some(category) = focus.scope().get_category(name) else {
- bail!("{name} has no category");
- };
-
- while let Some(m) = parts.peek().and_then(|&name| get_module(focus, name).ok()) {
- focus = m;
+ while let Some(name) = parts.peek() {
+ if category.is_none() {
+ category = focus.scope().get_category(name);
+ }
+ let Ok(module) = get_module(focus, name) else { break };
+ focus = module;
parts.next();
}
+ let Some(category) = category else { bail!("{head} has no category") };
+
let name = parts.next().ok_or("link is missing first part")?;
let value = focus.field(name)?;
diff --git a/crates/typst/src/foundations/args.rs b/crates/typst/src/foundations/args.rs
index e11fe2bb..8732c7b5 100644
--- a/crates/typst/src/foundations/args.rs
+++ b/crates/typst/src/foundations/args.rs
@@ -221,9 +221,9 @@ impl Args {
#[scope]
impl Args {
- /// Construct an argument sink in place.
+ /// Construct spreadable arguments in place.
///
- /// This function behaves like `{#let args(..sink) = sink}`.
+ /// This function behaves like `{let args(..sink) = sink}`.
///
/// ```example
/// #let args = arguments(stroke: red, inset: 1em, [Body])
diff --git a/crates/typst/src/lib.rs b/crates/typst/src/lib.rs
index 1109b906..33e688b7 100644
--- a/crates/typst/src/lib.rs
+++ b/crates/typst/src/lib.rs
@@ -275,6 +275,7 @@ fn global(math: Module) -> Module {
self::foundations::define(&mut global);
self::model::define(&mut global);
self::text::define(&mut global);
+ global.reset_category();
global.define_module(math);
self::layout::define(&mut global);
self::visualize::define(&mut global);
diff --git a/crates/typst/src/math/lr.rs b/crates/typst/src/math/lr.rs
index 1631623b..53319c8d 100644
--- a/crates/typst/src/math/lr.rs
+++ b/crates/typst/src/math/lr.rs
@@ -83,7 +83,7 @@ impl LayoutMath for LrElem {
}
}
-/// Scales contents vertically to the nearest surrounding lr() group.
+/// Scales contents vertically to the nearest surrounding `{lr()}` group.
///
/// ```example
/// $ { x mid(|) sum_(i=1)^oo phi_i (x) < 1 } $