comparison man/message.texi @ 31852:7de3cd8ff1ae

New version for Gnus 5.9.
author Dave Love <fx@gnu.org>
date Fri, 22 Sep 2000 21:07:57 +0000
parents ac7e9e5e2ccb
children 80e3cb181da7
comparison
equal deleted inserted replaced
31851:54e9d59f4f45 31852:7de3cd8ff1ae
1 \input texinfo @c -*-texinfo-*- 1 \input texinfo @c -*-texinfo-*-
2 2
3 @setfilename ../info/message 3 @setfilename message
4 @settitle Message 5.7 Manual 4 @settitle Message 5.9.0 Manual
5 @synindex fn cp 5 @synindex fn cp
6 @synindex vr cp 6 @synindex vr cp
7 @synindex pg cp 7 @synindex pg cp
8 @dircategory Editors
8 @direntry 9 @direntry
9 * Message: (message). Mail and news composition mode that goes with Gnus. 10 * Message: (message). Mail and news composition mode that goes with Gnus.
10 @end direntry 11 @end direntry
11 @iftex 12 @iftex
12 @finalout 13 @finalout
13 @end iftex 14 @end iftex
14 @setchapternewpage odd 15 @setchapternewpage odd
15 16
16 @ifinfo 17 @ifnottex
17 18
18 This file documents Message, the Emacs message composition mode. 19 This file documents Message, the Emacs message composition mode.
19 20
20 Copyright (C) 1996 Free Software Foundation, Inc. 21 Copyright (C) 1996,97,98,99,2000 Free Software Foundation, Inc.
21 22
22 Permission is granted to make and distribute verbatim copies of 23 Permission is granted to copy, distribute and/or modify this document
23 this manual provided the copyright notice and this permission notice 24 under the terms of the GNU Free Documentation License, Version 1.1 or
24 are preserved on all copies. 25 any later version published by the Free Software Foundation; with the
25 26 Invariant Sections being none, with the Front-Cover texts being ``A GNU
26 @ignore 27 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
27 Permission is granted to process this file through Tex and print the 28 license is included in the section entitled ``GNU Free Documentation
28 results, provided the printed document carries copying permission 29 License''.
29 notice identical to this one except for the removal of this paragraph 30
30 (this paragraph not being relevant to the printed manual). 31 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
31 32 this GNU Manual, like GNU software. Copies published by the Free
32 @end ignore 33 Software Foundation raise funds for GNU development.''
33 Permission is granted to copy and distribute modified versions of this 34 @end ifnottex
34 manual under the conditions for verbatim copying, provided also that the
35 entire resulting derived work is distributed under the terms of a
36 permission notice identical to this one.
37
38 Permission is granted to copy and distribute translations of this manual
39 into another language, under the above conditions for modified versions.
40 @end ifinfo
41 35
42 @tex 36 @tex
43 37
44 @titlepage 38 @titlepage
45 @title Message 5.7 Manual 39 @title Message 5.9.0 Manual
46 40
47 @author by Lars Magne Ingebrigtsen 41 @author by Lars Magne Ingebrigtsen
48 @page 42 @page
49 43
50 @vskip 0pt plus 1filll 44 @vskip 0pt plus 1filll
51 Copyright @copyright{} 1996 Free Software Foundation, Inc. 45 Copyright @copyright{} 1996,97,98,99,2000 Free Software Foundation, Inc.
52 46
53 Permission is granted to make and distribute verbatim copies of 47 Permission is granted to copy, distribute and/or modify this document
54 this manual provided the copyright notice and this permission notice 48 under the terms of the GNU Free Documentation License, Version 1.1 or
55 are preserved on all copies. 49 any later version published by the Free Software Foundation; with the
56 50 Invariant Sections being none, with the Front-Cover texts being ``A GNU
57 Permission is granted to copy and distribute modified versions of this 51 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
58 manual under the conditions for verbatim copying, provided that the 52 license is included in the section entitled ``GNU Free Documentation
59 entire resulting derived work is distributed under the terms of a 53 License''.
60 permission notice identical to this one. 54
61 55 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
62 Permission is granted to copy and distribute translations of this manual 56 this GNU Manual, like GNU software. Copies published by the Free
63 into another language, under the above conditions for modified versions. 57 Software Foundation raise funds for GNU development.''
64
65 @end titlepage 58 @end titlepage
66 @page 59 @page
67 60
68 @end tex 61 @end tex
69 62
81 * Appendices:: More technical things. 74 * Appendices:: More technical things.
82 * Index:: Variable, function and concept index. 75 * Index:: Variable, function and concept index.
83 * Key Index:: List of Message mode keys. 76 * Key Index:: List of Message mode keys.
84 @end menu 77 @end menu
85 78
86 This manual corresponds to Message 5.7. Message is distributed with 79 This manual corresponds to Message 5.9.0. Message is distributed with
87 the Gnus distribution bearing the same version number as this manual 80 the Gnus distribution bearing the same version number as this manual.
88 has.
89 81
90 82
91 @node Interface 83 @node Interface
92 @chapter Interface 84 @chapter Interface
93 85
114 106
115 @node New Mail Message 107 @node New Mail Message
116 @section New Mail Message 108 @section New Mail Message
117 109
118 @findex message-mail 110 @findex message-mail
119 The @code{message-mail} command pops up a new message buffer. 111 The @code{message-mail} command pops up a new message buffer.
120 112
121 Two optional parameters are accepted: The first will be used as the 113 Two optional parameters are accepted: The first will be used as the
122 @code{To} header and the second as the @code{Subject} header. If these 114 @code{To} header and the second as the @code{Subject} header. If these
123 are @code{nil}, those two headers will be empty. 115 are @code{nil}, those two headers will be empty.
124 116
125 117
126 @node New News Message 118 @node New News Message
127 @section New News Message 119 @section New News Message
128 120
129 @findex message-news 121 @findex message-news
130 The @code{message-news} command pops up a new message buffer. 122 The @code{message-news} command pops up a new message buffer.
131 123
132 This function accepts two optional parameters. The first will be used 124 This function accepts two optional parameters. The first will be used
133 as the @code{Newsgroups} header and the second as the @code{Subject} 125 as the @code{Newsgroups} header and the second as the @code{Subject}
134 header. If these are @code{nil}, those two headers will be empty. 126 header. If these are @code{nil}, those two headers will be empty.
135 127
151 143
152 @lisp 144 @lisp
153 (setq message-reply-to-function 145 (setq message-reply-to-function
154 (lambda () 146 (lambda ()
155 (cond ((equal (mail-fetch-field "from") "somebody") 147 (cond ((equal (mail-fetch-field "from") "somebody")
156 (mail-fetch-field "sender")) 148 (list (cons 'To (mail-fetch-field "sender"))))
157 (t 149 (t
158 nil)))) 150 nil))))
159 @end lisp 151 @end lisp
160 152
161 This function will be called narrowed to the head of the article that is 153 This function will be called narrowed to the head of the article that is
162 being replied to. 154 being replied to.
168 160
169 This function can also return a list. In that case, each list element 161 This function can also return a list. In that case, each list element
170 should be a cons, where the car should be the name of an header 162 should be a cons, where the car should be the name of an header
171 (eg. @code{Cc}) and the cdr should be the header value 163 (eg. @code{Cc}) and the cdr should be the header value
172 (eg. @samp{larsi@@ifi.uio.no}). All these headers will be inserted into 164 (eg. @samp{larsi@@ifi.uio.no}). All these headers will be inserted into
173 the head of the outgoing mail. 165 the head of the outgoing mail.
174 166
175 167
176 @node Wide Reply 168 @node Wide Reply
177 @section Wide Reply 169 @section Wide Reply
178 170
184 176
185 @vindex message-wide-reply-to-function 177 @vindex message-wide-reply-to-function
186 Message uses the normal methods to determine where wide replies are to go, 178 Message uses the normal methods to determine where wide replies are to go,
187 but you can change the behavior to suit your needs by fiddling with the 179 but you can change the behavior to suit your needs by fiddling with the
188 @code{message-wide-reply-to-function}. It is used in the same way as 180 @code{message-wide-reply-to-function}. It is used in the same way as
189 @code{message-reply-to-function} (@pxref{Reply}). 181 @code{message-reply-to-function} (@pxref{Reply}).
190 182
191 @findex rmail-dont-reply-to-names 183 @findex message-dont-reply-to-names
192 Addresses that match the @code{rmail-dont-reply-to-names} regular 184 Addresses that match the @code{message-dont-reply-to-names} regular
193 expression will be removed from the @code{Cc} header. 185 expression will be removed from the @code{Cc} header.
194 186
195 187
196 @node Followup 188 @node Followup
197 @section Followup 189 @section Followup
244 The @code{message-forward} command pops up a message buffer to forward 236 The @code{message-forward} command pops up a message buffer to forward
245 the message in the current buffer. If given a prefix, forward using 237 the message in the current buffer. If given a prefix, forward using
246 news. 238 news.
247 239
248 @table @code 240 @table @code
249 @item message-forward-start-separator 241 @item message-forward-ignored-headers
250 @vindex message-forward-start-separator 242 @vindex message-forward-ignored-headers
251 Delimiter inserted before forwarded messages. The default is@* 243 All headers that match this regexp will be deleted when forwarding a message.
252 @samp{------- Start of forwarded message -------\n}.
253
254 @vindex message-forward-end-separator
255 @item message-forward-end-separator
256 @vindex message-forward-end-separator
257 Delimiter inserted after forwarded messages. The default is@*
258 @samp{------- End of forwarded message -------\n}.
259
260 @item message-signature-before-forwarded-message
261 @vindex message-signature-before-forwarded-message
262 If this variable is @code{t}, which it is by default, your personal
263 signature will be inserted before the forwarded message. If not, the
264 forwarded message will be inserted first in the new mail.
265
266 @item message-included-forward-headers
267 @vindex message-included-forward-headers
268 Regexp matching header lines to be included in forwarded messages.
269 244
270 @item message-make-forward-subject-function 245 @item message-make-forward-subject-function
271 @vindex message-make-forward-subject-function 246 @vindex message-make-forward-subject-function
272 A list of functions that are called to generate a subject header for 247 A list of functions that are called to generate a subject header for
273 forwarded messages. The subject generated by the previous function is 248 forwarded messages. The subject generated by the previous function is
286 @end table 261 @end table
287 262
288 @item message-wash-forwarded-subjects 263 @item message-wash-forwarded-subjects
289 @vindex message-wash-forwarded-subjects 264 @vindex message-wash-forwarded-subjects
290 If this variable is @code{t}, the subjects of forwarded messages have 265 If this variable is @code{t}, the subjects of forwarded messages have
291 the evidence of previous forwards (such as @samp{Fwd:}, @samp{Re:}, 266 the evidence of previous forwards (such as @samp{Fwd:}, @samp{Re:},
292 @samp{(fwd)}) removed before the new subject is 267 @samp{(fwd)}) removed before the new subject is
293 constructed. The default value is @code{nil}. 268 constructed. The default value is @code{nil}.
294 269
270 @item message-forward-as-mime
271 @vindex message-forward-as-mime
272 If this variable is @code{t} (the default), forwarded messages are
273 included as inline MIME RFC822 parts. If it's @code{nil}, forwarded
274 messages will just be copied inline to the new message, like previous,
275 non MIME-savvy versions of gnus would do.
295 @end table 276 @end table
296 277
297 278
298 @node Resending 279 @node Resending
299 @section Resending 280 @section Resending
303 and resend the message in the current buffer to that address. 284 and resend the message in the current buffer to that address.
304 285
305 @vindex message-ignored-resent-headers 286 @vindex message-ignored-resent-headers
306 Headers that match the @code{message-ignored-resent-headers} regexp will 287 Headers that match the @code{message-ignored-resent-headers} regexp will
307 be removed before sending the message. The default is 288 be removed before sending the message. The default is
308 @samp{^Return-receipt}. 289 @samp{^Return-receipt}.
309 290
310 291
311 @node Bouncing 292 @node Bouncing
312 @section Bouncing 293 @section Bouncing
313 294
314 @findex message-bounce 295 @findex message-bounce
315 The @code{message-bounce} command will, if the current buffer contains a 296 The @code{message-bounce} command will, if the current buffer contains a
316 bounced mail message, pop up a message buffer stripped of the bounce 297 bounced mail message, pop up a message buffer stripped of the bounce
317 information. A @dfn{bounced message} is typically a mail you've sent 298 information. A @dfn{bounced message} is typically a mail you've sent
318 out that has been returned by some @code{mailer-daemon} as 299 out that has been returned by some @code{mailer-daemon} as
319 undeliverable. 300 undeliverable.
320 301
321 @vindex message-ignored-bounced-headers 302 @vindex message-ignored-bounced-headers
322 Headers that match the @code{message-ignored-bounced-headers} regexp 303 Headers that match the @code{message-ignored-bounced-headers} regexp
323 will be removed before popping up the buffer. The default is 304 will be removed before popping up the buffer. The default is
324 @samp{^\\(Received\\|Return-Path\\):}. 305 @samp{^\\(Received\\|Return-Path\\):}.
329 310
330 @menu 311 @menu
331 * Header Commands:: Commands for moving to headers. 312 * Header Commands:: Commands for moving to headers.
332 * Movement:: Moving around in message buffers. 313 * Movement:: Moving around in message buffers.
333 * Insertion:: Inserting things into message buffers. 314 * Insertion:: Inserting things into message buffers.
315 * MIME:: @sc{mime} considerations.
334 * Various Commands:: Various things. 316 * Various Commands:: Various things.
335 * Sending:: Actually sending the message. 317 * Sending:: Actually sending the message.
336 * Mail Aliases:: How to use mail aliases. 318 * Mail Aliases:: How to use mail aliases.
337 @end menu 319 @end menu
338 320
349 @kindex C-c ? 331 @kindex C-c ?
350 @findex message-goto-to 332 @findex message-goto-to
351 Describe the message mode. 333 Describe the message mode.
352 334
353 @item C-c C-f C-t 335 @item C-c C-f C-t
354 @kindex C-c C-f C-t 336 @kindex C-c C-f C-t
355 @findex message-goto-to 337 @findex message-goto-to
356 Go to the @code{To} header (@code{message-goto-to}). 338 Go to the @code{To} header (@code{message-goto-to}).
357 339
358 @item C-c C-f C-b 340 @item C-c C-f C-b
359 @kindex C-c C-f C-b 341 @kindex C-c C-f C-b
360 @findex message-goto-bcc 342 @findex message-goto-bcc
361 Go to the @code{Bcc} header (@code{message-goto-bcc}). 343 Go to the @code{Bcc} header (@code{message-goto-bcc}).
362 344
363 @item C-c C-f C-f 345 @item C-c C-f C-f
364 @kindex C-c C-f C-f 346 @kindex C-c C-f C-f
365 @findex message-goto-fcc 347 @findex message-goto-fcc
366 Go to the @code{Fcc} header (@code{message-goto-fcc}). 348 Go to the @code{Fcc} header (@code{message-goto-fcc}).
367 349
368 @item C-c C-f C-c 350 @item C-c C-f C-c
369 @kindex C-c C-f C-c 351 @kindex C-c C-f C-c
370 @findex message-goto-cc 352 @findex message-goto-cc
371 Go to the @code{Cc} header (@code{message-goto-cc}). 353 Go to the @code{Cc} header (@code{message-goto-cc}).
372 354
373 @item C-c C-f C-s 355 @item C-c C-f C-s
374 @kindex C-c C-f C-s 356 @kindex C-c C-f C-s
375 @findex message-goto-subject 357 @findex message-goto-subject
376 Go to the @code{Subject} header (@code{message-goto-subject}). 358 Go to the @code{Subject} header (@code{message-goto-subject}).
377 359
378 @item C-c C-f C-r 360 @item C-c C-f C-r
379 @kindex C-c C-f C-r 361 @kindex C-c C-f C-r
380 @findex message-goto-reply-to 362 @findex message-goto-reply-to
381 Go to the @code{Reply-To} header (@code{message-goto-reply-to}). 363 Go to the @code{Reply-To} header (@code{message-goto-reply-to}).
382 364
383 @item C-c C-f C-n 365 @item C-c C-f C-n
384 @kindex C-c C-f C-n 366 @kindex C-c C-f C-n
385 @findex message-goto-newsgroups 367 @findex message-goto-newsgroups
386 Go to the @code{Newsgroups} header (@code{message-goto-newsgroups}). 368 Go to the @code{Newsgroups} header (@code{message-goto-newsgroups}).
387 369
388 @item C-c C-f C-d 370 @item C-c C-f C-d
389 @kindex C-c C-f C-d 371 @kindex C-c C-f C-d
390 @findex message-goto-distribution 372 @findex message-goto-distribution
391 Go to the @code{Distribution} header (@code{message-goto-distribution}). 373 Go to the @code{Distribution} header (@code{message-goto-distribution}).
392 374
393 @item C-c C-f C-o 375 @item C-c C-f C-o
394 @kindex C-c C-f C-o 376 @kindex C-c C-f C-o
395 @findex message-goto-followup-to 377 @findex message-goto-followup-to
396 Go to the @code{Followup-To} header (@code{message-goto-followup-to}). 378 Go to the @code{Followup-To} header (@code{message-goto-followup-to}).
397 379
398 @item C-c C-f C-k 380 @item C-c C-f C-k
399 @kindex C-c C-f C-k 381 @kindex C-c C-f C-k
400 @findex message-goto-keywords 382 @findex message-goto-keywords
401 Go to the @code{Keywords} header (@code{message-goto-keywords}). 383 Go to the @code{Keywords} header (@code{message-goto-keywords}).
402 384
403 @item C-c C-f C-u 385 @item C-c C-f C-u
404 @kindex C-c C-f C-u 386 @kindex C-c C-f C-u
405 @findex message-goto-summary 387 @findex message-goto-summary
406 Go to the @code{Summary} header (@code{message-goto-summary}). 388 Go to the @code{Summary} header (@code{message-goto-summary}).
407 389
408 @end table 390 @end table
409 391
411 @node Movement 393 @node Movement
412 @section Movement 394 @section Movement
413 395
414 @table @kbd 396 @table @kbd
415 @item C-c C-b 397 @item C-c C-b
416 @kindex C-c C-b 398 @kindex C-c C-b
417 @findex message-goto-body 399 @findex message-goto-body
418 Move to the beginning of the body of the message 400 Move to the beginning of the body of the message
419 (@code{message-goto-body}). 401 (@code{message-goto-body}).
420 402
421 @item C-c C-i 403 @item C-c C-i
422 @kindex C-c C-i 404 @kindex C-c C-i
423 @findex message-goto-signature 405 @findex message-goto-signature
424 Move to the signature of the message (@code{message-goto-signature}). 406 Move to the signature of the message (@code{message-goto-signature}).
425 407
426 @end table 408 @end table
427 409
430 @section Insertion 412 @section Insertion
431 413
432 @table @kbd 414 @table @kbd
433 415
434 @item C-c C-y 416 @item C-c C-y
435 @kindex C-c C-y 417 @kindex C-c C-y
436 @findex message-yank-original 418 @findex message-yank-original
437 Yank the message that's being replied to into the message buffer 419 Yank the message that's being replied to into the message buffer
438 (@code{message-yank-original}). 420 (@code{message-yank-original}).
421
422 @item C-c M-C-y
423 @kindex C-c M-C-y
424 @findex message-yank-buffer
425 Prompt for a buffer name and yank the contents of that buffer into the
426 message buffer (@code{message-yank-buffer}).
439 427
440 @item C-c C-q 428 @item C-c C-q
441 @kindex C-c C-q 429 @kindex C-c C-q
442 @findex message-fill-yanked-message 430 @findex message-fill-yanked-message
443 Fill the yanked message (@code{message-fill-yanked-message}). Warning: 431 Fill the yanked message (@code{message-fill-yanked-message}). Warning:
444 Can severely mess up the yanked text if its quoting conventions are 432 Can severely mess up the yanked text if its quoting conventions are
445 strange. You'll quickly get a feel for when it's safe, though. Anyway, 433 strange. You'll quickly get a feel for when it's safe, though. Anyway,
446 just remember that @kbd{C-x u} (@code{undo}) is available and you'll be 434 just remember that @kbd{C-x u} (@code{undo}) is available and you'll be
447 all right. 435 all right.
448 436
449
450 @item C-c C-w 437 @item C-c C-w
451 @kindex C-c C-w 438 @kindex C-c C-w
452 @findex message-insert-signature 439 @findex message-insert-signature
453 Insert a signature at the end of the buffer 440 Insert a signature at the end of the buffer
454 (@code{message-insert-signature}). 441 (@code{message-insert-signature}).
442
443 @item C-c M-h
444 @kindex C-c M-h
445 @findex message-insert-headers
446 Insert the message headers (@code{message-insert-headers}).
455 447
456 @end table 448 @end table
457 449
458 @table @code 450 @table @code
459 @item message-ignored-cited-headers 451 @item message-ignored-cited-headers
481 @cindex quoting 473 @cindex quoting
482 When you are replying to or following up an article, you normally want 474 When you are replying to or following up an article, you normally want
483 to quote the person you are answering. Inserting quoted text is done by 475 to quote the person you are answering. Inserting quoted text is done by
484 @dfn{yanking}, and each quoted line you yank will have 476 @dfn{yanking}, and each quoted line you yank will have
485 @code{message-yank-prefix} prepended to it. The default is @samp{> }. 477 @code{message-yank-prefix} prepended to it. The default is @samp{> }.
486 If it is @code{nil}, just indent the message.
487 478
488 @item message-indentation-spaces 479 @item message-indentation-spaces
489 @vindex message-indentation-spaces 480 @vindex message-indentation-spaces
490 Number of spaces to indent yanked messages. 481 Number of spaces to indent yanked messages.
491 482
533 Also note that no signature should be more than four lines long. 524 Also note that no signature should be more than four lines long.
534 Including ASCII graphics is an efficient way to get everybody to believe 525 Including ASCII graphics is an efficient way to get everybody to believe
535 that you are silly and have nothing important to say. 526 that you are silly and have nothing important to say.
536 527
537 528
529 @node MIME
530 @section MIME
531 @cindex MML
532 @cindex MIME
533 @cindex multipart
534 @cindex attachment
535
536 Message is a @sc{mime}-compliant posting agent. The user generally
537 doesn't have to do anything to make the @sc{mime} happen---Message will
538 automatically add the @code{Content-Type} and
539 @code{Content-Transfer-Encoding} headers.
540
541 The most typical thing users want to use the multipart things in
542 @sc{mime} for is to add ``attachments'' to mail they send out. This can
543 be done with the @code{C-c C-a} command, which will prompt for a file
544 name and a @sc{mime} type.
545
546 You can also create arbitrarily complex multiparts using the MML
547 language (@pxref{Composing, , Composing, emacs-mime, The Emacs MIME
548 Manual}).
549
538 550
539 @node Various Commands 551 @node Various Commands
540 @section Various Commands 552 @section Various Commands
541 553
542 @table @kbd 554 @table @kbd
543 555
544 @item C-c C-r 556 @item C-c C-r
545 @kindex C-c C-r 557 @kindex C-c C-r
546 @findex message-caesar-buffer-body 558 @findex message-caesar-buffer-body
547 Caesar rotate (aka. rot13) the current message 559 Caesar rotate (aka. rot13) the current message
548 (@code{message-caesar-buffer-body}). If narrowing is in effect, just 560 (@code{message-caesar-buffer-body}). If narrowing is in effect, just
549 rotate the visible portion of the buffer. A numerical prefix says how 561 rotate the visible portion of the buffer. A numerical prefix says how
550 many places to rotate the text. The default is 13. 562 many places to rotate the text. The default is 13.
551 563
552 @item C-c C-e 564 @item C-c C-e
553 @kindex C-c C-e 565 @kindex C-c C-e
554 @findex message-elide-region 566 @findex message-elide-region
555 Elide the text between point and mark (@code{message-elide-region}). 567 Elide the text between point and mark (@code{message-elide-region}).
556 The text is killed and an ellipsis (@samp{[...]}) will be inserted in 568 The text is killed and replaced with the contents of the variable
557 its place. 569 @code{message-elide-ellipsis}. The default value is to use an ellipsis
570 (@samp{[...]}).
558 571
559 @item C-c C-z 572 @item C-c C-z
560 @kindex C-c C-x 573 @kindex C-c C-x
561 @findex message-kill-to-signature 574 @findex message-kill-to-signature
562 Kill all the text up to the signature, or if that's missing, up to the 575 Kill all the text up to the signature, or if that's missing, up to the
587 * 600 *
588 601
589 > And here's more quoted text. 602 > And here's more quoted text.
590 @end example 603 @end example
591 604
592 @samp{*} says where point will be placed. 605 @samp{*} says where point will be placed.
593 606
594 @item C-c C-t 607 @item C-c C-t
595 @kindex C-c C-t 608 @kindex C-c C-t
596 @findex message-insert-to 609 @findex message-insert-to
597 Insert a @code{To} header that contains the @code{Reply-To} or 610 Insert a @code{To} header that contains the @code{Reply-To} or
598 @code{From} header of the message you're following up 611 @code{From} header of the message you're following up
599 (@code{message-insert-to}). 612 (@code{message-insert-to}).
600 613
601 @item C-c C-n 614 @item C-c C-n
602 @kindex C-c C-n 615 @kindex C-c C-n
603 @findex message-insert-newsgroups 616 @findex message-insert-newsgroups
604 Insert a @code{Newsgroups} header that reflects the @code{Followup-To} 617 Insert a @code{Newsgroups} header that reflects the @code{Followup-To}
605 or @code{Newsgroups} header of the article you're replying to 618 or @code{Newsgroups} header of the article you're replying to
606 (@code{message-insert-newsgroups}). 619 (@code{message-insert-newsgroups}).
607 620
617 @node Sending 630 @node Sending
618 @section Sending 631 @section Sending
619 632
620 @table @kbd 633 @table @kbd
621 @item C-c C-c 634 @item C-c C-c
622 @kindex C-c C-c 635 @kindex C-c C-c
623 @findex message-send-and-exit 636 @findex message-send-and-exit
624 Send the message and bury the current buffer 637 Send the message and bury the current buffer
625 (@code{message-send-and-exit}). 638 (@code{message-send-and-exit}).
626 639
627 @item C-c C-s 640 @item C-c C-s
628 @kindex C-c C-s 641 @kindex C-c C-s
629 @findex message-send 642 @findex message-send
630 Send the message (@code{message-send}). 643 Send the message (@code{message-send}).
631 644
632 @item C-c C-d 645 @item C-c C-d
633 @kindex C-c C-d 646 @kindex C-c C-d
634 @findex message-dont-send 647 @findex message-dont-send
635 Bury the message buffer and exit (@code{message-dont-send}). 648 Bury the message buffer and exit (@code{message-dont-send}).
699 @table @code 712 @table @code
700 713
701 @item message-generate-headers-first 714 @item message-generate-headers-first
702 @vindex message-generate-headers-first 715 @vindex message-generate-headers-first
703 If non-@code{nil}, generate all headers before starting to compose the 716 If non-@code{nil}, generate all headers before starting to compose the
704 message. 717 message.
705 718
706 @item message-from-style 719 @item message-from-style
707 @vindex message-from-style 720 @vindex message-from-style
708 Specifies how @code{From} headers should look. There are four valid 721 Specifies how @code{From} headers should look. There are four valid
709 values: 722 values:
733 to the @code{*post-buf*} buffer, edit the @code{Newsgroups} line, and 746 to the @code{*post-buf*} buffer, edit the @code{Newsgroups} line, and
734 ship it off again. By default, this variable makes sure that the old 747 ship it off again. By default, this variable makes sure that the old
735 generated @code{Message-ID} is deleted, and a new one generated. If 748 generated @code{Message-ID} is deleted, and a new one generated. If
736 this isn't done, the entire empire would probably crumble, anarchy would 749 this isn't done, the entire empire would probably crumble, anarchy would
737 prevail, and cats would start walking on two legs and rule the world. 750 prevail, and cats would start walking on two legs and rule the world.
738 Allegedly. 751 Allegedly.
739 752
740 @item message-default-headers 753 @item message-default-headers
741 @vindex message-default-headers 754 @vindex message-default-headers
742 This string is inserted at the end of the headers in all message 755 This string is inserted at the end of the headers in all message
743 buffers. 756 buffers.
779 792
780 @end table 793 @end table
781 794
782 795
783 @node Mail Variables 796 @node Mail Variables
784 @section Mail Variables 797 @section Mail Variables
785 798
786 @table @code 799 @table @code
787 @item message-send-mail-function 800 @item message-send-mail-function
788 @vindex message-send-mail-function 801 @vindex message-send-mail-function
789 Function used to send the current buffer as mail. The default is 802 Function used to send the current buffer as mail. The default is
820 @code{message-from-style}, @code{user-full-name}, 833 @code{message-from-style}, @code{user-full-name},
821 @code{user-mail-address} variables. 834 @code{user-mail-address} variables.
822 835
823 @item Subject 836 @item Subject
824 @cindex Subject 837 @cindex Subject
825 This required header will be prompted for if not present already. 838 This required header will be prompted for if not present already.
826 839
827 @item Newsgroups 840 @item Newsgroups
828 @cindex Newsgroups 841 @cindex Newsgroups
829 This required header says which newsgroups the article is to be posted 842 This required header says which newsgroups the article is to be posted
830 to. If it isn't present already, it will be prompted for. 843 to. If it isn't present already, it will be prompted for.
846 @cindex Message-ID 859 @cindex Message-ID
847 @vindex mail-host-address 860 @vindex mail-host-address
848 @findex system-name 861 @findex system-name
849 @cindex Sun 862 @cindex Sun
850 This required header will be generated by Message. A unique ID will be 863 This required header will be generated by Message. A unique ID will be
851 created based on the date, time, user name and system name. Message will 864 created based on the date, time, user name and system name. Message
852 use @code{mail-host-address} as the fully qualified domain name (FQDN) 865 will use @code{system-name} to determine the name of the system. If
853 of the machine if that variable is defined. If not, it will use 866 this isn't a fully qualified domain name (FQDN), Message will use
854 @code{system-name}, which doesn't report a FQDN on some machines -- 867 @code{mail-host-address} as the FQDN of the machine.
855 notably Suns.
856 868
857 @item X-Newsreader 869 @item X-Newsreader
858 @cindex X-Newsreader 870 @cindex X-Newsreader
859 This optional header will be filled out according to the 871 This optional header will be filled out according to the
860 @code{message-newsreader} local variable. 872 @code{message-newsreader} local variable.
923 to this list. 935 to this list.
924 936
925 Valid checks are: 937 Valid checks are:
926 938
927 @table @code 939 @table @code
928 @item subject-cmsg 940 @item subject-cmsg
929 Check the subject for commands. 941 Check the subject for commands.
930 @item sender 942 @item sender
931 @cindex Sender 943 @cindex Sender
932 Insert a new @code{Sender} header if the @code{From} header looks odd. 944 Insert a new @code{Sender} header if the @code{From} header looks odd.
933 @item multiple-headers 945 @item multiple-headers
934 Check for the existence of multiple equal headers. 946 Check for the existence of multiple equal headers.
935 @item sendsys 947 @item sendsys
936 @cindex sendsys 948 @cindex sendsys
937 Check for the existence of version and sendsys commands. 949 Check for the existence of version and sendsys commands.
938 @item message-id 950 @item message-id
939 Check whether the @code{Message-ID} looks ok. 951 Check whether the @code{Message-ID} looks ok.
940 @item from 952 @item from
941 Check whether the @code{From} header seems nice. 953 Check whether the @code{From} header seems nice.
942 @item long-lines 954 @item long-lines
943 @cindex long lines 955 @cindex long lines
944 Check for too long lines. 956 Check for too long lines.
945 @item control-chars 957 @item control-chars
946 Check for invalid characters. 958 Check for invalid characters.
947 @item size 959 @item size
954 @cindex approved 966 @cindex approved
955 Check whether the article has an @code{Approved} header, which is 967 Check whether the article has an @code{Approved} header, which is
956 something only moderators should include. 968 something only moderators should include.
957 @item empty 969 @item empty
958 Check whether the article is empty. 970 Check whether the article is empty.
971 @item invisible-text
972 Check whether there is any invisible text in the buffer.
959 @item empty-headers 973 @item empty-headers
960 Check whether any of the headers are empty. 974 Check whether any of the headers are empty.
961 @item existing-newsgroups 975 @item existing-newsgroups
962 Check whether the newsgroups mentioned in the @code{Newsgroups} and 976 Check whether the newsgroups mentioned in the @code{Newsgroups} and
963 @code{Followup-To} headers exist. 977 @code{Followup-To} headers exist.
964 @item valid-newsgroups 978 @item valid-newsgroups
965 Check whether the @code{Newsgroups} and @code{Followup-to} headers 979 Check whether the @code{Newsgroups} and @code{Followup-to} headers
966 are valid syntactically. 980 are valid syntactically.
967 @item repeated-newsgroups 981 @item repeated-newsgroups
992 1006
993 @table @code 1007 @table @code
994 @item message-send-news-function 1008 @item message-send-news-function
995 @vindex message-send-news-function 1009 @vindex message-send-news-function
996 Function used to send the current buffer as news. The default is 1010 Function used to send the current buffer as news. The default is
997 @code{message-send-news}. 1011 @code{message-send-news}.
998 1012
999 @item message-post-method 1013 @item message-post-method
1000 @vindex message-post-method 1014 @vindex message-post-method
1001 Gnusish @dfn{select method} (see the Gnus manual for details) used for 1015 Gnusish @dfn{select method} (see the Gnus manual for details) used for
1002 posting a prepared news message. 1016 posting a prepared news message.
1006 1020
1007 @node Various Message Variables 1021 @node Various Message Variables
1008 @section Various Message Variables 1022 @section Various Message Variables
1009 1023
1010 @table @code 1024 @table @code
1025 @item message-default-charset
1026 @vindex message-default-charset
1027 @cindex charset
1028 Symbol naming a @sc{mime} charset. Non-ASCII characters in messages are
1029 assumed to be encoded using this charset. The default is @code{nil},
1030 which means ask the user. (This variable is used only on non-@sc{mule}
1031 Emacsen.
1032 @xref{Charset Translation, , Charset Translation, emacs-mime,
1033 Emacs MIME Manual}, for details on the @sc{mule}-to-@sc{mime}
1034 translation process.
1035
1011 @item message-signature-separator 1036 @item message-signature-separator
1012 @vindex message-signature-separator 1037 @vindex message-signature-separator
1013 Regexp matching the signature separator. It is @samp{^-- *$} by 1038 Regexp matching the signature separator. It is @samp{^-- *$} by
1014 default. 1039 default.
1015 1040
1016 @item mail-header-separator 1041 @item mail-header-separator
1017 @vindex mail-header-separator 1042 @vindex mail-header-separator
1018 String used to separate the headers from the body. It is @samp{--text 1043 String used to separate the headers from the body. It is @samp{--text
1019 follows this line--} by default. 1044 follows this line--} by default.
1020 1045
1021 @item message-directory 1046 @item message-directory
1022 @vindex message-directory 1047 @vindex message-directory
1023 Directory used by many mailey things. The default is @file{~/Mail/}. 1048 Directory used by many mailey things. The default is @file{~/Mail/}.
1024 1049
1025 @item message-signature-setup-hook 1050 @item message-signature-setup-hook
1026 @vindex message-signature-setup-hook 1051 @vindex message-signature-setup-hook
1027 Hook run when initializing the message buffer. It is run after the 1052 Hook run when initializing the message buffer. It is run after the
1028 headers have been inserted but before the signature has been inserted. 1053 headers have been inserted but before the signature has been inserted.
1029 1054
1030 @item message-setup-hook 1055 @item message-setup-hook
1031 @vindex message-setup-hook 1056 @vindex message-setup-hook
1032 Hook run as the last thing when the message buffer has been initialized, 1057 Hook run as the last thing when the message buffer has been initialized,
1033 but before yanked text is inserted. 1058 but before yanked text is inserted.
1034 1059
1035 @item message-header-setup-hook 1060 @item message-header-setup-hook
1036 @vindex message-header-setup-hook 1061 @vindex message-header-setup-hook
1037 Hook called narrowed to the headers after initializing the headers. 1062 Hook called narrowed to the headers after initializing the headers.
1038 1063
1039 For instance, if you're running Gnus and wish to insert a 1064 For instance, if you're running Gnus and wish to insert a
1040 @samp{Mail-Copies-To} header in all your news articles and all messages 1065 @samp{Mail-Copies-To} header in all your news articles and all messages
1041 you send to mailing lists, you could do something like the following: 1066 you send to mailing lists, you could do something like the following:
1042 1067
1062 1087
1063 @lisp 1088 @lisp
1064 (add-hook 'message-send-hook 'my-message-add-content) 1089 (add-hook 'message-send-hook 'my-message-add-content)
1065 (defun my-message-add-content () 1090 (defun my-message-add-content ()
1066 (message-add-header 1091 (message-add-header
1067 "Mime-Version: 1.0" 1092 "X-In-No-Sense: Nonsense"
1068 "Content-Type: text/plain" 1093 "X-Whatever: no"))
1069 "Content-Transfer-Encoding: 7bit"))
1070 @end lisp 1094 @end lisp
1071 1095
1072 This function won't add the header if the header is already present. 1096 This function won't add the header if the header is already present.
1073 1097
1074 @item message-send-mail-hook 1098 @item message-send-mail-hook
1123 @node Sending Variables 1147 @node Sending Variables
1124 @section Sending Variables 1148 @section Sending Variables
1125 1149
1126 @table @code 1150 @table @code
1127 1151
1128 @item message-fcc-handler-function 1152 @item message-fcc-handler-function
1129 @vindex message-fcc-handler-function 1153 @vindex message-fcc-handler-function
1130 A function called to save outgoing articles. This function will be 1154 A function called to save outgoing articles. This function will be
1131 called with the name of the file to store the article in. The default 1155 called with the name of the file to store the article in. The default
1132 function is @code{message-output} which saves in Unix mailbox format. 1156 function is @code{message-output} which saves in Unix mailbox format.
1133 1157
1134 @item message-courtesy-message 1158 @item message-courtesy-message
1135 @vindex message-courtesy-message 1159 @vindex message-courtesy-message
1136 When sending combined messages, this string is inserted at the start of 1160 When sending combined messages, this string is inserted at the start of
1137 the mailed copy. If the string contains the format spec @samp{%s}, the 1161 the mailed copy. If the string contains the format spec @samp{%s}, the
1138 newsgroups the article has been posted to will be inserted there. If 1162 newsgroups the article has been posted to will be inserted there. If
1139 this variable is @code{nil}, no such courtesy message will be added. 1163 this variable is @code{nil}, no such courtesy message will be added.
1140 The default value is @samp{"The following message is a courtesy copy of 1164 The default value is @samp{"The following message is a courtesy copy of
1141 an article\nthat has been posted to %s as well.\n\n"}. 1165 an article\nthat has been posted to %s as well.\n\n"}.
1142 1166
1143 @end table 1167 @end table
1144 1168
1145 1169
1146 @node Message Buffers 1170 @node Message Buffers
1189 @section Message Actions 1213 @section Message Actions
1190 1214
1191 When Message is being used from a news/mail reader, the reader is likely 1215 When Message is being used from a news/mail reader, the reader is likely
1192 to want to perform some task after the message has been sent. Perhaps 1216 to want to perform some task after the message has been sent. Perhaps
1193 return to the previous window configuration or mark an article as 1217 return to the previous window configuration or mark an article as
1194 replied. 1218 replied.
1195 1219
1196 @vindex message-kill-actions 1220 @vindex message-kill-actions
1197 @vindex message-postpone-actions 1221 @vindex message-postpone-actions
1198 @vindex message-exit-actions 1222 @vindex message-exit-actions
1199 @vindex message-send-actions 1223 @vindex message-send-actions
1202 possibilities are @kbd{C-c C-s} which just sends the message, @kbd{C-c 1226 possibilities are @kbd{C-c C-s} which just sends the message, @kbd{C-c
1203 C-d} which postpones the message editing and buries the message buffer, 1227 C-d} which postpones the message editing and buries the message buffer,
1204 and @kbd{C-c C-k} which kills the message buffer. Each of these actions 1228 and @kbd{C-c C-k} which kills the message buffer. Each of these actions
1205 have lists associated with them that contains actions to be executed: 1229 have lists associated with them that contains actions to be executed:
1206 @code{message-send-actions}, @code{message-exit-actions}, 1230 @code{message-send-actions}, @code{message-exit-actions},
1207 @code{message-postpone-actions}, and @code{message-kill-actions}. 1231 @code{message-postpone-actions}, and @code{message-kill-actions}.
1208 1232
1209 Message provides a function to interface with these lists: 1233 Message provides a function to interface with these lists:
1210 @code{message-add-action}. The first parameter is the action to be 1234 @code{message-add-action}. The first parameter is the action to be
1211 added, and the rest of the arguments are which lists to add this action 1235 added, and the rest of the arguments are which lists to add this action
1212 to. Here's an example from Gnus: 1236 to. Here's an example from Gnus: