View | Details | Raw Unified | Return to bug 20183 | Differences between
and this patch

Collapse All | Expand All

(-)article.sgml (-148 / +148 lines)
Lines 35-41 Link Here
35
      initial philosophies behind MH were developed. MH isn't so much
35
      initial philosophies behind MH were developed. MH isn't so much
36
      a monolithic email program but a philosophy about how best to
36
      a monolithic email program but a philosophy about how best to
37
      develop tools for reading email. The MH developers have done a
37
      develop tools for reading email. The MH developers have done a
38
      great job adhering to the <acronym>KISS</> principle: Keep It
38
      great job adhering to the <acronym>KISS</acronym> principle: Keep It
39
      Simple Stupid.  Rather than have one large program for reading,
39
      Simple Stupid.  Rather than have one large program for reading,
40
      sending and handling email they have written specialized
40
      sending and handling email they have written specialized
41
      programs for each part of your email life. One might liken MH to
41
      programs for each part of your email life. One might liken MH to
Lines 64-72 Link Here
64
	</screen>
64
	</screen>
65
      </informalexample>
65
      </informalexample>
66
66
67
      You will notice that it created a <filename>/usr/local/lib/mh</>
67
      You will notice that it created a <filename>/usr/local/lib/mh</filename>
68
      directory for you as well as adding several binaries to the
68
      directory for you as well as adding several binaries to the
69
      <filename>/usr/local/bin</> directory. If you would prefer to
69
      <filename>/usr/local/bin</filename> directory. If you would prefer to
70
      compile it yourself then you can anonymous ftp it from <ulink
70
      compile it yourself then you can anonymous ftp it from <ulink
71
	URL="ftp://ftp.ics.uci.edu/">ftp.ics.uci.edu</ulink> or <ulink
71
	URL="ftp://ftp.ics.uci.edu/">ftp.ics.uci.edu</ulink> or <ulink
72
	URL="ftp://louie.udel.edu/">louie.udel.edu</ulink>.</para>
72
	URL="ftp://louie.udel.edu/">louie.udel.edu</ulink>.</para>
Lines 85-117 Link Here
85
  <sect1>
85
  <sect1>
86
    <title>Reading Mail</title>
86
    <title>Reading Mail</title>
87
87
88
    <para>This section covers how to use <command>inc</>,
88
    <para>This section covers how to use <command>inc</command>,
89
      <command>show</>, <command>scan</>, <command>next</>,
89
      <command>show</command>, <command>scan</command>, <command>next</command>,
90
      <command>prev</>, <command>rmm</>, <command>rmf</>, and
90
      <command>prev</command>, <command>rmm</command>, <command>rmf</command>, and
91
      <command>msgchk</>.  One of the best things about MH is the
91
      <command>msgchk</command>.  One of the best things about MH is the
92
      consistent interface between programs. A few things to keep in
92
      consistent interface between programs. A few things to keep in
93
      mind when using these commands is how to specify message lists.
93
      mind when using these commands is how to specify message lists.
94
      In the case of <command>inc</> this doesn't really make any
94
      In the case of <command>inc</command> this doesn't really make any
95
      sense but with commands like <command>show</> it is useful to
95
      sense but with commands like <command>show</command> it is useful to
96
      know. </para>
96
      know. </para>
97
97
98
    <para>A message list can consist of something like <parameter>23
98
    <para>A message list can consist of something like <parameter>23
99
	20 16</> which will act on messages 23, 20 and 16. This is
99
	20 16</parameter> which will act on messages 23, 20 and 16. This is
100
      fairly simple but you can do more useful things like
100
      fairly simple but you can do more useful things like
101
      <parameter>23-30</> which will act on all the messages between
101
      <parameter>23-30</parameter> which will act on all the messages between
102
      23 and 30. You can also specify something like
102
      23 and 30. You can also specify something like
103
      <parameter>cur:10</> which will act on the current message and
103
      <parameter>cur:10</parameter> which will act on the current message and
104
      the next 9 messages. The <parameter>cur</>, <parameter>last</>,
104
      the next 9 messages. The <parameter>cur</parameter>, <parameter>last</parameter>,
105
      and <parameter>first</> messages are special messages that refer
105
      and <parameter>first</parameter> messages are special messages that refer
106
      to the current, last or first message in the folder.</para>
106
      to the current, last or first message in the folder.</para>
107
107
108
    <sect2 id="inc">
108
    <sect2 id="inc">
109
      <title><command>inc</>, <command>msgchk</>&mdash;read in your
109
      <title><command>inc</command>, <command>msgchk</command>&mdash;read in your
110
	new email or check it</title>
110
	new email or check it</title>
111
111
112
      <para>If you just type in <userinput>inc</> and hit
112
      <para>If you just type in <userinput>inc</userinput> and hit
113
	<keycap>return</> you will be well on your way to getting
113
	<keycap>return</keycap> you will be well on your way to getting
114
	started with MH. The first time you run <command>inc</> it
114
	started with MH. The first time you run <command>inc</command> it
115
	will setup your account to use all the MH defaults and ask you
115
	will setup your account to use all the MH defaults and ask you
116
	about creating a Mail directory. If you have mail waiting to
116
	about creating a Mail directory. If you have mail waiting to
