Your company here — click to reach over 10,000 unique daily visitors

anno - Man Page

annotate nmh messages


anno [-help] [-version] [+folder] [msgs] [-component field] [-inplace | -noinplace] [-date | -nodate] [-draft] [-append] [-list] [-delete] [-number [num|all]] [-preserve | -nopreserve] [-text body]


anno manipulates header fields or annotations in messages. Header fields consist of a field name and an optional field body as defined by RFC 2822. The -component switch specifies the field name, and the -text switch specifies the field body.

The messages are either the msgs in the named folder, or the draft if invoked with the -draft switch.

Usually, annotation is performed by the commands dist, forw, and repl, if they are given the -anno switch.  This allows you to keep track of your distribution of, forwarding of, and replies to a message.

By using anno, you can perform arbitrary annotations of your own. Each message selected will be annotated with the lines

   field: date
   field: body

The -nodate switch inhibits the date annotation, leaving only the body annotation.

By default, anno prepends the annotations to the message. Annotations are instead appended if the -append switch is specified.

If a -component field is not specified when anno is invoked, anno will prompt the user for a field name.

The field specified must be a valid RFC 2822-style message field name, consisting only of alphanumeric characters and dashes. The body may consist of arbitrary text.

Normally anno does the annotation in place in order to preserve any links to the message.  You may change this by using the -noinplace switch.

The -list switch produces a listing of the field bodies for header fields with names matching the specified component, one per line. The listing is numbered, starting at 1, if the -number switch is also used. A tab character separates the number and the field body. The field body is treated as if it is a file name, and only the final path name component is listed. The complete field body is listed if the -text switch is used; the argument to the -text switch is required but ignored.

The -delete switch removes header fields from messages. The first header field whose name matches the component is deleted if no other options are specified. If the -text switch is used in conjunction with the -delete switch, the first header field whose name matches the component and whose body matches the text is deleted. The text is treated as if it was a file name; if it begins with a slash, the entire field body must match the text, otherwise just the last path name component of the field body must match. If the -number switch is used in conjunction with the -delete switch, header field num whose name matches the component is deleted. The number matches that which is produced by the -list switch. The special value all can be used for the number, and causes all components that match the name to be deleted.

By default, anno changes the last-accessed and last-modified times on annotated messages to the time of the annotation. anno preserves the original times if the -preserve switch is used. A matching -nopreserve switch allows time preservation to be turned off, if enabled in the profile.



The user's profile.

Profile Components


To determine the user's nmh directory.


To find the default current folder.

See Also

dist(1), forw(1), repl(1)



The current folder.


The current message.




If a folder is given, it will become the current folder.  The first message annotated will become the current message.

Referenced By


2005-12-07 nmh-1.8