Shortcuts

add/del/rep mark part of a passage — a clause added mid-sentence, one phrase replacing another. When the entire passage is new, removed, or rewritten, wrapping it by hand (passage(anchor)[#add[...]]) is one level of nesting that never varies — these five shortcuts skip it.

added(anchors, body, summary: none)
passage(anchors, add(body)).
deleted(anchors, body, summary: none)
passage(anchors, del(body)).
replaced(anchors, old, new, summary: none)
passage(anchors, rep(old, new)).
#import "../../lib.typ": *

#set page(width: 16.6cm, height: auto, margin: 12pt)
#set text(size: 10.5pt)
#set-revisions(require-exchange: false)

#added(<r1-1>)[This whole sentence is new.]

#deleted(<r1-2>)[This whole sentence is being removed.]

#replaced(<r1-3>)[The old wording.][The new wording.]

summary: is accepted by all three but only matters once a passage’s tracked appearance gives a letter nothing worth quoting — deleted is the common case, covered below under suppressed.

touched

touched(anchors, body)
declares a location without marking any change — “we checked this, it stays as written.” Unlike passage on its own, an anchor with no add/del/rep inside doesn’t need allow-empty: to avoid a warning; touched already sets it.
#import "../../lib.typ": *

#set page(width: 16.6cm, height: auto, margin: 12pt)
#set text(size: 10.5pt)
#set-revisions(require-exchange: false)

#touched(<r1-4>)[This paragraph has not changed; we address the reviewer's concern in our response instead.]

Still colored and tagged like any other passage — just nothing struck or underlined, since nothing changed.

suppressed

suppressed(anchors, note, summary: auto)
passage(anchors, suppress(note), summary: ...) — suppress (Marking changes, above) for a passage entirely made of it.
#import "../../lib.typ": *

#set page(width: 16.6cm, height: auto, margin: 12pt)
#set text(size: 10.5pt)
#set-revisions(require-exchange: false)

#suppressed(<r2-1>, [Equation removed: superseded by the equation below.])

$ E = m c^2 (1 + epsilon) $

#suppressed(
  <r2-2>,
  [Table removed: see response to R2-2.], // shown in the tracked manuscript
  summary: [the old sensitivity table],   // for the letter, later
)

note and summary: are separate parameters on purpose. note has to read on its own, cold, in the middle of the manuscript — “Equation removed: …”. summary: is inserted into a sentence the letter will already have written — “Removed: ‹summary›” — so it should be a bare phrase, not repeat “removed” itself. summary: defaults to note when omitted, since most of the time the two don’t need to differ; the second call above gives them separately.

← Styling marks: set-revisionsWriting the exchanges →