There are three ways to start VM: M-x vm, M-x vm-visit-folder
and vm-mode
. The first time VM is started in an Emacs session (by
any of these methods), it attempts to load the file `~/.vm'. If
present this file should contain Lisp code, much like the `.emacs'
file. Since VM has in excess of forty configuration variables, use of
the `~/.vm' can considerably reduce clutter in the `.emacs'
file. You can force the reloading of this file on demand by typing
L from within VM.
M-x vm causes VM to gather any mail present in your system mailbox
and append it to a file known as your primary inbox, creating
this file if necessary. The default name of this file is
`~/INBOX', but VM will use whatever file is named by the variable
vm-primary-inbox
.
VM transfers the mail from the system mailbox to the primary inbox via a
temporary file known as the crash box. The variable
vm-crash-box
names the crash box file. VM first copies the mail
to the crash box, deletes the system mailbox, merges the crash box
contents into the primary inbox, and then deletes the crash box. If the
system or Emacs should crash in the midst of this transfer, any message
not present in the primary inbox will be either in the system mailbox or
the crash box. Some messages may be duplicated but no mail will be
lost.
If the file named by vm-crash-box
already exists when VM is
started up, VM will merge that with the primary inbox before getting any
new messages from the system mailbox.
By default, the location of the system mailbox is determined
heuristically based on what type of system you're using. VM can
be told explicitly where the system mailbox is through the variable
vm-spool-files
. The value of this variable should be a list of
strings naming files VM should try when searching for newly arrived
mail. Multiple mailboxes can be specified if you receive mail in
more than one place. The value of vm-spool-files
will be inherited
from the shell environmental variables MAILPATH or MAIL if either of
these variables are defined.
M-x vm-visit-folder (v from within VM) allows you to visit some other mail folder than the primary inbox. The folder name will be prompted for in the minibuffer.
Once VM has read the folder, the first new or unread message will be selected. If there is no such message, the first message in the folder is selected.
M-x vm-mode can be used on a buffer already loaded into Emacs to put
it into the VM major mode so that VM commands can be executed from within
it. This command is suitable for use in Lisp programs, and for inclusion in
auto-mode-alist
to automatically start VM on a file based on a
particular filename suffix. vm-mode
foregoes some of VM's startup
procedures (e.g. starting up a summary) to faciliate noninteractive use.
The variable vm-startup-with-summary
controls whether VM
automatically displays a summary of the folder's contents at startup. A
value of nil
gives no summary; a value of t
gives a full
screen summary. A value that is neither t
nor nil
splits
the screen between the summary and the folder display. The latter only
works if the variable pop-up-windows
's value is non-nil
,
and the value of vm-mutable-windows
is non-nil
. The
default value of vm-startup-with-summary
is nil
.
The variable vm-mail-window-percentage
tells VM what percentage of
the screen should be given to the folder display when both it and the
folder summary are being displayed. Note that Emacs enforces a minimum
window size limit, so a very high or very low value for this variable
may squeeze out one of the displays entirely. This variable's default
value is 75, which works with Emacs' default minimum window size limit,
on a 24 line terminal. Note that the value of vm-mutable-windows
must be t
or VM will not do window resizing regardless of the
value of vm-mail-window-percentage
.
A non-nil
value for the variable vm-inhibit-startup-message
disables the display of the VM's copyright, copying and warranty
disclaimer. If you must, set this variable in your own `.emacs' file;
don't set it globally for everyone. Users should be told their rights.
The startup messages abort at the first keystroke after startup, so they do not
impede mail reading.