Electronic mail, usually called email, e-mail or simply mail, is a method of sending messages to other people on the Net. As with other network services, there are two parts to mail software:
Email is defined by a number of Internet standards, the so-called . Here are the most important ones.
A number of UNIX MUAs have inadequate MIME support. Find one which does the job properly. On the other hand, if your target audience typically does not use MIME-
A mail user agent is a program that interfaces between the user and the mail system. It allows the user to read, forward and reply to incoming mail, and to send his own mail. It usually has facilities for creating and maintaining folders, where you can keep received
The oldest MUA you're likely to meet is mail. It's a very basic, character-oriented program, but nevertheless it has its advantages. You can use it in scripts to send mail. For example, if you have a job running and producing copious output, where you want to save the output, you might normally write something like:
$ longjob 2>1 > logfile
This command runs longjob. The sequence 2>1 redirects the error output to the > writes them to the file logfile. While this is a good way to solve the problem, you might find that you have a lot of such jobs, or that you tend to forget the log files and leave them
$ longjob 2>1 | mail me
In this case, me is your user ID. When the job finishes, you get a cron (see page 151) uses this method to send you its output.
mail has a number of limitations: it doesn't deal very well with long
Many more
There are two schools of thought about how to store mail:
mbox method. mail, elm and pine do it this way.exmh, xfmail and sylpheed, represent a folder as a directory. Each message in the folder is then a file by itself.mutt can use either method, but the default is the mbox method.Which method should you use? Both have their advocates. The directory and file approach is more
In this section, we'll take a detailed look at mutt. Start it by typing in its name. Like most UNIX MUAs, mutt runs on a character-oriented terminal, including of course an xterm. We'll take a look into my mailbox. By default, when starting it up you get a display like the one shown in Figure 26-1 .
(рис 26.1) mutt main menu
mutt sets
(рис 26.2) mutt main menu
The display of Figure 26-2 shows a number of things:
r next to some messages. This indicates that I have already replied to these messages.N signalizes a new message (an unread message that has arrived after the last invocation of mutt finished).D means that the message has been marked for deletion. It won't be deleted until you leave mutt or update the display with the $ command, and until then you can u command+ means that the message is addressed to me, and only to me. We'll see below how mutt decides who I am.T means that the message is addressed to me and other people.C means that the message is addressed to other people, and that I have been copied.F means that the message is from me.* means that the message is tagged: certain operations work on all tagged messages. We'll look at that on page 481.You'll notice in the example that the lines are of different
The index line for message 52 appears to be in j (move down) or k (move up). In the default display, it is in normal video (i.e. not reversed, or doubly reversed). You can also move between pages with the left and right cursor commands. Many commands, such as r (reply) or Enter (
(рис 26.3) mutt message display
Here, the display has changed to show the contents of the message. The top line now tells you the sender of the message, the subject, and how much of the message is displayed, in this case 50%. As before, the bottom line tells you the most common commands you might need in this context: they're not all the same as in the menu display.
The message itself is divided into three parts: the first 6 lines are a selection of the headers. The headers can be quite long. They include information on how the message got here, when it was sent, who sent it, who it was sent to, and much more. We'll look at them in more detail on page 484.
The headers are separated from the > character before each line, the sender has signalized that the text was written by another person, often the person to whom it is addressed: this message is a reply, and the text is what he is replying to. Normally there is an attribution above the text, but it's missing in this example. We'll see attributions below in the section on replying.
If the message is longer than one screen, press SPACE to page down and - (
To create a new message, press m. mutt starts your favorite editor for you. How does it know which one? If you specify the name of the editor in your .muttrc file, or set your EDITOR
In this case, we start emacsclient. emacsclient isn't really an editor at all: it simply finds an Emacs process and c-x c-#.
(рис 26.4) Creating a new message: initial state
Fill out the name of the intended recipient in the appropriate place, and enter the text of the message below the headers, leaving one line of space. Apart from this, most of the actions involved in sending a new
To reply to a message, in this case the message shown in Figure 26-3 , simply press r. Before entering any text, the editor screen looks like Figure 26-5 .
(рис 26.5) Replying to a message: initial state
You'll notice that mutt automatically "quotes" the text. The original text started with:
>I think I now understand the problem here. Try the following patch
>and tell me if it solves the problem:
>
>--- vinumio.c 2 May 2002 08:43:44 -0000 1.52.2.6
>+++ vinumio.c 19 Sep 2002 05:10:27 -0000
Tried patch. System no longer reads ad0h/ad2h, but after the second
'vinum start', the system shows 0 drives ('vinum ld' lists nothing.)
This message itself starts with quoted text, which indicates that it was written by somebody else. There should be a line at the top stating who wrote it, but it's missing here. The text from the submitter starts with Tried patch. When you reply, however, all this text is quoted again. The first line attributes the text below. You'll notice that this reply also includes a selection of headers for the outgoing message. This can be very
This is a reply to a technical question, so I change the for more details.
(рис 26.6) Replying to a message: after editing
In this example, I reply with the r (reply to sender) command. I could also do a group reply with the g key, which would include all the original recipients, so it wouldn't be necessary to add the
Next, I leave the editor with c-x c-# and return to the screen in Figure 26-7 . Here I have another opportunity to change some of the headers before sending the message. You'll note what seem to be a couple of additional headers in this display: PGP and . In fact, they're not headers at all. PGP states what parts of the message, if any, should be encrypted with pgp or gpg. In this case, Clear (the default) means not to encrypt anything.
: is also not a header. It specifies the name of a folder in which to save the outgoing message. We'll look at folders in the next section.
After making any further changes to the headers, I send the message with the y command, after which I return to the previous display.
(рис 26.7) Replying to a message: ready to send
mutt can handle multiple folders. It defaults to your incoming mail folder, sometimes called an inbox. On BSD, it is a single file in /var/mail with the same name as your user ID. We saw that above at the top of the index screen: mine is called /var/mail/grog.
mutt stores other folders as single files in the directory ~/Mail, in other words a Compose menu contained the pseudo-header =jbozza. This refers to the file ~/Mail/jbozza: mutt uses the
To keep incoming mail, you use the s (save) command, which sets a default folder name from the name of the sender, the same name as when saving sent messages. You can thus reply a message, saving a copy in the folder, then save the original message, without explicitly mentioning a folder name at all.
To read messages in a folder, you can tell mutt to read it directly on startup:
$ mutt -f =fred
Alternatively you can change folders with the c command.
Once you've finished reading a message, you may want to delete it. You can do this by entering d. The D fag appears on the left of the line, but nothing much else happens. The message doesn't get deleted until you exit mutt, or until you enter $.
When you save a message to a folder, it is automatically deleted from the current folder. If you don't want to do that, or if you have accidentally deleted a message, you can undelete it by entering u.
Finished reading a thread? You can delete the entire thread by entering ^D (Control-D) .
We've seen that you can delete an entire thread with a single t. In the example above, messages 51 and 64 are tagged. You can reply to all tagged messages in one reply by pressing ;r. In this case, mutt ignores the message under the cursor and replies only to the tagged messages, reply to all people on the To: headers of each message. Similarly, you can do a group reply to all the tagged messages with ;g, and you can delete thcode all with ;d.
We've already see that there are a lot of things that you can change about mutt's behavior. They are described in a file ~/.muttrc (the file .muttrc in your home directory). Here are a few of the more interesting entries in my .muttrc:
source /usr/local/etc/Muttrc
The file /usr/local/etc/Muttrc contains the default definitions for running mutt. Put this at the top of your .muttrc file so that the following definitions can override any previous definitions. This file also contains a large number of comments about how to set each variable, and what it does: it's over 3,000 lines long.
source ~/.mail_aliases
~/.mail_aliases is the name of an alias file, a file with
set alternates="greg.lehey®auug.org.au|groggy®|grog@|auugexec@|core@free"
This string is a + if the message is sent only to me, T if I am mentioned on the To: header, and C if I am mentioned on the Cc: header.
my_hdr Organization: LEMIS, PO Box 460, Echunga SA 5153, Australia my_hdr Phone: +61-8-8388-8286
These lines and more become headers in messages I send; you can see them in the examples above.
set editor=emacsclient
This line overrides the default editor in EDITOR. We've already seen the use of emacsclient.
set pager_index_lines=10
This tells mutt to keep ten lines of the index when displaying a message. Figure 26-8 shows what the display looks like when this is set. Clearly this isn't much use with a 25 line display. If, on the other hand, you have a larger X display, it can be very
set hdr_format="%4C %Z %{%d-%m-%Y} %-20.20L %-15.15t (%4l) %s" # format of the index
set status_on_top #put the status bar at the top
set sort=threads
set date_format="%A, %e %B %Y at %k:%M:%S %Z"
These variables tell mutt how to display the message index. They account for the difference in layout (but not color) between the default screen and the custom screen. hdr_format is a printf-like status_on_top reverses the information lines at the top and bottom of the display, sort=threads sets a threaded display by default (you can change it by pressing o), and date_format is set to international conventions.
(рис 26.8) Reading a message with pager index lines set
set edit_hdrs #let me edit the message header when composing set fast_reply #skip initial prompts when replying set attribution="On %d, %n wrote:" set charset="iso-8859-15" #character set for your terminal set sendmail_wait=-1
These variables specify how to write and reply to
edit_hdrs tells mutt to include the headers in the message you write, as shown in the preceding examples.fast_reply tells mutt not to prompt for a number of the headers. This is faster, and it's not necessary when you have the headers in the message you're writing.attribution describes the format of the attribution at the beginning of a reply, the text On Friday, 20 Septcodeber 2002 at 8:13:44 -0500, Jaime Bozza wrote: in the example above.charset specifies the character set to use for the message. This should correspond to the character set of the fonts on your display, otherwise things may look strange. ISO 8859-15 is the new Western European character set that includes the character for the Euro. You'll still see many message with the older Western European character set, ISO 8859-1, which is otherwise very similar.sendmail_wait tells mutt whether it should wait for the mail to be sent before continuing. This can take some time if your MTA has to perform numerous DNS lookups before it can send the message. Setting this variable to -1 tells mutt not to wait.ignore * unignore From: Date: To: Cc: Subject: X-Mailer: Resent-From: hdr_order Date: From: To: Cc: Subject: X-Mailer: Resent-From:
These specifications tell mutt to ignore all headers except for specific ones, and to sort them in the order specified, no matter what order they occur in the message.
Finally, .muttrc contains definitions to describe the color of the display. Many of these are personal preferences, so I'll just show a couple. Each definition specifies the
color normal black white
This is the basic default color, overriding the
color hdrdefault brightblack white color quoted brightblack white
This tells mutt to highlight headers and quoted text in bold.
color status black yellow
This tells mutt to display the
color index blue white FreeBSD
This tells mutt to display any messages with the text FreeBSD in blue on white, like messages 48 and 49 in the example above.
There are many more variables you can set to customize your mutt display. Read /usr/local/etc/Muttrc for more details.
You'll find that some people have strange mail IDs: they are unusual, confusing, or just plain difficult to type. Most MUAs give you the option of setting up aliases, short names for people you often contact. In mutt, you can put the aliases in the ~/.muttrc file, or you can put them in a separate file and tell mutt when to find them in the ~/.muttrc file, as illustrated above. The aliases file contains entries like this:
alias questions FreeBSD-questions@FreeBSD.org (FreeBSD Questions) alias stable FreeBSD Stable Users <FreeBSD-stable@FreeBSD.org>
The format is straightforward:
alias. Aliases can be placed in ~/.muttrc,so the word alias is used to distinguish them from other commands.questions and stable in this example).<>), or the mail ID followed by the name in ()).In mutt, you can add aliases to this file automatically with the a command, which offers default values relating to the current message.
In the message display above we saw only a selection of the mail headers that a message might contain. Sometimes it's interesting to look at them in more detail, especially if you're having mail problems. To look at the complete headers, press the h key. Figure 26-9 shows the complete headers of our message 52.
(рис 26.9) Complete headers
Return-Path:) is used to indicate the address to which error messages should be sent if something goes wrong with delivery. The FreeBSD mailing lists specify the list owner to avoid spamming senders with multiple error messages, which can easily happen when you send messages to a large Delivered -To: header specifies the user to whom the message was Received: headers, making up more than half the total number of lines. This is because it went via a Received: headers.
The first Received: header is split over three lines. It shows the most recent step of the message's journey to its destination. It shows that it was received from mx2.freebsd.org by wantadilla.lemis.com, and that wantadilla.lemis.com was running postfix. It also shows the time the message arrived at wantadilla, Sat, 21 Sep 2002 at 10:23:04. The 195CC81743.
Received: headers trace back to the origin of the message, via hub.freebsd.org, where it went through three transformations. Before that, it went through mail1.thinkburst.com, mailgate.thinkburstmedia.com, sigma.geocomm.com and dhcp00.geocomm.com. By pure Received: from mailgate.thirikburstmedia.com (gateway.thirikburstmedia.com [204.214.64.100])
The first name is the name that the server claims to be, and the second is the name returned by a reverse DNS lookup of the server IP address.
Message-Id: gives a definitive message ID that can be used for references.In-Reply-To: header shows the ID of the message to which this is a reply. mutt uses this field to thread the messages in the index.Importance: is also not defined by the standards. It may be a Microsoft ''extension''. This is not an Sender: header is the address of the real sender. Although this message is From: Jaime Bozza, it was resent from the FreeBSD-stable List- headers are also not defined by the standards. They're used as comments by the X-Loop is used by the X-Loop header with its own name to mean that it has some how sent a message to itself.Precedence: header is used internally by sendmail to determine the order in which messages should be sent. bulk is a low priority.X-Spam-Status: header is added by spamassassin, which is used to detect spam. This message has been given a clean bill of health.The Status: fag is used by the MUA to set fags in the display. The letters each have their own meaning: R means that the message has been read, and O means that it is old (in other words, it was already in the mail folder when the MUA last exited).
Content-Length: header specifies the approximate length of the message (without the headers) in bytes. It is used by some MUAs to speed things up.Lines: header states the length of the message in lines.In the
So what's good and what's bad? That's a matter of opinion (and self-expression), of course. We've seen some of the following things already:
When sending "conventional" mail, ensure that you adhere to the standards. Again, Microsoft mailers are often bad in this respect: without telling you, they may either transform paragraphs into one long line, or they break li nes into two, one long and one short. The resulting appearance of the messa ge looks like (taking this paragraph as an example):
When sending "conventional" mail, ensure that you adhere to the standards. Again, Microsoft mailers are often bad in this respect: without telling you, they may either transform paragraphs into one long line, or they break lines into two, one long and one short. The resulting appearance of the message looks like (taking this paragraph as an example):
This can happen to you without you knowing. If you get messages from other people that appear to be garbled, your MUA may be
> quote character. Both make the message more legible. For example, compare these two fragments:
>rdkeys@csemail.cropsci.ncsu.edu writes: >>Not to pick at nits.... but, I am still confused as to what EXACTLY >>is the "stable" FreeBSD. Please enlighten me, and tell me the >>reasoning behind it. >OK, I'll take a shot at this. To really understand what 2.2-STABLE is, >you have to have some idea of how the FreeBSD team uses 'branches'. In >particular, we are talking about branches as implemented by the CVS
>rdkeys@csemail.cropsci.ncsu.edu writes: >> Not to pick at nits.... but, I am still confused as to what EXACTLY >> is the "stable" FreeBSD. Please enlighten me, and tell me the >> reasoning behind it. > >OK, I'll take a shot at this. To really understand what 2.2-STABLE is, >you have to have some idea of how the FreeBSD team uses 'branches'. In >particular, we are talking about branches as implemented by the CVS
MIME allows you to attach all sorts of data to a
Nevertheless, you can do a lot of things wrong with MIME attachments. Here are some of the more common ones, most of which are default for Microsoft MUAs.
Microsoft-based MUAs frequently make this mistake. You may receive attachments of the type application/octet-stream, which really describes the encoding, not the content, but the name might end in .doc, .gif or .jpg. Many MUAs assume that these attachments are Microsoft Word documents or GIF and JPEG images respectively. This is contrary to the standards and could be used to compromise the security of your system.
Electronic mail, usually called email, e-mail or simply mail, is a method of sending messages to other people on the Net. As with other network services, there are two parts to mail software:
Email is defined by a number of Internet standards, the so-called . Here are the most important ones.
A number of UNIX MUAs have inadequate MIME support. Find one which does the job properly. On the other hand, if your target audience typically does not use MIME-
A mail user agent is a program that interfaces between the user and the mail system. It allows the user to read, forward and reply to incoming mail, and to send his own mail. It usually has facilities for creating and maintaining folders, where you can keep received
The oldest MUA you're likely to meet is mail. It's a very basic, character-oriented program, but nevertheless it has its advantages. You can use it in scripts to send mail. For example, if you have a job running and producing copious output, where you want to save the output, you might normally write something like:
$ longjob 2>1 > logfile
This command runs longjob. The sequence 2>1 redirects the error output to the > writes them to the file logfile. While this is a good way to solve the problem, you might find that you have a lot of such jobs, or that you tend to forget the log files and leave them
$ longjob 2>1 | mail me
In this case, me is your user ID. When the job finishes, you get a cron (see page 151) uses this method to send you its output.
mail has a number of limitations: it doesn't deal very well with long
Many more
There are two schools of thought about how to store mail:
mbox method. mail, elm and pine do it this way.exmh, xfmail and sylpheed, represent a folder as a directory. Each message in the folder is then a file by itself.mutt can use either method, but the default is the mbox method.Which method should you use? Both have their advocates. The directory and file approach is more
In this section, we'll take a detailed look at mutt. Start it by typing in its name. Like most UNIX MUAs, mutt runs on a character-oriented terminal, including of course an xterm. We'll take a look into my mailbox. By default, when starting it up you get a display like the one shown in Figure 26-1 .
(рис 26.1) mutt main menu
mutt sets
(рис 26.2) mutt main menu
The display of Figure 26-2 shows a number of things:
r next to some messages. This indicates that I have already replied to these messages.N signalizes a new message (an unread message that has arrived after the last invocation of mutt finished).D means that the message has been marked for deletion. It won't be deleted until you leave mutt or update the display with the $ command, and until then you can u command+ means that the message is addressed to me, and only to me. We'll see below how mutt decides who I am.T means that the message is addressed to me and other people.C means that the message is addressed to other people, and that I have been copied.F means that the message is from me.* means that the message is tagged: certain operations work on all tagged messages. We'll look at that on page 481.You'll notice in the example that the lines are of different
The index line for message 52 appears to be in j (move down) or k (move up). In the default display, it is in normal video (i.e. not reversed, or doubly reversed). You can also move between pages with the left and right cursor commands. Many commands, such as r (reply) or Enter (
(рис 26.3) mutt message display
Here, the display has changed to show the contents of the message. The top line now tells you the sender of the message, the subject, and how much of the message is displayed, in this case 50%. As before, the bottom line tells you the most common commands you might need in this context: they're not all the same as in the menu display.
The message itself is divided into three parts: the first 6 lines are a selection of the headers. The headers can be quite long. They include information on how the message got here, when it was sent, who sent it, who it was sent to, and much more. We'll look at them in more detail on page 484.
The headers are separated from the > character before each line, the sender has signalized that the text was written by another person, often the person to whom it is addressed: this message is a reply, and the text is what he is replying to. Normally there is an attribution above the text, but it's missing in this example. We'll see attributions below in the section on replying.
If the message is longer than one screen, press SPACE to page down and - (
To create a new message, press m. mutt starts your favorite editor for you. How does it know which one? If you specify the name of the editor in your .muttrc file, or set your EDITOR
In this case, we start emacsclient. emacsclient isn't really an editor at all: it simply finds an Emacs process and c-x c-#.
(рис 26.4) Creating a new message: initial state
Fill out the name of the intended recipient in the appropriate place, and enter the text of the message below the headers, leaving one line of space. Apart from this, most of the actions involved in sending a new
To reply to a message, in this case the message shown in Figure 26-3 , simply press r. Before entering any text, the editor screen looks like Figure 26-5 .
(рис 26.5) Replying to a message: initial state
You'll notice that mutt automatically "quotes" the text. The original text started with:
>I think I now understand the problem here. Try the following patch
>and tell me if it solves the problem:
>
>--- vinumio.c 2 May 2002 08:43:44 -0000 1.52.2.6
>+++ vinumio.c 19 Sep 2002 05:10:27 -0000
Tried patch. System no longer reads ad0h/ad2h, but after the second
'vinum start', the system shows 0 drives ('vinum ld' lists nothing.)
This message itself starts with quoted text, which indicates that it was written by somebody else. There should be a line at the top stating who wrote it, but it's missing here. The text from the submitter starts with Tried patch. When you reply, however, all this text is quoted again. The first line attributes the text below. You'll notice that this reply also includes a selection of headers for the outgoing message. This can be very
This is a reply to a technical question, so I change the for more details.
(рис 26.6) Replying to a message: after editing
In this example, I reply with the r (reply to sender) command. I could also do a group reply with the g key, which would include all the original recipients, so it wouldn't be necessary to add the
Next, I leave the editor with c-x c-# and return to the screen in Figure 26-7 . Here I have another opportunity to change some of the headers before sending the message. You'll note what seem to be a couple of additional headers in this display: PGP and . In fact, they're not headers at all. PGP states what parts of the message, if any, should be encrypted with pgp or gpg. In this case, Clear (the default) means not to encrypt anything.
: is also not a header. It specifies the name of a folder in which to save the outgoing message. We'll look at folders in the next section.
After making any further changes to the headers, I send the message with the y command, after which I return to the previous display.
(рис 26.7) Replying to a message: ready to send
mutt can handle multiple folders. It defaults to your incoming mail folder, sometimes called an inbox. On BSD, it is a single file in /var/mail with the same name as your user ID. We saw that above at the top of the index screen: mine is called /var/mail/grog.
mutt stores other folders as single files in the directory ~/Mail, in other words a Compose menu contained the pseudo-header =jbozza. This refers to the file ~/Mail/jbozza: mutt uses the
To keep incoming mail, you use the s (save) command, which sets a default folder name from the name of the sender, the same name as when saving sent messages. You can thus reply a message, saving a copy in the folder, then save the original message, without explicitly mentioning a folder name at all.
To read messages in a folder, you can tell mutt to read it directly on startup:
$ mutt -f =fred
Alternatively you can change folders with the c command.
Once you've finished reading a message, you may want to delete it. You can do this by entering d. The D fag appears on the left of the line, but nothing much else happens. The message doesn't get deleted until you exit mutt, or until you enter $.
When you save a message to a folder, it is automatically deleted from the current folder. If you don't want to do that, or if you have accidentally deleted a message, you can undelete it by entering u.
Finished reading a thread? You can delete the entire thread by entering ^D (Control-D) .
We've seen that you can delete an entire thread with a single t. In the example above, messages 51 and 64 are tagged. You can reply to all tagged messages in one reply by pressing ;r. In this case, mutt ignores the message under the cursor and replies only to the tagged messages, reply to all people on the To: headers of each message. Similarly, you can do a group reply to all the tagged messages with ;g, and you can delete thcode all with ;d.
We've already see that there are a lot of things that you can change about mutt's behavior. They are described in a file ~/.muttrc (the file .muttrc in your home directory). Here are a few of the more interesting entries in my .muttrc:
source /usr/local/etc/Muttrc
The file /usr/local/etc/Muttrc contains the default definitions for running mutt. Put this at the top of your .muttrc file so that the following definitions can override any previous definitions. This file also contains a large number of comments about how to set each variable, and what it does: it's over 3,000 lines long.
source ~/.mail_aliases
~/.mail_aliases is the name of an alias file, a file with
set alternates="greg.lehey®auug.org.au|groggy®|grog@|auugexec@|core@free"
This string is a + if the message is sent only to me, T if I am mentioned on the To: header, and C if I am mentioned on the Cc: header.
my_hdr Organization: LEMIS, PO Box 460, Echunga SA 5153, Australia my_hdr Phone: +61-8-8388-8286
These lines and more become headers in messages I send; you can see them in the examples above.
set editor=emacsclient
This line overrides the default editor in EDITOR. We've already seen the use of emacsclient.
set pager_index_lines=10
This tells mutt to keep ten lines of the index when displaying a message. Figure 26-8 shows what the display looks like when this is set. Clearly this isn't much use with a 25 line display. If, on the other hand, you have a larger X display, it can be very
set hdr_format="%4C %Z %{%d-%m-%Y} %-20.20L %-15.15t (%4l) %s" # format of the index
set status_on_top #put the status bar at the top
set sort=threads
set date_format="%A, %e %B %Y at %k:%M:%S %Z"
These variables tell mutt how to display the message index. They account for the difference in layout (but not color) between the default screen and the custom screen. hdr_format is a printf-like status_on_top reverses the information lines at the top and bottom of the display, sort=threads sets a threaded display by default (you can change it by pressing o), and date_format is set to international conventions.
(рис 26.8) Reading a message with pager index lines set
set edit_hdrs #let me edit the message header when composing set fast_reply #skip initial prompts when replying set attribution="On %d, %n wrote:" set charset="iso-8859-15" #character set for your terminal set sendmail_wait=-1
These variables specify how to write and reply to
edit_hdrs tells mutt to include the headers in the message you write, as shown in the preceding examples.fast_reply tells mutt not to prompt for a number of the headers. This is faster, and it's not necessary when you have the headers in the message you're writing.attribution describes the format of the attribution at the beginning of a reply, the text On Friday, 20 Septcodeber 2002 at 8:13:44 -0500, Jaime Bozza wrote: in the example above.charset specifies the character set to use for the message. This should correspond to the character set of the fonts on your display, otherwise things may look strange. ISO 8859-15 is the new Western European character set that includes the character for the Euro. You'll still see many message with the older Western European character set, ISO 8859-1, which is otherwise very similar.sendmail_wait tells mutt whether it should wait for the mail to be sent before continuing. This can take some time if your MTA has to perform numerous DNS lookups before it can send the message. Setting this variable to -1 tells mutt not to wait.ignore * unignore From: Date: To: Cc: Subject: X-Mailer: Resent-From: hdr_order Date: From: To: Cc: Subject: X-Mailer: Resent-From:
These specifications tell mutt to ignore all headers except for specific ones, and to sort them in the order specified, no matter what order they occur in the message.
Finally, .muttrc contains definitions to describe the color of the display. Many of these are personal preferences, so I'll just show a couple. Each definition specifies the
color normal black white
This is the basic default color, overriding the
color hdrdefault brightblack white color quoted brightblack white
This tells mutt to highlight headers and quoted text in bold.
color status black yellow
This tells mutt to display the
color index blue white FreeBSD
This tells mutt to display any messages with the text FreeBSD in blue on white, like messages 48 and 49 in the example above.
There are many more variables you can set to customize your mutt display. Read /usr/local/etc/Muttrc for more details.
You'll find that some people have strange mail IDs: they are unusual, confusing, or just plain difficult to type. Most MUAs give you the option of setting up aliases, short names for people you often contact. In mutt, you can put the aliases in the ~/.muttrc file, or you can put them in a separate file and tell mutt when to find them in the ~/.muttrc file, as illustrated above. The aliases file contains entries like this:
alias questions FreeBSD-questions@FreeBSD.org (FreeBSD Questions) alias stable FreeBSD Stable Users <FreeBSD-stable@FreeBSD.org>
The format is straightforward:
alias. Aliases can be placed in ~/.muttrc,so the word alias is used to distinguish them from other commands.questions and stable in this example).<>), or the mail ID followed by the name in ()).In mutt, you can add aliases to this file automatically with the a command, which offers default values relating to the current message.
In the message display above we saw only a selection of the mail headers that a message might contain. Sometimes it's interesting to look at them in more detail, especially if you're having mail problems. To look at the complete headers, press the h key. Figure 26-9 shows the complete headers of our message 52.
(рис 26.9) Complete headers
Return-Path:) is used to indicate the address to which error messages should be sent if something goes wrong with delivery. The FreeBSD mailing lists specify the list owner to avoid spamming senders with multiple error messages, which can easily happen when you send messages to a large Delivered -To: header specifies the user to whom the message was Received: headers, making up more than half the total number of lines. This is because it went via a Received: headers.
The first Received: header is split over three lines. It shows the most recent step of the message's journey to its destination. It shows that it was received from mx2.freebsd.org by wantadilla.lemis.com, and that wantadilla.lemis.com was running postfix. It also shows the time the message arrived at wantadilla, Sat, 21 Sep 2002 at 10:23:04. The 195CC81743.
Received: headers trace back to the origin of the message, via hub.freebsd.org, where it went through three transformations. Before that, it went through mail1.thinkburst.com, mailgate.thinkburstmedia.com, sigma.geocomm.com and dhcp00.geocomm.com. By pure Received: from mailgate.thirikburstmedia.com (gateway.thirikburstmedia.com [204.214.64.100])
The first name is the name that the server claims to be, and the second is the name returned by a reverse DNS lookup of the server IP address.
Message-Id: gives a definitive message ID that can be used for references.In-Reply-To: header shows the ID of the message to which this is a reply. mutt uses this field to thread the messages in the index.Importance: is also not defined by the standards. It may be a Microsoft ''extension''. This is not an Sender: header is the address of the real sender. Although this message is From: Jaime Bozza, it was resent from the FreeBSD-stable List- headers are also not defined by the standards. They're used as comments by the X-Loop is used by the X-Loop header with its own name to mean that it has some how sent a message to itself.Precedence: header is used internally by sendmail to determine the order in which messages should be sent. bulk is a low priority.X-Spam-Status: header is added by spamassassin, which is used to detect spam. This message has been given a clean bill of health.The Status: fag is used by the MUA to set fags in the display. The letters each have their own meaning: R means that the message has been read, and O means that it is old (in other words, it was already in the mail folder when the MUA last exited).
Content-Length: header specifies the approximate length of the message (without the headers) in bytes. It is used by some MUAs to speed things up.Lines: header states the length of the message in lines.In the
So what's good and what's bad? That's a matter of opinion (and self-expression), of course. We've seen some of the following things already:
When sending "conventional" mail, ensure that you adhere to the standards. Again, Microsoft mailers are often bad in this respect: without telling you, they may either transform paragraphs into one long line, or they break li nes into two, one long and one short. The resulting appearance of the messa ge looks like (taking this paragraph as an example):
When sending "conventional" mail, ensure that you adhere to the standards. Again, Microsoft mailers are often bad in this respect: without telling you, they may either transform paragraphs into one long line, or they break lines into two, one long and one short. The resulting appearance of the message looks like (taking this paragraph as an example):
This can happen to you without you knowing. If you get messages from other people that appear to be garbled, your MUA may be
> quote character. Both make the message more legible. For example, compare these two fragments:
>rdkeys@csemail.cropsci.ncsu.edu writes: >>Not to pick at nits.... but, I am still confused as to what EXACTLY >>is the "stable" FreeBSD. Please enlighten me, and tell me the >>reasoning behind it. >OK, I'll take a shot at this. To really understand what 2.2-STABLE is, >you have to have some idea of how the FreeBSD team uses 'branches'. In >particular, we are talking about branches as implemented by the CVS
>rdkeys@csemail.cropsci.ncsu.edu writes: >> Not to pick at nits.... but, I am still confused as to what EXACTLY >> is the "stable" FreeBSD. Please enlighten me, and tell me the >> reasoning behind it. > >OK, I'll take a shot at this. To really understand what 2.2-STABLE is, >you have to have some idea of how the FreeBSD team uses 'branches'. In >particular, we are talking about branches as implemented by the CVS
MIME allows you to attach all sorts of data to a
Nevertheless, you can do a lot of things wrong with MIME attachments. Here are some of the more common ones, most of which are default for Microsoft MUAs.
Microsoft-based MUAs frequently make this mistake. You may receive attachments of the type application/octet-stream, which really describes the encoding, not the content, but the name might end in .doc, .gif or .jpg. Many MUAs assume that these attachments are Microsoft Word documents or GIF and JPEG images respectively. This is contrary to the standards and could be used to compromise the security of your system.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.