Skip to main content

32.4.2 Mail Header Editing

Message mode provides the following special commands to move to particular header fields and to complete addresses in headers.

C-c C-f C-t​

Move to the β€˜To’ header (message-goto-to).

C-c C-f C-s​

Move to the β€˜Subject’ header (message-goto-subject).

C-c C-f C-c​

Move to the β€˜CC’ header (message-goto-cc).

C-c C-f C-b​

Move to the β€˜BCC’ header (message-goto-bcc).

C-c C-f C-r​

Move to the β€˜Reply-To’ header (message-goto-reply-to).

C-c C-f C-f​

Move to the β€˜Mail-Followup-To’ header field (message-goto-followup-to).

C-c C-f C-w​

Add a new β€˜FCC’ header field, with file-name completion (message-goto-fcc).

C-c C-b​

Move to the start of the message body (message-goto-body).


Complete a mailing address (message-tab).

The commands to move point to particular header fields are all based on the prefix C-c C-f (β€˜C-f’ is for β€œfield"). If the field in question does not exist, the command creates one (the exception is mail-fcc, which creates a new field each time).

The command C-c C-b (message-goto-body) moves point to just after the header separator lineβ€”that is, to the beginning of the body.

While editing a header field that contains addresses, such as β€˜To:’, β€˜CC:’ and β€˜BCC:’, you can complete an address by typing TAB (message-tab). This attempts to insert the full name corresponding to the address based on a couple of methods, including EUDC, a library that recognizes a number of directory server protocols (see EUDC in The Emacs Unified Directory Client). Failing that, it attempts to expand the address as a mail alias (see Mail Aliases). If point is on a header field that does not take addresses, or if it is in the message body, then TAB just inserts a tab character.