Initial Commit
[packages] / xemacs-packages / tm / texi / tm-vm-en.texi
1 \input texinfo.tex
2 @c %**start of header
3 @setfilename tm-vm-en.info
4 @settitle tm-vm Manual (English Version)
5 @direntry
6 * Tm-Vm::              MIME extension for VM mail reader
7 @end direntry
8 @c %**end of header
9
10 @ifinfo
11 This file documents tm-vm.el v8.12
12
13 tm-vm is part of the TM Package.
14
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
17 standard.
18
19 tm-vm and its documentation are distributed under the same terms as
20 TM. Please refer to the TM Manual.
21
22 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
23
24 @end ifinfo
25
26
27
28
29 @titlepage
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 $}
33 @page
34
35 tm-vm is part of the TM Package.
36
37 tm-vm and its documentation are distributed under the same terms as
38 TM. Please refer to the TM Manual.
39
40 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
41 @end titlepage
42
43
44
45
46
47 @node Top, Overview, (dir), (dir)
48 @ifinfo
49 @chapter tm-vm Manual
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
52 standard.
53
54 This document applies to release 8.12 of tm-vm.el
55 @end ifinfo
56
57 @menu
58 * Overview::                    
59 * Install::                     
60 * Usage::                       
61 * Customization::               
62 * News::                        
63 * Copyright::                   
64 * Variable Index::              
65 * Concept Index::               
66 @end menu
67
68
69
70
71
72 @node Overview, Install, Top, Top
73 @chapter Overview
74
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}.).
77
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.
84
85 @section Mail Reading Features
86
87 tm-vm tries to integrate as transparently as possible with VM so that
88 MIME messages appear to you just like plain messages.
89
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
99 previewing}. 
100
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.
107
108 @section Mail Composing Features
109
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:
113
114 @itemize @bullet
115 @item 
116 Insert arbitrary files
117 @item
118 Insert another message 
119 @item
120 Insert a voice sample recorded from a microphone attached to the computer
121 @item
122 Enclose message sections as PGP encrypted
123 @end itemize
124
125 and much more. For details, @pxref{Top,MIME Editor,MIME
126 Editor,tm-edit-en,TM Edit Manual}.
127
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}).
131
132
133
134
135
136 @node Install, Usage, Overview, Top
137 @chapter Installing tm-vm
138
139 To take advantage of the benefits of tm-vm, you need to have VM and tm
140 already installed.
141
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/}. 
146
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.
151
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}):
155
156 @lisp
157 (require 'mime-setup)
158 (require 'tm-vm)
159 @end lisp
160
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}).
163
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:
166
167 @lisp
168 (bbdb-insinuate-vm)
169 (require 'tm-vm)
170 @end lisp
171
172
173
174
175
176 @node Usage, Customization, Install, Top
177 @chapter Using tm-vm
178
179
180 @menu
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
185 @end menu
186
187
188 @node Reading MIME mail, Composing MIME mail, Usage, Usage
189 @section Reading MIME mail
190
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}).
197
198
199 @subsection VM folder buffer and MIME Preview buffer
200
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:
204
205 @itemize @bullet
206
207 @item
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
211
212 @item
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.
216 @end itemize
217
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.
225
226
227 @code{tm-vm/toggle-preview-mode} (bound to @kbd{M-t}) lets you toggle
228 between automatic and on-demand preview modes. 
229
230
231 @node Composing MIME mail, Printing, Reading MIME mail, Usage
232 @section Composing MIME mail
233
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.
238
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
247 @kbd{M-t}.
248
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
251 did.
252
253
254
255 @node Printing, Using BBDB, Composing MIME mail, Usage
256 @section Printing MIME messages
257
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}.
262
263
264 @node Using BBDB,  , Printing, Usage
265 @section Notes about BBDB Usage
266
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:
271
272 @lisp
273 (bbdb-insinuate-vm)
274 (require 'tm-vm)
275 @end lisp
276
277
278
279
280 @node Customization, News, Usage, Top
281 @chapter Customization
282
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.
286
287
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}.
291 @end defopt
292
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
298 @code{t}.
299 @end defopt
300
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}.
306 @end defopt
307
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
311 in Emacs.
312 @end defopt
313
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}.
317 @end defopt
318
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
322 non-MULE Emacses.
323 @end defopt
324
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
328 @code{add-hook}.
329 @end defvar
330
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}.
334 @end defvar
335
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}.
341 @end defvar
342
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}.
348 @end defvar
349
350 @section X-Faces
351 @cindex X-Faces
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:
355
356 @lisp
357 (setq vm-use-lucid-highlighting nil)
358 (setq vm-display-xfaces nil)
359 @end lisp
360
361
362 @node News, Copyright, Customization, Top
363 @chapter News
364
365 This section documents the user-visible changes in the latest releases
366 of tm-vm. For more technical details see the ChangeLog.
367
368 @section 8.5 to 8.12
369
370 @itemize @bullet
371 @item
372 Bug fixes
373 @item
374 Compatible with successive VM 6 versions (tested up to VM 6.24).
375 @item
376 Improved overall VM integration.
377 @item
378 New hook variable @code{tm-vm/build-mime-preview-buffer-hook}.
379 @end itemize
380
381 @section 8.4
382
383 @itemize @bullet
384 @item
385 Bug fixes in Emacs menus.
386 @end itemize
387
388 @section 8.0 to 8.3
389 @itemize @bullet
390 @item
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}.
394 @item
395 VM menu bar and toolbar are accessible from MIME-Preview buffers
396 @item
397 MIME-Preview buffers support header toggling
398 @item
399 VM message previewing is correctly supported
400 @item
401 Bug fixes
402 @end itemize
403
404 @section 7.79
405
406 @itemize @bullet
407 @item
408 Minor bug fixes.
409 @end itemize
410
411 @section 7.78
412
413 @itemize @bullet
414 @item
415 Better compatibility with MULE in respect of the ps-print package
416 @end itemize
417
418
419 @section 7.77
420
421 @itemize @bullet
422 @item
423 A bug in byte-compilation introduced in 7.76 was fixed
424 @item
425 Window configurations are restored more correctly (point stays where it
426 should :-) when paging through messages.
427 @end itemize
428
429
430 @section 7.76
431
432 @itemize @bullet
433 @item
434 Forwarding a MIME message now always forwards the @strong{raw} message.
435 @item
436 Forwarding a message from the @samp{Dispose} pull-down menu now works
437 correctly in XEmacs. Untested in Emacs.
438 @item
439 Forwarding a message when the current buffer is the MIME-Preview buffer
440 now works correctly
441 @item
442 @code{tm-vm/use-ps-print} was introduced @pxref{Customization}.
443
444 @end itemize
445
446
447 @section 7.75
448
449 @itemize @bullet
450 @item
451 Bug fixes: BBDB record creation and MIME component extraction from new
452 messages
453
454 @end itemize
455
456
457 @section 7.74
458
459 @itemize @bullet
460 @item
461 X-Faces are displayed by default. @pxref{Customization}
462 @end itemize
463
464
465
466
467
468
469 @node Copyright, Variable Index, News, Top
470 @ifinfo
471 @chapter Copyright
472
473 This file documents tm-vm 8.12, an interface between tm and the VM mail
474 user agent.
475
476 Copyright 1996 Tomohiko Morioka, Oscar Figueiredo
477
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}.
481 @end ifinfo
482
483
484 @node Variable Index, Concept Index, Copyright, Top
485 @unnumbered Variable Index
486
487 @printindex vr
488
489 @node Concept Index,  , Variable Index, Top
490 @unnumbered Concept Index
491
492 @printindex cp
493
494 @contents
495 @bye