Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

API Reference

deixis-connect

Draws an independent edge between marks, bodies, attached objects or pins; declarations may precede endpoints.

Setup Required

Returns: content.

Task guide

Example

deixis-connect(from: (node: <a>), to: (node: <b>))

Bare from IDs select original marks; bare to IDs select bodies. Use (mark: id, occurrence: name), (body: id, point: “end”), (node: id) or (pin: target) explicitly. Default route is straight, or sharp orthogonal inside deixis-routing.

deixis-connect

deixis-connect(from: none, to: none, connector: auto)

Draws an independent connection between attached nodes/pins, or from an original/named mark or pin to a margin/inset body, framed inline body, live body’s point, or pin. Declarations may precede either endpoint or a collected body’s printer. It adds no body, counter increment, placement anchor, or PDF return origin.

#deixis-inset-note(id: <shared>, connector: none,
  layer: "foreground", width: 90pt, dx: 100pt, dy: 40pt)[First][One body.]
#deixis-mark(of: <shared>, occurrence: <again>)[Again]
#deixis-connect(from: (mark: <shared>, occurrence: <again>), to: <shared>)

Inside deixis-routing, declarations capture the innermost scope’s policy. manual uses native paths, avoid searches obstacles independently, and separate repairs a page/layer group. The scoped default route is sharp orthogonal. Outside, the default is straight. Attached nodes use (node: id), optionally scope/page; no note is created. continuation accepts auto/none, dot/portal, a shape/size/stroke/fill/link record, or a callback. Native portals trim only the painted shaft and can link to the real peer or accepted counterpart; they are not endpoint heads.

  • from (str, label, dictionary): Original ID, (mark: id, occurrence: name), (node: id, scope: ..., page: ...), or (pin: target). Pin targets accept a name or the shared name/scope/select/page record and must select one occurrence.
  • to (str, label, dictionary): Body frame ID, (body: id), (body: id, point: "start" | "end"), an attached node, or (pin: target). Collected bodies must actually be printed.
  • connector (auto, none, dictionary): Route/ports/via/heads/cuts/crossings/gap-marks/style/render/layer settings. Route accepts a string or (kind: "curve", tension: 2); catmull-rom also selects centripetal/uniform parameterization. Hobby uses global tension (minimum 0.75) and free-end curl (default 1). B-spline records use controls for coordinate/framed/pin influences, distinct from exact via points. A custom port (pin: target, side: left, gap: 2pt) keeps node bounds; a waypoint (pin: target, offset: (2pt, 0pt)) visits a point exactly. The default route is straight; none disables the declaration. Optional cuts hide original-route arc-length intervals without changing curve geometry. Optional crossings: “gap” cuts lower-priority native shafts where participating routes cross in one overlay. Optional gap-marks (slash/bar) decorate surviving internal gaps; page-continuation dots remain separate. Optional scene accepts a prepared routing scene or a read-only page-fragment callback, applying sharp avoidance or native cut/cross events before head preparation; see docs/guides/routing-scenes.md.

Parameters

NameDefaultTypes
fromnonestr, label, dictionary
tononestr, label, dictionary
connectorautoauto, none, str, dictionary

from

Original mark ID, named occurrence record, attached node selector, or pin target. Forward declarations are allowed.

to

Body ID/frame, live body start/end point, attached node, or pin target. Collected bodies must be printed.

connector

Route, ports, via, heads, cuts, crossing/gap marks, continuation, scene, style, layer and painter options. A route name is shorthand for (route: name). Auto enables defaults; none disables.