Initial revision
[mmh] / man / mark.man
1 .\"
2 .\" %nmhwarning%
3 .\" $Id$
4 .\"
5 .\" include the -mh macro file
6 .so %etcdir%/tmac.h
7 .\"
8 .TH MARK %manext1% MH.6.8 [%nmhversion%]
9 .SH NAME
10 mark \- manipulate message sequences
11 .SH SYNOPSIS
12 .in +.5i
13 .ti -.5i
14 mark
15 \%[+folder] \%[msgs]
16 \%[\-sequence\ name\ ...]
17 \%[\-add]
18 .br
19 \%[\-delete] \%[\-list] 
20 \%[\-public] \%[\-nopublic]
21 \%[\-zero]
22 .br
23 \%[\-nozero]
24 \%[\-version]
25 \%[\-help]
26 .in -.5i
27 .SH DESCRIPTION
28 The \fImark\fR command manipulates message sequences by adding or deleting
29 message numbers from folder\-specific message sequences, or by listing
30 those sequences and messages.
31
32 A message sequence is a keyword, just like one of the \*(lqreserved\*(rq
33 message names, such as \*(lqfirst\*(rq or \*(lqnext\*(rq.  Unlike the
34 \*(lqreserved\*(rq message names, which have a fixed semantics on
35 a per\-folder basis, the semantics of a message sequence may be
36 defined, modified, and removed by the user.  Message sequences are
37 folder\-specific, e.g., the sequence name \*(lqseen\*(rq in the context
38 of folder \*(lq+inbox\*(rq need not have any relation whatsoever to the
39 sequence of the same name in a folder of a different name.
40
41 Three action switches direct the operation of \fImark\fR.  These switches
42 are mutually exclusive: the last occurrence of any of them overrides
43 any previous occurrence of the other two.
44
45 The `\-add' switch tells \fImark\fR to add messages to sequences or to
46 create a new sequence.  For each sequence named via the `\-sequence\ name'
47 argument (which must occur at least once) the messages named via `msgs'
48 (which defaults to \*(lqcur\*(rq if no `msgs' are given), are added to the
49 sequence.  The messages to be added need not be absent from the sequence.
50 If the `\-zero' switch is specified, the sequence will be emptied prior
51 to adding the messages.  Hence, `\-add\ \-zero' means that each sequence
52 should be initialized to the indicated messages, while `\-add\ \-nozero'
53 means that each sequence should be appended to by the indicated messages.
54
55 The `\-delete' switch tells \fImark\fR to delete messages from sequences,
56 and is the dual of `\-add'.  For each of the named sequences, the
57 named messages are removed from the sequence.  These messages need
58 not be already present in the sequence.  If the `\-zero' switch is
59 specified, then all messages in the folder are added to the sequence
60 (first creating the sequence, if necessary) before removing the messages.
61 Hence, `\-delete\ \-zero' means that each sequence should contain
62 all messages except those indicated, while `\-delete\ \-nozero' means
63 that only the indicated messages should be removed from each sequence.
64 As expected, the command `mark\0\-sequence\0foo\0\-delete\0all' deletes
65 the sequence \*(lqfoo\*(rq from the current folder.
66
67 When creating or modifying sequences, you can specify the switches
68 `\-public' or `\-nopublic' to force the new or modified sequences to be
69 \*(lqpublic\*(rq or \*(lqprivate\*(rq.  The switch `\-public' indicates
70 that the sequences should be made \*(lqpublic\*(rq.  These sequences
71 will then be readable by all \fInmh\fR users with permission to read the
72 relevant folders.  In contrast, the `\-nopublic' switch indicates that the
73 sequences should be made \*(lqprivate\*(rq, and will only be accessible by
74 you.  If neither of these switches is specified, then existing sequences
75 will maintain their current status, and new sequences will default to
76 \*(lqpublic\*(rq if you have write permission for the relevant folder.
77 Check the mh\-sequence(5) man page for more details about the difference
78 between \*(lqpublic\*(rq and \*(lqprivate\*(rq sequences.
79
80 The `\-list' switch tells \fImark\fR to list both the sequences defined
81 for the folder and the messages associated with those sequences.
82 \fIMark\fR will list the name of each sequence given by
83 `\-sequence\ name' and the messages associated with that sequence.  If the
84 sequence is private, this will also be indicated.  If no sequence is
85 specified by the `\-sequence' switch, then all sequences for this folder
86 will be listed.  The `\-zero' switch does not affect the operation of
87 `\-list'.
88
89 The current restrictions on sequences are:
90
91 .in +.25i
92 The name used to denote a message sequence must consist of an alphabetic
93 character followed by zero or more alphanumeric characters, and cannot
94 be one of the (reserved) message names \*(lqnew\*(rq, \*(lqfirst\*(rq,
95 \*(lqlast\*(rq, \*(lqall\*(rq, \*(lqnext\*(rq, or \*(lqprev\*(rq.
96
97 Only a certain number of sequences may be defined for a given folder.
98 This number is usually limited to 26 (10 on small systems).
99
100 Message ranges with user\-defined sequence names are restricted to the
101 form \*(lqname:n\*(rq, \*(lqname:+n\*(rq, or \*(lqname:-n\*(rq, and refer
102 to the first or last `n' messages of the sequence `name', respectively.
103 Constructs of the form \*(lqname1\-name2\*(rq are forbidden for user
104 defined sequences.
105 .in -.25i
106 .Fi
107 ^$HOME/\&.mh\(ruprofile~^The user profile
108 .Pr
109 ^Path:~^To determine the user's nmh directory
110 .Ps
111 ^Current\-Folder:~^To find the default current folder
112 .Sa
113 flist(1), pick(1), mh-sequence(5)
114 .De
115 `+folder' defaults to the current folder
116 .Ds
117 `\-add' if `\-sequence' is specified, `\-list' otherwise
118 .Ds
119 `msgs' defaults to cur (or all if `\-list' is specified)
120 .Ds
121 `\-nozero'
122 .Co
123 If a folder is given, it will become the current folder.
124 .Hh
125 Use \*(lqflist\*(rq to find folders with a given sequence, and
126 \*(lqpick sequence \-list\*(rq to enumerate those messages in
127 the sequence (such as for use by a shell script).
128 .En