117
	be downloaded you will see something that looks like:</para>
117
	be downloaded you will see something that looks like:</para>
Lines 126-170 Link Here
126
      </informalexample>
126
      </informalexample>
127
127
128
      <para>This is the same thing you will see from a
128
      <para>This is the same thing you will see from a
129
	<command>scan</> (see <xref linkend="scan">). If you just run
129
	<command>scan</command> (see <xref linkend="scan">). If you just run
130
	<command>inc</> with no arguments it will look on your
130
	<command>inc</command> with no arguments it will look on your
131
	computer for email that is supposed to be coming to
131
	computer for email that is supposed to be coming to
132
	you.</para>
132
	you.</para>
133
133
134
      <para>A lot of people like to use POP for grabbing their email.
134
      <para>A lot of people like to use POP for grabbing their email.
135
	MH can do POP to grab your email. You will need to give
135
	MH can do POP to grab your email. You will need to give
136
	<command>inc</> a few command line arguments.</para>
136
	<command>inc</command> a few command line arguments.</para>
137
137
138
      <informalexample>
138
      <informalexample>
139
	<screen>&prompt.user; <userinput>inc -host mail.pop.org -user <replaceable>username</> -norpop</>
139
	<screen>&prompt.user; <userinput>inc -host mail.pop.org -user <replaceable>username</> -norpop</>
140
	</screen>
140
	</screen>
141
      </informalexample>
141
      </informalexample>
142
142
143
      <para>That tells <command>inc</> to go to
143
      <para>That tells <command>inc</command> to go to
144
	<parameter>mail.pop.org</> to download your email, and that
144
	<parameter>mail.pop.org</parameter> to download your email, and that
145
	your username on their system is <replaceable>username</>. The
145
	your username on their system is <replaceable>username</replaceable>. The
146
	<option>-norpop</option> option tells <command>inc</> to use
146
	<option>-norpop</option> option tells <command>inc</command> to use
147
	plain POP3 for downloading your email. MH has support for a
147
	plain POP3 for downloading your email. MH has support for a
148
	few different dialects of POP. More than likely you will never
148
	few different dialects of POP. More than likely you will never
149
	ever need to use them though. While you can do more complex
149
	ever need to use them though. While you can do more complex
150
	things with inc such as audit files and scan format files this
150
	things with inc such as audit files and scan format files this
151
	will get you going.</para>
151
	will get you going.</para>
152
152
153
      <para>The <command>msgchk</> command is used to get information
153
      <para>The <command>msgchk</command> command is used to get information
154
	on whether or not you have new email. <command>msgchk</> takes
154
	on whether or not you have new email. <command>msgchk</command> takes
155
	the same <option>-host</option> and <option>-user</option>
155
	the same <option>-host</option> and <option>-user</option>
156
	options that <command>inc</> takes.</para>
156
	options that <command>inc</command> takes.</para>
157
    </sect2>
157
    </sect2>
158
158
159
    <sect2 id="show">
159
    <sect2 id="show">
160
      <title><command>show</>, <command>next</> and
160
      <title><command>show</command>, <command>next</command> and
161
	<command>prev</>&mdash;displaying and moving through
161
	<command>prev</command>&mdash;displaying and moving through
162
	email</title>
162
	email</title>
163
163
164
      <para><command>show</> is to show a letter in your current
164
      <para><command>show</command> is to show a letter in your current
165
	folder.  Like <command>inc</>, <command>show</> is a fairly
165
	folder.  Like <command>inc</command>, <command>show</command> is a fairly
166
	straightforward command. If you just type <userinput>show</>
166
	straightforward command. If you just type <userinput>show</userinput>
167
	and hit <keycap>return</> then it displays the current
167
	and hit <keycap>return</keycap> then it displays the current
168
	message. You can also give specific message numbers to
168
	message. You can also give specific message numbers to
169
	show:</para>
169
	show:</para>
170
170
Lines 175-197 Link Here
175
175
176
      <para>This would display message numbers 32, 45 and 56 right
176
      <para>This would display message numbers 32, 45 and 56 right
177
	after each other. Unless you change the default behavior
177
	after each other. Unless you change the default behavior
178
	<command>show</> basically just does a <command>more</> on the
178
	<command>show</command> basically just does a <command>more</command> on the
179
	email message.</para>
179
	email message.</para>
180
180
181
      <para><command>next</> is used to move onto the next message and
181
      <para><command>next</command> is used to move onto the next message and
182
	<command>prev</> will go to the previous message. Both
182
	<command>prev</command> will go to the previous message. Both
183
	commands have an implied <command>show</> command so that when
183
	commands have an implied <command>show</command> command so that when
184
	you go to the next message it automatically displays
184
	you go to the next message it automatically displays
185
	it.</para>
185
	it.</para>
186
    </sect2>
186
    </sect2>
187
187
188
    <sect2 id="scan">
188
    <sect2 id="scan">
189
      <title><command>scan</>&mdash;shows you a scan of your
189
      <title><command>scan</command>&mdash;shows you a scan of your
190
	messages</title>
190
	messages</title>
191
191
192
      <para><command>scan</> will display a brief listing of the
192
      <para><command>scan</command> will display a brief listing of the
193
	messages in your current folder. This is an example of what
