FORMTEXT, FORMCHECKBOX, and FORMDROPDOWN are RTF's own analogue to a Word content control, and the shared schema already has a contentControl construct for them, but neither direction handles them: the reader has no \formfield handling at all, and the writer's describeConstructGap explicitly names contentControl as unminted. This is a bounded piece of work gated on the field machinery that hands the control its instruction and cached result.
Evidence
README: "Form fields (*\formfield ...) -- RTF's own nearest analogue to a content control ... Not mapped yet: it needs the field machinery to hand the control its instruction and cached result." src/write.ts describeConstructGap for contentControl: "its own *\formfield production is a narrower construct this writer does not yet mint."
Affected packages: rtf-codec
Surfaced by a full-repository gap survey (feature/fidelity/write-support gaps), cross-checked against the existing issue history so it does not duplicate prior work.
FORMTEXT, FORMCHECKBOX, and FORMDROPDOWN are RTF's own analogue to a Word content control, and the shared schema already has a contentControl construct for them, but neither direction handles them: the reader has no \formfield handling at all, and the writer's describeConstructGap explicitly names contentControl as unminted. This is a bounded piece of work gated on the field machinery that hands the control its instruction and cached result.
Evidence
Affected packages:
rtf-codecSurfaced by a full-repository gap survey (feature/fidelity/write-support gaps), cross-checked against the existing issue history so it does not duplicate prior work.