Add support for a -subject switch to comp.
[mmh] / man / comp.man
1 .\"
2 .\" %nmhwarning%
3 .\"
4 .TH COMP %manext1% "%nmhdate%" MH.6.8 [%nmhversion%]
5 .SH NAME
6 comp \- compose a message
7 .SH SYNOPSIS
8 .HP 5
9 .na
10 .B comp 
11 .RI [ +folder ]
12 .RI [ msgs ]
13 .RB [ \-form
14 .IR formfile ]
15 .RB [ \-use " | " \-nouse ]
16 .RB [ \-file
17 .IR file ]
18 .RB [ \-draftfolder
19 .IR +folder ]
20 .RB [ \-draftmessage
21 .IR msg ]
22 .RB [ \-nodraftfolder ]
23 .RB [ \-editor
24 .IR editor ]
25 .RB [ \-noedit ]
26 .RB [ \-width
27 .IR columns ]
28 .RB [ \-from
29 .IR address ]
30 .RB [ \-to
31 .IR address ]
32 .RB [ \-cc
33 .IR address ]
34 .RB [ \-fcc
35 .IR +folder ]
36 .RB [ \-subject
37 .IR text ]
38 .RB [ \-whatnowproc
39 .IR program ]
40 .RB [ \-nowhatnowproc ]
41 .RB [ \-version ]
42 .RB [ \-help ]
43 .ad
44 .SH DESCRIPTION
45 .B Comp
46 is used to create a new message to be mailed.  It copies a
47 message form to the draft being composed and then invokes an editor on
48 the draft (unless
49 .B \-noedit
50 is given, in which case the initial edit is suppressed).
51 .PP
52 The default message template \*(lqcomponents\*(rq will direct
53 .B comp
54 to construct the messgage draft as follows:
55 .PP
56 .RS 5
57 .nf
58 From: {from switch} or <Local-Mailbox> or <username@hostname>
59 To: {to switch} or blank
60 cc: {cc switch} or blank
61 Fcc: {fcc switch} or +outbox
62 Subject: {subject switch} or blank
63 --------
64 .fi
65 .RE
66 .PP
67 If a file named
68 .RI \*(lq components \*(rq
69 exists in the user's nmh directory,
70 it will be used instead of this form.  You may specify an alternate
71 forms file with the switch
72 .B \-form
73 .IR formfile .
74 .PP
75 You may also start
76 .B comp
77 using the contents of an existing message
78 as the form.  If you supply either a
79 .I +folder
80 or
81 .I msg
82 argument, that
83 message will be used as the message form.  You may not supply both a
84 .B \-form
85 .I formfile
86 and a
87 .I +folder
88 or
89 .I msg
90 argument.  The line of
91 dashes or a blank line must be left between the header and the body of
92 the message for the message to be identified properly when it is sent
93 (see
94 .BR send (1)).
95 .PP
96 The switch
97 .B \-use
98 directs
99 .B comp
100 to continue editing an already
101 started message.  That is, if a
102 .B comp
103 (or
104 .BR dist ,
105 .BR repl ,
106 or
107 .BR forw )
108 is terminated without sending the draft, the draft can
109 be edited again via
110 .RB \*(lq comp
111 .BR \-use \*(rq.
112 .PP
113 The
114 .B \-file
115 .I file
116 switch says to use the named file as the message draft.
117 .PP
118 Forms that are selected via the
119 .B \-form
120 switch are processed via the mh template system; see 
121 .BR mh\-format (5)
122 for details.  Drafts constructed from another mssage or with the
123 .B \-use
124 or
125 .B \-file
126 switchs will NOT be processed with
127 .BR mh\-format (5).
128 .PP
129 In addition to the standard
130 .BR mh\-format (5)
131 escapes,
132 .B comp
133 the following
134 .I component
135 escapes are either new or have an alternate meaning:
136 .PP
137 .RS 5
138 .nf
139 .ta \w'Escape  'u +\w'Returns  'u
140 .I Escape       Returns Description
141 fcc     string  Any folders specified with `\-fcc\ folder'
142 from    string  Any addresses specified with `\-from\ address'
143 to      string  Any addresses specified with `\-to\ address'
144 cc      string  Any addresses specified with `\-cc\ address'
145 subject string  Any text specified with `\-subject\ text'
146 .fi
147 .RE
148 .PP
149 By default the \*(lqTo:\*(rq and \*(lqcc:\*(rq fields are empty.  You may
150 add addresses to these fields with the
151 .B \-to
152 .I address
153 and
154 .B \-cc
155 .I address
156 switches.  You may give these switches multiple times to add multiple
157 addresses.
158 .PP
159 By default the \*(lqFrom:\*(rq field has either the value of the
160 .B Local\-Mailbox
161 profile entry or a system default email address.  This default can be
162 overridden by using the
163 .B \-from
164 .I address
165 switch.
166 .PP
167 Any text you give to the
168 .B \-subject
169 switch will be placed in the \*(lqSubject:\*(rq field in the draft.
170 .PP
171 If the draft already exists,
172 .B comp
173 will ask you as to the disposition
174 of the draft.  A reply of
175 .B quit
176 will abort
177 .BR comp ,
178 leaving the draft intact;
179 .B replace
180 will replace the existing draft with
181 the appropriate form;
182 .B list
183 will display the draft;
184 .B use
185 will use the draft for further composition; and
186 .B refile
187 .I +folder
188 will file the draft in the given folder, and give you a new draft with the
189 appropriate form.  (The
190 .I +folder
191 argument to
192 .B refile
193 is required.)
194 .PP
195 The
196 .B \-draftfolder
197 .I +folder
198 and
199 .B \-draftmessage
200 .I msg
201 switches invoke the
202 .B nmh
203 draft folder facility.  This is an advanced (and highly
204 useful) feature.  Consult the
205 .BR mh-draft (5)
206 man page for more information.
207 .PP
208 The
209 .B \-editor
210 .I editor
211 switch indicates the editor to use for the
212 initial edit.  Upon exiting from the editor,
213 .B comp
214 will invoke the
215 .B whatnow
216 program.  See
217 .BR whatnow (1)
218 for a discussion of
219 available options.  The invocation of this program can be inhibited
220 by using the
221 .B \-nowhatnowproc
222 switch.  (In truth of fact, it is
223 the
224 .I whatnow
225 program which starts the initial edit.  Hence,
226 .B \-nowhatnowproc
227 will prevent any edit from occurring.)
228
229 .SH FILES
230 .fc ^ ~
231 .nf
232 .ta \w'%etcdir%/ExtraBigFileName  'u
233 ^%etcdir%/components~^The standard message skeleton
234 ^or <mh\-dir>/components~^Rather than the standard skeleton
235 ^$HOME/\&.mh\(ruprofile~^The user profile
236 ^<mh\-dir>/draft~^The draft file
237 .fi
238
239 .SH "PROFILE COMPONENTS"
240 .fc ^ ~
241 .nf
242 .ta 2.4i
243 .ta \w'ExtraBigProfileName  'u
244 ^Path:~^To determine the user's nmh directory
245 ^Draft\-Folder:~^To find the default draft\-folder
246 ^Editor:~^To override the default editor
247 ^Msg\-Protect:~^To set mode when creating a new message (draft)
248 ^fileproc:~^Program to refile the message
249 ^whatnowproc:~^Program to ask the \*(lqWhat now?\*(rq questions
250 .fi
251
252 .SH "SEE ALSO"
253 dist(1), forw(1), repl(1), send(1), whatnow(1), mh-profile(5)
254
255 .SH DEFAULTS
256 .nf
257 .RB ` +folder "' defaults to the current folder"
258 .RB ` msg "' defaults to the current message"
259 .RB ` \-nodraftfolder '
260 .RB ` \-nouse '
261 .fi
262
263 .SH CONTEXT
264 None
265
266 .SH BUGS
267 If
268 .I whatnowproc
269 is
270 .BR whatnow ,
271 then
272 .B comp
273 uses a built\-in
274 .BR whatnow ,
275 it does not actually run the
276 .B whatnow
277 program.
278 Hence, if you define your own
279 .IR whatnowproc ,
280 don't call it
281 .B whatnow
282 since
283 .B comp
284 won't run it.