193
	messages in your current folder. This is an example of what
194
	the <command>scan</> command will give you.</para>
194
	the <command>scan</command> command will give you.</para>
195
195
196
      <informalexample>
196
      <informalexample>
197
	<screen>  30+ 01/16 "Jordan K. Hubbar  Re: FBSD 2.1&lt;&lt;&gt; Do you want a library instead of
197
	<screen>  30+ 01/16 "Jordan K. Hubbar  Re: FBSD 2.1&lt;&lt;&gt; Do you want a library instead of
Lines 205-236 Link Here
205
	configurable.  This is the typical default display. It gives
205
	configurable.  This is the typical default display. It gives
206
	you the message number, the date on the email, the sender, the
206
	you the message number, the date on the email, the sender, the
207
	subject line, and a sentence fragment from the very beginning
207
	subject line, and a sentence fragment from the very beginning
208
	of the email if it can fit it. The <literal>+</> means that
208
	of the email if it can fit it. The <literal>+</literal> means that
209
	message is the current message, so if you do a
209
	message is the current message, so if you do a
210
	<command>show</> it will display that message.</para>
210
	<command>show</command> it will display that message.</para>
211
211
212
      <para>One useful option for scan is the
212
      <para>One useful option for scan is the
213
	<option>-reverse</option> option. This will list your messages
213
	<option>-reverse</option> option. This will list your messages
214
	with the highest message number first and lowest message
214
	with the highest message number first and lowest message
215
	number last. Another useful option with <command>scan</> is to
215
	number last. Another useful option with <command>scan</command> is to
216
	have it read from a file. If you want to scan your incoming
216
	have it read from a file. If you want to scan your incoming
217
	mailbox on FreeBSD without having to <command>inc</> it you
217
	mailbox on FreeBSD without having to <command>inc</command> it you
218
	can do <command>scan -file
218
	can do <command>scan -file
219
	  /var/mail/<replaceable>username</></command>. This can be used
219
	  /var/mail/<replaceable>username</replaceable></command>. This can be used
220
	with any file that is in the <database>mbox</> format.</para>
220
	with any file that is in the <database>mbox</database> format.</para>
221
    </sect2>
221
    </sect2>
222
222
223
    <sect2 id="rmm">
223
    <sect2 id="rmm">
224
      <title><command>rmm</> and <command>rmf</>&mdash;remove the
224
      <title><command>rmm</command> and <command>rmf</command>&mdash;remove the
225
	current message or folder</title>
225
	current message or folder</title>
226
226
227
      <para><command>rmm</> is used to remove a mail message. The
227
      <para><command>rmm</command> is used to remove a mail message. The
228
	default is typically to not actually remove the message but to
228
	default is typically to not actually remove the message but to
229
	rename the file to one that is ignored by the MH commands. You
229
	rename the file to one that is ignored by the MH commands. You
230
	will need to through periodically and physically delete the
230
	will need to through periodically and physically delete the
231
	<quote>removed</> messages.</para>
231
	<quote>removed</quote> messages.</para>
232
232
233
      <para>The <command>rmf</> command is used to remove folders.
233
      <para>The <command>rmf</command> command is used to remove folders.
234
	This doesn't just rename the files but actually removes the
234
	This doesn't just rename the files but actually removes the
235
	from the hard drive so you should be careful when you use this
235
	from the hard drive so you should be careful when you use this
236
	command.</para>
236
	command.</para>
Lines 240-247 Link Here
240
      <title>A typical session of reading with MH</title>
240
      <title>A typical session of reading with MH</title>
241
241
242
      <para>The first thing that you will want to do is
242
      <para>The first thing that you will want to do is
243
	<command>inc</> your new mail. So at a shell prompt just type
243
	<command>inc</command> your new mail. So at a shell prompt just type
244
	in <command>inc</> and hit <keycap>return</>.</para>
244
	in <command>inc</command> and hit <keycap>return</keycap>.</para>
245
245
246
      <informalexample>
246
      <informalexample>
247
	<screen>&prompt.user; <userinput>inc</>
247
	<screen>&prompt.user; <userinput>inc</>
Lines 255-261 Link Here
255
      </informalexample>
255
      </informalexample>
256
256
257
      <para>This shows you the new email that has been added to your
257
      <para>This shows you the new email that has been added to your
258
	mailbox. So the next thing to do is <command>show</> the email
258
	mailbox. So the next thing to do is <command>show</command> the email
259
	and move around.</para>
259
	and move around.</para>
260
260
261
      <informalexample>
261
      <informalexample>
Lines 298-305 Link Here
298
	</screen>
298
	</screen>
299
      </informalexample>
299
      </informalexample>
300
300
301
      <para>The <command>rmm</> removed the current message and the
301
      <para>The <command>rmm</command> removed the current message and the
302
	<command>next</> command moved me on to the next message.  Now
302
	<command>next</command> command moved me on to the next message.  Now
303
	if I wanted to look at ten most recent messages so I could
303
	if I wanted to look at ten most recent messages so I could
304
	read one of them here is what I would do:</para>
304
	read one of them here is what I would do:</para>
305
305
Lines 320-326 Link Here
320
      </informalexample>
320
      </informalexample>
321
321
322
      <para>Then if I wanted to read message number 27 I would do a
