# Enquiry (ENQ)

> Ask the terminal to send its answerback message.

- **Sequence:** `ENQ`
- **ECMA-48:** [§8.3.44 ENQ – Enquiry, p. 43](https://archive.org/details/ecma-48-5th-edition-june-1991/page/n56/mode/1up)
- **DEC STD 070:** [§D.3.2 Answerback, p. D-10](https://archive.org/details/bitsavers_decstandar0VideoSystemsReferenceManualDec91_74264381/page/n1196/mode/1up)
- **VT220:** [§4.2 Control Characters](https://vt100.net/docs/vt220-rm/chapter4.html#S4.2)
- **VT510:** [4.2 Control Characters](https://vt100.net/docs/vt510-rm/chapter4.html#S4.2)

On receiving ENQ, the terminal sends its *answerback message* to the host.
ECMA-48 says only that ENQ is "a request for a response from a receiver", and
leaves its use to ISO 1745. DEC terminals answer with a message the user stores in the
terminal's setup, so that a host on the far end of a modem line could ask who
had called. DEC STD 070 has ENQ only in an appendix of exceptions to the
standard, and says the message "is empty by factory default". An empty
message means nothing is sent at all.

Nothing on the screen changes, and the cursor does not move.

libghostty-vt asks its host for the message. Ghostty's `enquiry-response`
setting, empty by default, is that message. The cases here run with
Ghostty's default, so ENQ gets no answer, as it does on a DEC terminal fresh
from the factory.

## Validation

### ENQ-1: No answerback message

Input, one step per line:

```text
AB
\x05
C
```

Expected screen:

```text
|ABC__|
cursor 1,4
reply none
```

---

This is the Markdown version of <https://control-codes.page/c0/enq/>. On that page every validation case runs live in libghostty-vt, the terminal emulation core of Ghostty, compiled to WebAssembly.

The validation cases are written in the notation described in <https://control-codes.page/notation/index.html.md>.
