7. Deleting Messages

In VM, messages are flagged for deletion, and then are subsequently
expunged or removed from the folder. The messages are not removed
from the on-disk copy of the folder until the folder is saved.

d (vm-delete-message)

Flags the current message for deletion. A prefix argument n
causes the current message and the next n-1 messages to be flagged.
A negative n causes the current message and the previous n-1
messages to be flagged.

u (vm-undelete-message)

Removes the deletion flag from the current message. A prefix argument n
causes the current message and the next n-1 messages to be undeleted.
A negative n causes the current message and the previous n-1
messages to be undeleted.

k (vm-kill-subject)

Flags all messages with the same subject as the current message (ignoring
"Re:") for deletion.

### (vm-expunge-folder)

Does the actual removal of messages flagged for deletion in the current
folder.

Setting the variable vm-move-after-deleting non-nil causes
VM to move past the messages after flagging them for deletion. Setting
vm-move-after-undeleting non-nil causes similar movement
after undeletes. Setting vm-move-after-killing non-nil
causes VM to move after killing messages with vm-kill-subject.
Note that the movement is done by calling vm-next-message which
means that the value of vm-circular-folders applies to the
post-command motion as for a motion command, not as for a non-motion
command.