322
      <para>Then if I wanted to read message number 27 I would do a
323
	<userinput>show 27</> and it would be displayed. As you can
323
	<userinput>show 27</userinput> and it would be displayed. As you can
324
	probably tell from this sample session MH is pretty easy to
324
	probably tell from this sample session MH is pretty easy to
325
	use and looking through emails and displaying them is fairly
325
	use and looking through emails and displaying them is fairly
326
	intuitive and easy.</para>
326
	intuitive and easy.</para>
Lines 337-355 Link Here
337
      the concept of folders. You have undoubtedly come across the
337
      the concept of folders. You have undoubtedly come across the
338
      folders concept using other email programs. MH has folders too.
338
      folders concept using other email programs. MH has folders too.
339
      MH can even do sub-folders of a folder. One thing you should
339
      MH can even do sub-folders of a folder. One thing you should
340
      keep in mind with MH is that when you ran <command>inc</> for
340
      keep in mind with MH is that when you ran <command>inc</command> for
341
      the first time and it asked you if it could create a
341
      the first time and it asked you if it could create a
342
      <filename>Mail</> directory it began storing everything in that
342
      <filename>Mail</filename> directory it began storing everything in that
343
      directory. If you look at that directory you will find a
343
      directory. If you look at that directory you will find a
344
      directory named <filename>inbox</>. The <filename>inbox</>
344
      directory named <filename>inbox</filename>. The <filename>inbox</filename>
345
      directory houses all of your incoming mail that hasn't been
345
      directory houses all of your incoming mail that hasn't been
346
      thrown anywhere else.</para>
346
      thrown anywhere else.</para>
347
347
348
    <para>Whenever you create a new folder a new directory is going to
348
    <para>Whenever you create a new folder a new directory is going to
349
      be created underneath your MH <filename>Mail</> directory, and
349
      be created underneath your MH <filename>Mail</filename> directory, and
350
      messages in that folder are going to be stored in that
350
      messages in that folder are going to be stored in that
351
      directory.  When new email comes in that new email is thrown
351
      directory.  When new email comes in that new email is thrown
352
      into your <filename>inbox</> directory with a file name that is
352
      into your <filename>inbox</filename> directory with a file name that is
353
      equivalent to the message number.  So even if you didn't have
353
      equivalent to the message number.  So even if you didn't have
354
      any of the MH tools to read your email you could still use
354
      any of the MH tools to read your email you could still use
355
      standard UNIX commands to munge around in those directories and
355
      standard UNIX commands to munge around in those directories and
Lines 357-384 Link Here
357
      a lot of power with what you can do with your email.</para>
357
      a lot of power with what you can do with your email.</para>
358
358
359
    <para>Just as you can use message lists like <parameter>23 16
359
    <para>Just as you can use message lists like <parameter>23 16
360
	42</> with most MH commands there is a folder option you can
360
	42</parameter> with most MH commands there is a folder option you can
361
      specify with just about every MH command. If you do a
361
      specify with just about every MH command. If you do a
362
      <command>scan +freebsd</> it will scan your <filename>freebsd</>
362
      <command>scan +freebsd</command> it will scan your <filename>freebsd</filename>
363
      folder, and your current folder will be changed to
363
      folder, and your current folder will be changed to
364
      <filename>freebsd</>. If you do a <command>show +freebsd 23 16
364
      <filename>freebsd</filename>. If you do a <command>show +freebsd 23 16
365
	42</>, <command>show</> is going to switch to your
365
	42</command>, <command>show</command> is going to switch to your
366
      <filename>freebsd</> folder and display messages 23, 16 and 42.
366
      <filename>freebsd</filename> folder and display messages 23, 16 and 42.
367
      So remember that <option>+<replaceable>folder</></> syntax. You
367
      So remember that <option>+<replaceable>folder</replaceable></option> syntax. You
368
      will need to make sure you use it to make commands process
368
      will need to make sure you use it to make commands process
369
      different folders. Remember you default folder for mail is
369
      different folders. Remember you default folder for mail is
370
      <filename>inbox</> so doing a <command>folder +inbox</> should
370
      <filename>inbox</filename> so doing a <command>folder +inbox</command> should
371
      always get you back to your mail. Of course, in MH's infinite
371
      always get you back to your mail. Of course, in MH's infinite
372
      flexibility this can be changed but most places have probably
372
      flexibility this can be changed but most places have probably
373
      left it as <command>inbox</>.</para>
373
      left it as <command>inbox</command>.</para>
374
374
375
    <sect2>
375
    <sect2>
376
      <title><command>pick</>&mdash;search email that matches certain
376
      <title><command>pick</command>&mdash;search email that matches certain
377
	criteria</title>
377
	criteria</title>
378
378
379
      <para><command>pick</> is one of the more complex commands in
379
      <para><command>pick</command> is one of the more complex commands in
380
	the MH system. So you might want to read the
380
	the MH system. So you might want to read the
381
	<citerefentry><refentrytitle>pick</><manvolnum>1</></> man
381
	<citerefentry><refentrytitle>pick</refentrytitle><manvolnum>1</manvolnum></citerefentry> man
382
	page for a more thorough understanding. At its simplest level
382
	page for a more thorough understanding. At its simplest level
