API Reference
deixis-connect
Draws an independent edge between marks, bodies, attached objects or pins; declarations may precede endpoints.
Setup Required
Returns: content.
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
| Name | Default | Types |
|---|---|---|
from | none | str, label, dictionary |
to | none | str, label, dictionary |
connector | auto | auto, 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.