3 @setfilename tm-vm-en.info
4 @settitle tm-vm Manual (English Version)
6 * Tm-Vm:: MIME extension for VM mail reader
11 This file documents tm-vm.el v8.12
13 tm-vm is part of the TM Package.
15 tm-vm is an interface between tm and the VM mail user agent that lets
16 you read and write multimedia mail on the Internet using the MIME
19 tm-vm and its documentation are distributed under the same terms as
20 TM. Please refer to the TM Manual.
22 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
30 @title tm-vm Manual (English Version)
31 @author by Oscar Figueiredo
32 @code{$Id: tm-vm-en.texi,v 1.2 1998-06-15 05:54:31 steveb Exp $}
35 tm-vm is part of the TM Package.
37 tm-vm and its documentation are distributed under the same terms as
38 TM. Please refer to the TM Manual.
40 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
47 @node Top, Overview, (dir), (dir)
50 tm-vm is an interface between tm and the VM mail user agent that lets
51 you read and write multimedia mail on the Internet using the MIME
54 This document applies to release 8.12 of tm-vm.el
72 @node Overview, Install, Top, Top
75 tm-vm is an interface between TM (@pxref{Top,TM,,tm-en,TM Manual}.) and the VM
76 mail user agent (@pxref{Top,VM,,vm,VM Manual}.).
78 Until recently VM did not support the MIME standard. Kyle Jones has
79 begun to implement it in VM 6.0 however TM provides a much more complete
80 support of MIME than the one currently offered in VM 6. tm-vm integrates
81 the TM package into VM so as to give you a powerful MIME support in your
82 usual mail environment for both mail reading and composing. tm-vm adds
83 MIME features to VM 5 and replaces the native features offered by VM 6.
85 @section Mail Reading Features
87 tm-vm tries to integrate as transparently as possible with VM so that
88 MIME messages appear to you just like plain messages.
90 tm-vm detects MIME messages when you try to view them and, if automatic
91 MIME previewing is enabled (the default), then it automatically parses
92 the message and displays a "beautified" version under the MIME Viewer.
93 Note that the word @emph{previewing} has two different meanings for VM and
94 TM. In VM, it means view the first lines of a message only, as defined by
95 the variable @code{vm-preview-lines}, to avoid confusion we call this
96 @emph{message previewing}. In TM, previewing means parsing the contents
97 of a message according to the rules of the MIME standard and display a
98 corresponding view of it. We call that more specifically @emph{MIME
101 The MIME Viewer offers all the functionality to view/extract the MIME
102 components (attachments) of the message. It also displays images inline
103 in XEmacs. @xref{Top,MIME Viewer,MIME Viewer,tm-view-en,TM View
104 Manual}. Note however that for a better VM integration, tm-vm
105 overrides the standard bindings of the MIME-Viewer and makes them
106 available with a @key{C-c} prefix.
108 @section Mail Composing Features
110 Composing a new message places you in a compose buffer as usual under VM
111 but a special minor mode (@samp{mime-editor}) is made available that
112 lets you perform such operations as:
116 Insert arbitrary files
118 Insert another message
120 Insert a voice sample recorded from a microphone attached to the computer
122 Enclose message sections as PGP encrypted
125 and much more. For details, @pxref{Top,MIME Editor,MIME
126 Editor,tm-edit-en,TM Edit Manual}.
128 When you reply to a message citing the original and tm-vm is active,
129 tm-vm will insert the contents of the MIME-Preview buffer in the reply
130 buffer. You can also insert the raw message if you want (@pxref{Usage}).
136 @node Install, Usage, Overview, Top
137 @chapter Installing tm-vm
139 To take advantage of the benefits of tm-vm, you need to have VM and tm
142 VM is part of XEmacs distributions and so if you're running XEmacs you
143 don't need to install it. If you're running Emacs, you will need to
144 install VM. The official VM distribution site is
145 @file{ftp://ftp.uu.net/networking/mail/vm/}.
147 If you're reading this manual then there is a pretty good chance you
148 already have a recent version of tm. The official tm distribution site
149 is @file{ftp://ftp.jaist.ac.jp/pub/GNU/mime/}. Follow the installation
150 procedure for tm as described in the documentation.
152 Once these steps are completed, tm-vm installation is very simple. You
153 just need to insert the following lines in your VM configuration file
154 (generally @file{.vm}):
157 (require 'mime-setup)
161 That's it. You are ready to read and send multimedia mail! You may also
162 want to customize some aspects of tm-vm behaviour (@pxref{Customization}).
164 If you use BBDB, you must load tm-vm @strong{after} BBDB. Please be sure
165 to respect the following sequence in your initialization file:
176 @node Usage, Customization, Install, Top
181 * Reading MIME mail:: Commands for MIME previewing
182 * Composing MIME mail:: Writing/Replying to/Forwarding MIME messages
183 * Printing:: Printing MIME messages
184 * Using BBDB:: BBDB integration
188 @node Reading MIME mail, Composing MIME mail, Usage, Usage
189 @section Reading MIME mail
191 When reading mail, tm-vm can operate in two different modes:
192 @emph{automatic preview} and @emph{on-demand preview}. In automatic
193 preview mode (the default) MIME messages are automatically decoded. In
194 on-demand preview mode all messages are presented by VM as they are (as
195 if tm were not loaded). The user can request the decoding of a message
196 at any time with @code{tm-vm/view-message} (bound to @kbd{Z}).
199 @subsection VM folder buffer and MIME Preview buffer
201 Though tm-vm tries to hide this fact as much as possible, it is
202 important to note that when MIME previewing is enabled the current
203 message actually exists in @strong{two} separate buffers:
208 @cindex VM folder buffer
209 @emph{the VM folder buffer}: always displays the @strong{raw} message
210 buffer where the MIME contents remain unparsed
213 @cindex MIME Preview buffer
214 @emph{the MIME Preview buffer}: displays a MIME parsed version of the
215 message. It is generally what you want to see as it is more readable.
218 There are two different buffers due to the VM 5 implementation that
219 makes TM/VM integration difficult. However, we try hard to make the MIME
220 Preview buffer act as if it were the real VM message buffer by making
221 all bindings act the same in the Preview buffer as in the folder
222 buffer. In this version of tm-vm, most of the usual VM bindings are made
223 available transparently in the MIME Preview buffer, others will be in
224 the future, contact the maintainer for more information.
227 @code{tm-vm/toggle-preview-mode} (bound to @kbd{M-t}) lets you toggle
228 between automatic and on-demand preview modes.
231 @node Composing MIME mail, Printing, Reading MIME mail, Usage
232 @section Composing MIME mail
234 Regardless of the current MIME preview mode (automatic or on-demand),
235 tm-vm activates the mime-editor mode each time you compose a mail
236 message (new message, reply or forward). @xref{Top,MIME Editor,MIME
237 Editor,tm-edit-en,TM Edit Manual}, for details on mime-editor mode.
239 When you reply to a message, tm-vm will insert the contents of the
240 @strong{decoded} message if there exists a MIME Preview buffer. This is
241 generally what you want for quoted-printable text, for instance. Inline
242 images are removed from the reply. If for some reason you want the
243 @strong{raw} message to be inserted instead of the decoded one, you have
244 to kill the MIME Preview buffer first. You do this with
245 @code{kill-buffer} (bound to @kbd{C-x k}) in the MIME Preview
246 buffer. You can also toggle automatic preview off, if it was on, with
249 Forwarding a message always inserts the raw message with its own MIME
250 headers. The recipient will thus receive exactly the same message as you
255 @node Printing, Using BBDB, Composing MIME mail, Usage
256 @section Printing MIME messages
258 For non-MULE Emacses, printing of MIME messages uses Postscript printing
259 (through the ps-print package). Non-MIME messages are printed the usual
260 way as configured in VM. This is controlled by the variable
261 @code{tm-vm/use-ps-print}.
264 @node Using BBDB, , Printing, Usage
265 @section Notes about BBDB Usage
267 BBDB, the Big Brother's Database, should operate normally with
268 VM/tm-vm. You must ensure, however, that tm-vm is loaded @strong{after}
269 BBDB has installed its hooks. Therefore be sure to respect the following
270 sequence in your initialization file:
280 @node Customization, News, Usage, Top
281 @chapter Customization
283 Several variables let you adapt the behavior of tm-vm to your needs. You
284 can set these variables to the appropriate value in your initialization
285 file prior to loading tm.
288 @defopt tm-vm/automatic-mime-preview
289 If non-@code{nil} then tm-vm will start in automatic mime preview mode
290 (@pxref{Usage}). Default @code{t}.
293 @defopt tm-vm/strict-mime
294 If non-@code{nil} tm-vm will automatically decode MIME messages
295 only. MIME messages have a @code{MIME-Version} header. If @code{nil}
296 then all messages will be decoded and viewed in the MIME Preview buffer
297 regardless of the existence of a @code{MIME-Version} header. Default
301 @defopt tm-vm/use-vm-bindings
302 If non-@code{nil} tm-vm will use usual VM bindings in MIME-Preview
303 buffers and make TM bindings available with a prefix. Otherwise usual TM
304 bindings are used without prefix (this was the default in versions of
305 tm-vm older than 8.0). Default @code{t}.
308 @defopt tm-vm/attach-to-popup-menus
309 If this is non-@code{nil}, tm-vm will append a menu of MIME commands to
310 the VM standard mode popup (@key{Button 3}). Default @code{t}. Untested
314 @defopt tm-vm/use-original-url-button
315 If this is non-@code{nil}, tm-vm will use VM to energize URL's contained
316 in the message body as weel as message headers. Default @code{t}.
319 @defopt tm-vm/use-ps-print
320 If this is non-@code{nil} then MIME messages will be printed in
321 Postscript using the ps-print package. By default it is @code{t} for
325 @defvar tm-vm/build-mime-preview-buffer-hook
326 tm-vm runs the hooks in this list each time it builds a MIME-Preview
327 buffer for a message. You can attach your own hook functions using
331 @defvar tm-vm/select-message-hook
332 tm-vm runs the hooks in this list after selecting a message. You can
333 attach your own hook functions using @code{add-hook}.
336 @defvar tm-vm/forward-message-hook
337 tm-vm runs the hooks in this list after a Mail mode buffer has been
338 created to forward a message in message/rfc822 type format.
339 If @code{vm-forwarding-digest-type} is @samp{rfc1521}, tm-vm runs this
340 hook instead of @code{vm-forward-message-hook}.
343 @defvar tm-vm/send-digest-hook
344 tm-vm runs the hooks in this list after a Mail mode buffer has been
345 created to send a digest in multipart/digest type format.
346 If @code{vm-digest-send-type} is @samp{rfc1521}, tm-vm runs this hook
347 instead of @code{vm-send-digest-hook}.
352 tm-vm displays X-Faces inline for XEmacs users in the same way as
353 VM. X-Faces are turned on by default. You need to disable their display
354 explicitly if you want to:
357 (setq vm-use-lucid-highlighting nil)
358 (setq vm-display-xfaces nil)
362 @node News, Copyright, Customization, Top
365 This section documents the user-visible changes in the latest releases
366 of tm-vm. For more technical details see the ChangeLog.
374 Compatible with successive VM 6 versions (tested up to VM 6.24).
376 Improved overall VM integration.
378 New hook variable @code{tm-vm/build-mime-preview-buffer-hook}.
385 Bug fixes in Emacs menus.
391 Most usual VM bindings are available in MIME-Preview buffers (motion
392 commands, summary generation). Usual TM bindings are prefixed with
393 @key{C-c} now. See the variable @code{tm-vm/use-vm-bindings}.
395 VM menu bar and toolbar are accessible from MIME-Preview buffers
397 MIME-Preview buffers support header toggling
399 VM message previewing is correctly supported
415 Better compatibility with MULE in respect of the ps-print package
423 A bug in byte-compilation introduced in 7.76 was fixed
425 Window configurations are restored more correctly (point stays where it
426 should :-) when paging through messages.
434 Forwarding a MIME message now always forwards the @strong{raw} message.
436 Forwarding a message from the @samp{Dispose} pull-down menu now works
437 correctly in XEmacs. Untested in Emacs.
439 Forwarding a message when the current buffer is the MIME-Preview buffer
442 @code{tm-vm/use-ps-print} was introduced @pxref{Customization}.
451 Bug fixes: BBDB record creation and MIME component extraction from new
461 X-Faces are displayed by default. @pxref{Customization}
469 @node Copyright, Variable Index, News, Top
473 This file documents tm-vm 8.12, an interface between tm and the VM mail
476 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
478 tm-vm is part of the TM package. tm-vm and its documentation are
479 distributed under the same terms as TM itself
480 @xref{Copyright, Copyright, tm-en, TM}.
484 @node Variable Index, Concept Index, Copyright, Top
485 @unnumbered Variable Index
489 @node Concept Index, , Variable Index, Top
490 @unnumbered Concept Index