383
	you can do something like</para>
383
	you can do something like</para>
384
384
Lines 392-403 Link Here
392
	</screen>
392
	</screen>
393
      </informalexample>
393
      </informalexample>
394
394
395
      <para>This will tell <command>pick</> to look through every
395
      <para>This will tell <command>pick</command> to look through every
396
	single line in every message in your current folder and tell
396
	single line in every message in your current folder and tell
397
	you which message numbers it found the word <literal>pci</>
397
	you which message numbers it found the word <literal>pci</literal>
398
	in. You can then <command>show</> those messages and read them
398
	in. You can then <command>show</command> those messages and read them
399
	if you wish or <command>rmm</> them. You would have to specify
399
	if you wish or <command>rmm</command> them. You would have to specify
400
	something like <command>show 15 42 55-57</> to display them
400
	something like <command>show 15 42 55-57</command> to display them
401
	though. A slightly more useful thing to do is this:</para>
401
	though. A slightly more useful thing to do is this:</para>
402
402
403
      <informalexample>
403
      <informalexample>
Lines 410-425 Link Here
410
      <para>This will show you the same messages you just didn't have
410
      <para>This will show you the same messages you just didn't have
411
	to work as hard to do it. The <option>-seq</option> option is
411
	to work as hard to do it. The <option>-seq</option> option is
412
	really an abbreviation of <option>-sequence</option> and
412
	really an abbreviation of <option>-sequence</option> and
413
	<command>pick</> is just a sequence which contains the message
413
	<command>pick</command> is just a sequence which contains the message
414
	numbers that matched. You can use sequences with just about
414
	numbers that matched. You can use sequences with just about
415
	any MH command. So you could have done an <command>rmm pick</>
415
	any MH command. So you could have done an <command>rmm pick</command>
416
	and all those messages would be removed instead. You sequence
416
	and all those messages would be removed instead. You sequence
417
	can be named anything. If you run pick again it will overwrite
417
	can be named anything. If you run pick again it will overwrite
418
	the old sequence if you use the same name.</para>
418
	the old sequence if you use the same name.</para>
419
419
420
      <para>Doing a <command>pick -search</command> can be a bit more
420
      <para>Doing a <command>pick -search</command> can be a bit more
421
	time consuming than just searching for message from someone,
421
	time consuming than just searching for message from someone,
422
	or to someone. So <command>pick</> allows you to use the
422
	or to someone. So <command>pick</command> allows you to use the
423
	following predefined search criteria:</para>
423
	following predefined search criteria:</para>
424
424
425
      <variablelist>
425
      <variablelist>
Lines 468-474 Link Here
468
468
469
	  <listitem>
469
	  <listitem>
470
	    <para>search for any other component in the header. (i.e.
470
	    <para>search for any other component in the header. (i.e.
471
	      <option>--reply-to</> to find all emails with a certain
471
	      <option>--reply-to</option> to find all emails with a certain
472
	      reply-to in the header)</para>
472
	      reply-to in the header)</para>
473
	  </listitem>
473
	  </listitem>
474
	</varlistentry>
474
	</varlistentry>
Lines 482-488 Link Here
482
	</informalexample>
482
	</informalexample>
483
483
484
	to get a list of all the email send to the FreeBSD hackers
484
	to get a list of all the email send to the FreeBSD hackers
485
	mailing list. <command>pick</> also allows you to group these
485
	mailing list. <command>pick</command> also allows you to group these
486
	criteria in different ways using the following options:</para>
486
	criteria in different ways using the following options:</para>
487
487
488
      <itemizedlist>
488
      <itemizedlist>
Lines 531-572 Link Here
531
	something called operator precedence. Remember in math how you
531
	something called operator precedence. Remember in math how you
532
	evaluate from left to right and you do multiplication and
532
	evaluate from left to right and you do multiplication and
533
	division first and addition and subtraction second? MH has the
533
	division first and addition and subtraction second? MH has the
534
	same type of rules for <command>pick</>. It's fairly complex
534
	same type of rules for <command>pick</command>. It's fairly complex
535
	so you might want to study the man page. This document is just
535
	so you might want to study the man page. This document is just
536
	to help you get acquainted with MH.</para>
536
	to help you get acquainted with MH.</para>
537
    </sect2>
537
    </sect2>
538
538
539
    <sect2>
539
    <sect2>
540
      <title><command>folder</>, <command>folders</>,
540
      <title><command>folder</command>, <command>folders</command>,
541
	<command>refile</>&mdash;three useful programs for folder
541
	<command>refile</command>&mdash;three useful programs for folder
542
	maintenance</title>
542
	maintenance</title>
543
543
544
      <para>There are three programs which are primarily just for
544
      <para>There are three programs which are primarily just for
545
	manipulating your folders. The <command>folder</> program is
545
	manipulating your folders. The <command>folder</command> program is
546
	used to switch between folders, pack them, and list them. At
546
	used to switch between folders, pack them, and list them. At
547
	its simplest level you can do a <command>folder
547
	its simplest level you can do a <command>folder
548
	+<replaceable>newfolder</></> and you will be switched into
548
	+<replaceable>newfolder</replaceable></command> and you will be switched into
549
	<replaceable>newfolder</>. From there on out all your MH
549
	<replaceable>newfolder</replaceable>. From there on out all your MH
550
	commands like <command>comp</>, <command>repl</>,
550
	commands like <command>comp</command>, <command>repl</command>,
551
	<command>scan</>, and <command>show</> will act on that
551
	<command>scan</command>, and <command>show</command> will act on that
552
	<command>newfolder</> folder.</para>
552
	<command>newfolder</command> folder.</para>
553
553
554
      <para>Sometimes when you are reading and deleting messages you
554
      <para>Sometimes when you are reading and deleting messages you
555
	will develop <quote>holes</> in your folders. If you do a
555
	will develop <quote>holes</quote> in your folders. If you do a
556
	<command>scan</> you might just see messages 34, 35, 36, 43,
556
	<command>scan</command> you might just see messages 34, 35, 36, 43,
557
	55, 56, 57, 80. If you do a <command>folder -pack</command>
557
	55, 56, 57, 80. If you do a <command>folder -pack</command>
558
	this will renumber all your messages so that there are no
558
	this will renumber all your messages so that there are no
559
	holes. It doesn't actually delete any messages though. So you
559
	holes. It doesn't actually delete any messages though. So you
560
	may need to periodically go through and physically delete
560
	may need to periodically go through and physically delete
561
	<command>rmm</>'d messages.</para>
561
	<command>rmm</command>'d messages.</para>
562
562
563
      <para>If you need statistics on your folders you can do a
563
      <para>If you need statistics on your folders you can do a
564
	<command>folders</> or <command>folder -all</command> to list
564
	<command>folders</command> or <command>folder -all</command> to list
565
	all your folders, how many messages they have, what the
565
	all your folders, how many messages they have, what the
566
	current message is in each one and so on. This line of stats
566
	current message is in each one and so on. This line of stats
567
	it displays for all your folders is the same one you get when
567
	it displays for all your folders is the same one you get when
568
	you change to a folder with <command>folder +foldername</>. A
568
	you change to a folder with <command>folder +foldername</command>. A
569
	<command>folders</> command looks like this:</para>
569
	<command>folders</command> command looks like this:</para>
570
570
571
      <informalexample>
571
      <informalexample>
572
	<screen>                Folder      # of messages (  range  ); cur  msg  (other files)
572
	<screen>                Folder      # of messages (  range  ); cur  msg  (other files)
Lines 585-601 Link Here
585
	</screen>
585
	</screen>
586
      </informalexample>
586
      </informalexample>
587
  
587
  
588
      <para>The <command>refile</> command is what you use to move
588
      <para>The <command>refile</command> command is what you use to move
589
	messages between folders. When you do something like
589
	messages between folders. When you do something like
590
	<command>refile 23 +netfuture</> message number 23 is moved
590
	<command>refile 23 +netfuture</command> message number 23 is moved
591
	into the <filename>netfuture</> folder. You could also do
591
	into the <filename>netfuture</filename> folder. You could also do
592
	something like <command>refile 23 +netfuture/latest</> which
592
	something like <command>refile 23 +netfuture/latest</command> which
593
	would put message number 23 in a subfolder called
593
	would put message number 23 in a subfolder called
594
	<filename>latest</> under the <filename>netfuture</> folder.
594
	<filename>latest</filename> under the <filename>netfuture</filename> folder.
595
	If you want to keep a message in the current folder and link
595
	If you want to keep a message in the current folder and link
596
	it you can do a <command>refile -link 23 +netfuture</command>
596
	it you can do a <command>refile -link 23 +netfuture</command>
597
	which would keep 23 in your current <filename>inbox</> but
597
	which would keep 23 in your current <filename>inbox</filename> but
598
	also list in your <filename>netfuture</> folder. You are
598
	also list in your <filename>netfuture</filename> folder. You are
599
	probably beginning to realize some of the really powerful
599
	probably beginning to realize some of the really powerful
600
	things you can do with MH.</para>
600
	things you can do with MH.</para>
601
    </sect2>
601
    </sect2>
Lines 613-641 Link Here
613
      Subject: headers already in it.  You are then sent into your
613
      Subject: headers already in it.  You are then sent into your
614
      editor where you fill in the header information and then type
614
      editor where you fill in the header information and then type
615
      the body of your message below the dashed lines in the message.
615
      the body of your message below the dashed lines in the message.
616
      Then to the <command>whatnow</> program. When you are at the
616
      Then to the <command>whatnow</command> program. When you are at the
617
      <prompt>What now?</prompt> prompt you can tell it to
617
      <prompt>What now?</prompt> prompt you can tell it to
618
      <command>send</>, <command>list</>, <command>edit</>,
618
      <command>send</command>, <command>list</command>, <command>edit</command>,
619
      <command>edit</>, <command>push</>, and <command>quit</>. Most
619
      <command>edit</command>, <command>push</command>, and <command>quit</command>. Most
620
      of these commands are self-explanatory. So the message sending
620
      of these commands are self-explanatory. So the message sending
621
      process involves copying a component file, editing your email,
621
      process involves copying a component file, editing your email,
622
      and then telling the <command>whatnow</> program what to do with
622
      and then telling the <command>whatnow</command> program what to do with
623
      your email.</para>
623
      your email.</para>
624
624
625
    <sect2>
625
    <sect2>
626
      <title><command>comp</>, <command>forw</>,
626
      <title><command>comp</command>, <command>forw</command>,
627
	<command>reply</>&mdash;compose, forward or reply to a message
627
	<command>reply</command>&mdash;compose, forward or reply to a message
628
	to someone</title>
628
	to someone</title>
629
629
630
      <para>The <command>comp</> program has a few useful command line
630
      <para>The <command>comp</command> program has a few useful command line
631
	options. The most important one to know right now is the
631
	options. The most important one to know right now is the
632
	<option>-editor</option> option. When MH is installed the
632
	<option>-editor</option> option. When MH is installed the
633
	default editor is usually a program called
633
	default editor is usually a program called
634
	<command>prompter</> which comes with MH. It's not a very
634
	<command>prompter</command> which comes with MH. It's not a very
635
	exciting editor and basically just gets the job done. So when
635
	exciting editor and basically just gets the job done. So when
636
	you go to compose a message to someone you might want to use
636
	you go to compose a message to someone you might want to use
637
	<command>comp -editor /usr/bin/vi/</> or <command>comp -editor
637
	<command>comp -editor /usr/bin/vi/</command> or <command>comp -editor
638
	/usr/local/bin/pico/</> instead. Once you have run
638
	/usr/local/bin/pico/</command> instead. Once you have run
639
	<emphasis>comp</emphasis> you are in your editor and you see
639
	<emphasis>comp</emphasis> you are in your editor and you see
640
	something that looks like this:</para>
640
	something that looks like this:</para>
641
641
Lines 648-656 Link Here
648
      </informalexample>
648
      </informalexample>
649
649
650
      <para>You need to put the person you are sending the mail to
650
      <para>You need to put the person you are sending the mail to
651
	after the <literal>To:</> line. It works the same way for the
651
	after the <literal>To:</literal> line. It works the same way for the
652
	other headers also, so you would need to put your subject
652
	other headers also, so you would need to put your subject
653
	after the <literal>Subject:</> line. Then you would just put
653
	after the <literal>Subject:</literal> line. Then you would just put
654
	the body of your message after the dashed lines. It may seem a
654
	the body of your message after the dashed lines. It may seem a
655
	bit simplistic since a lot of email programs have special
655
	bit simplistic since a lot of email programs have special
656
	requesters that ask you for this information but there really
656
	requesters that ask you for this information but there really
Lines 667-721 Link Here
667
      </informalexample>
667
      </informalexample>
668
668
669
      <para>You can now save this message and exit your editor. You
669
      <para>You can now save this message and exit your editor. You
670
	will see the <prompt>What now?</> prompt and you can type in
670
	will see the <prompt>What now?</prompt> prompt and you can type in
671
	<userinput>send</> or <userinput>s</> and hit
671
	<userinput>send</userinput> or <userinput>s</userinput> and hit
672
	<keycap>return</>. Then the FreeBSD core team will receive
672
	<keycap>return</keycap>. Then the FreeBSD core team will receive
673
	their just rewards. As I mentioned earlier you can also use
673
	their just rewards. As I mentioned earlier you can also use
674
	other commands, for example <command>quit</> if you don't want
674
	other commands, for example <command>quit</command> if you don't want
675
	to send the message.</para>
675
	to send the message.</para>
676
676
677
      <para>The <command>forw</> command is stunningly similar. The
677
      <para>The <command>forw</command> command is stunningly similar. The
678
	big difference being that the message you are forwarding is
678
	big difference being that the message you are forwarding is
679
	automatically included in the outgoing message. When you run
679
	automatically included in the outgoing message. When you run
680
	<command>forw</> it will forward your current message. You can
680
	<command>forw</command> it will forward your current message. You can
681
	always tell it to forward something else by doing something
681
	always tell it to forward something else by doing something
682
	like <command>forw 23</> and then message number 23 will be
682
	like <command>forw 23</command> and then message number 23 will be
683
	put in your outgoing message instead of the current message.
683
	put in your outgoing message instead of the current message.
684
	Beyond those small differences <command>forw</> functions
684
	Beyond those small differences <command>forw</command> functions
685
	exactly the same as <command>comp</>. You go through the exact
685
	exactly the same as <command>comp</command>. You go through the exact
686
	same message sending process.</para>
686
	same message sending process.</para>
687
687
688
      <para>The <command>repl</> command will reply to whatever your
688
      <para>The <command>repl</command> command will reply to whatever your
689
	current message is, unless you give it a different message to
689
	current message is, unless you give it a different message to
690
	reply to. <command>repl</> will do its best to go ahead and
690
	reply to. <command>repl</command> will do its best to go ahead and
691
	fill in some of the email headers already. So you will notice
691
	fill in some of the email headers already. So you will notice
692
	that the <literal>To:</> header already has the address of the
692
	that the <literal>To:</literal> header already has the address of the
693
	recipient in there. Also the <literal>Subject:</> line will
693
	recipient in there. Also the <literal>Subject:</literal> line will
694
	already be filled in.  You then go about the normal message
694
	already be filled in.  You then go about the normal message
695
	composition process and you are done. One useful command line
695
	composition process and you are done. One useful command line
696
	option to know here is the <option>-cc</option> option. You
696
	option to know here is the <option>-cc</option> option. You
697
	can use <parameter>all</>, <parameter>to</>, <parameter>cc</>,
697
	can use <parameter>all</parameter>, <parameter>to</parameter>, <parameter>cc</parameter>,
698
	<parameter>me</> after the <option>-cc</option> option to have
698
	<parameter>me</parameter> after the <option>-cc</option> option to have
699
	<command>repl</> automatically add the various addresses to
699
	<command>repl</command> automatically add the various addresses to
700
	the cc list in the message. You have probably noticed that the
700
	the cc list in the message. You have probably noticed that the
701
	original message isn't included. This is because most MH
701
	original message isn't included. This is because most MH
702
	setups are configured to do this from the start.</para>
702
	setups are configured to do this from the start.</para>
703
    </sect2>
703
    </sect2>
704
704
705
    <sect2>
705
    <sect2>
706
      <title><filename>components</>, and
706
      <title><filename>components</filename>, and
707
	<filename>replcomps</>&mdash;components files for
707
	<filename>replcomps</filename>&mdash;components files for
708
	<command>comp</> and <command>repl</></title>
708
	<command>comp</command> and <command>repl</command></title>
709
709
710
      <para>The <filename>components</> file is usually in
710
      <para>The <filename>components</filename> file is usually in
711
	<filename>/usr/local/lib/mh</filename>. You can copy that file
711
	<filename>/usr/local/lib/mh</filename>. You can copy that file
712
	into your MH Mail directory and edit to contain what you want
712
	into your MH Mail directory and edit to contain what you want
713
	it to contain. It is a fairly basic file. You have various
713
	it to contain. It is a fairly basic file. You have various
714
	email headers at the top, a dashed line and then nothing. The
714
	email headers at the top, a dashed line and then nothing. The
715
	<command>comp</command> command just copies this
715
	<command>comp</command> command just copies this
716
	<filename>components</> file and then edits it. You can add
716
	<filename>components</filename> file and then edits it. You can add
717
	any kind of valid RFC822 header you want. For instance you
717
	any kind of valid RFC822 header you want. For instance you
718
	could have something like this in your <filename>components</>
718
	could have something like this in your <filename>components</filename>
719
	file:</para>
719
	file:</para>
720
720
721
      <informalexample>
721
      <informalexample>
Lines 729-741 Link Here
729
      </informalexample>
729
      </informalexample>
730
730
731
      <para>MH would then copy this components file and throw you into
731
      <para>MH would then copy this components file and throw you into
732
	your editor. The <filename>components</> file is fairly
732
	your editor. The <filename>components</filename> file is fairly
733
	simple.  If you wanted to have a signature on those messages
733
	simple.  If you wanted to have a signature on those messages
734
	you would just put your signature in that
734
	you would just put your signature in that
735
	<filename>components</> file.</para>
735
	<filename>components</filename> file.</para>
736
736
737
      <para>The <filename>replcomps</> file is a bit more complex. The
737
      <para>The <filename>replcomps</filename> file is a bit more complex. The
738
	default <filename>replcomps</> looks like this:</para>
738
	default <filename>replcomps</filename> looks like this:</para>
739
739
740
      <informalexample>
740
      <informalexample>
741
	<screen>%(lit)%(formataddr %&lt;{reply-to}%?{from}%?{sender}%?{return-path}%&gt;)\
741
	<screen>%(lit)%(formataddr %&lt;{reply-to}%?{from}%?{sender}%?{return-path}%&gt;)\
Lines 752-763 Link Here
752
      </informalexample>
752
      </informalexample>
753
753
754
      <para>It's in the same basic format as the
754
      <para>It's in the same basic format as the
755
	<filename>components</> file but it contains quite a few extra
755
	<filename>components</filename> file but it contains quite a few extra
756
	formatting codes. The <literal>%(lit)</> command makes room
756
	formatting codes. The <literal>%(lit)</literal> command makes room
757
	for the address. The <literal>%(formataddr</> is a function
757
	for the address. The <literal>%(formataddr</literal> is a function
758
	that returns a proper email address. The next part is
758
	that returns a proper email address. The next part is
759
	<literal>%&lt;</literal> which means if and the
759
	<literal>%&lt;</literal> which means if and the
760
	<literal>{reply-to}</> means the reply-to field in the
760
	<literal>{reply-to}</literal> means the reply-to field in the
761
	original message. So that might be translated this way:</para>
761
	original message. So that might be translated this way:</para>
762
762
763
      <informalexample>
763
      <informalexample>
Lines 774-780 Link Here
774
	variables mean. All of the information on writing these format
774
	variables mean. All of the information on writing these format
775
	strings is in the MH-Format man page. The really nice thing is
775
	strings is in the MH-Format man page. The really nice thing is
776
	that once you have built your customized
776
	that once you have built your customized
777
	<filename>replcomps</> file you won't need to touch it again.
777
	<filename>replcomps</filename> file you won't need to touch it again.
778
	No other email program really gives you the power and
778
	No other email program really gives you the power and
779
	flexibility that MH gives you.</para>
779
	flexibility that MH gives you.</para>
780
    </sect2>
780
    </sect2>

Return to bug 20183