Mercurial > hg > xemacs-beta
comparison lisp/vm/vm-vars.el @ 20:859a2309aef8 r19-15b93
Import from CVS: tag r19-15b93
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:50:05 +0200 |
parents | 49a24b4fd526 |
children | 4103f0995bd7 |
comparison
equal
deleted
inserted
replaced
19:ac1f612d5250 | 20:859a2309aef8 |
---|---|
1 ;;; VM user and internal variable initialization | 1 ;;; VM user and internal variable initialization |
2 ;;; Copyright (C) 1989, 1990, 1991, 1993, 1994, 1995 Kyle E. Jones | 2 ;;; Copyright (C) 1989-1997 Kyle E. Jones |
3 ;;; | 3 ;;; |
4 ;;; This program is free software; you can redistribute it and/or modify | 4 ;;; This program is free software; you can redistribute it and/or modify |
5 ;;; it under the terms of the GNU General Public License as published by | 5 ;;; it under the terms of the GNU General Public License as published by |
6 ;;; the Free Software Foundation; either version 1, or (at your option) | 6 ;;; the Free Software Foundation; either version 1, or (at your option) |
7 ;;; any later version. | 7 ;;; any later version. |
19 | 19 |
20 (defvar vm-init-file "~/.vm" | 20 (defvar vm-init-file "~/.vm" |
21 "*Startup file for VM that is loaded the first time you run VM | 21 "*Startup file for VM that is loaded the first time you run VM |
22 in an Emacs session.") | 22 in an Emacs session.") |
23 | 23 |
24 (defvar vm-options-file "~/.vm.options" | 24 (defvar vm-preferences-file "~/.vm.preferences" |
25 "*Secondary startup file for VM, loaded after vm-init-file. | 25 "*Secondary startup file for VM, loaded after vm-init-file. |
26 This file is written and overwritten by VM and is not meant for | 26 This file is written and overwritten by VM and is not meant for |
27 users to edit directly. Use the Options menu to change what | 27 users to edit directly.") |
28 appears in this file.") | |
29 | 28 |
30 (defvar vm-primary-inbox "~/INBOX" | 29 (defvar vm-primary-inbox "~/INBOX" |
31 "*Mail is moved from the system mailbox to this file for reading.") | 30 "*Mail is moved from the system mailbox to this file for reading.") |
32 | 31 |
33 (defvar vm-crash-box "~/INBOX.CRASH" | 32 (defvar vm-crash-box "~/INBOX.CRASH" |
134 vm-spool-files will default to the value of the shell | 133 vm-spool-files will default to the value of the shell |
135 environmental variables MAILPATH or MAIL if either of these | 134 environmental variables MAILPATH or MAIL if either of these |
136 variables are defined and no particular value for vm-spool-files | 135 variables are defined and no particular value for vm-spool-files |
137 has been specified.") | 136 has been specified.") |
138 | 137 |
138 (defvar vm-spool-file-suffixes nil | |
139 "*List of suffixes to be used to create possible spool file names | |
140 for folders. Example: | |
141 | |
142 (setq vm-spool-file-suffixes '(\".spool\" \"-\")) | |
143 | |
144 If you visit a folder ~/mail/beekeeping, when VM attempts to | |
145 retrieve new mail for that folder it will look for mail in | |
146 ~/mail/beekeeping.spool and ~/mail/beekeeping- in addition to | |
147 scanning vm-spool-files for matches. | |
148 | |
149 The value of vm-spool-files-suffixes will not be used unless | |
150 vm-crash-box-suffix is also defined, since a crash box is | |
151 required for all mail retrieval from spool files.") | |
152 | |
153 (defvar vm-crash-box-suffix nil | |
154 "*String suffix used to create possible crash box file names for folders. | |
155 When VM uses vm-spool-file-suffixes to create a spool file name, | |
156 it will append the value of vm-crash-box-suffix to the folder's | |
157 file name to create a crash box name.") | |
158 | |
159 (defvar vm-make-spool-file-name nil | |
160 "*Non-nil value should be a function that returns a spool file name | |
161 for a folder. The function will be called with one argument, the | |
162 folder's file name. If the folder does not have a file name, | |
163 the function will not be called.") | |
164 | |
165 (defvar vm-make-crash-box-name nil | |
166 "*Non-nil value should be a function that returns a crash box file name | |
167 for a folder. The function will be called with one argument, the | |
168 folder's file name. If the folder does not have a file name, | |
169 the function will not be called.") | |
170 | |
139 (defvar vm-pop-md5-program "md5" | 171 (defvar vm-pop-md5-program "md5" |
140 "*Program that reads a message on its standard input and writes an | 172 "*Program that reads a message on its standard input and writes an |
141 MD5 digest on its output.") | 173 MD5 digest on its output.") |
142 | 174 |
143 (defvar vm-recognize-pop-maildrops "^[^:]+:[^:]+:[^:]+:[^:]+:[^:]+" | 175 (defvar vm-recognize-pop-maildrops "^[^:]+:[^:]+:[^:]+:[^:]+:[^:]+" |
153 | 185 |
154 If the value is a number, then it specifies how often (in | 186 If the value is a number, then it specifies how often (in |
155 seconds) VM should check for new mail and try to retrieve it. | 187 seconds) VM should check for new mail and try to retrieve it. |
156 This is done asynchronously and may occur while you are editing | 188 This is done asynchronously and may occur while you are editing |
157 other files. It should not disturb your editing, except perhaps | 189 other files. It should not disturb your editing, except perhaps |
158 for a pause while the work is being done. The `itimer' package | 190 for a pause while the check is being done.") |
159 must be installed for this to work. Otherwise a numeric value is | |
160 the same as a value of t.") | |
161 | 191 |
162 (defvar vm-default-folder-type | 192 (defvar vm-default-folder-type |
163 (cond ((not (boundp 'system-configuration)) | 193 (cond ((not (boundp 'system-configuration)) |
164 'From_) | 194 'From_) |
165 ((or (string-match "-solaris" system-configuration) | 195 ((or (string-match "-solaris" system-configuration) |
280 | 310 |
281 FSF Emacs always uses VM's builtin highlighting code.") | 311 FSF Emacs always uses VM's builtin highlighting code.") |
282 | 312 |
283 (defvar vm-highlighted-header-face 'bold | 313 (defvar vm-highlighted-header-face 'bold |
284 "*Face to be used to highlight headers. | 314 "*Face to be used to highlight headers. |
285 This variable is ignored under Lucid Emacs. | 315 The header to highlight are sepcified by the vm-highlighted-header-regexp |
286 See the documentation for the function `highlight-headers' | 316 variable. |
287 to find out how to customize header highlighting under Lucid Emacs.") | 317 |
318 This variable is ignored under XEmacs if vm-use-lucid-highlighting is | |
319 nil. XEmacs' highlight-headers package is used instead. See the | |
320 documentation for the function `highlight-headers' to find out how to | |
321 customize header highlighting using this package.") | |
288 | 322 |
289 (defvar vm-preview-lines 0 | 323 (defvar vm-preview-lines 0 |
290 "*Non-nil value N causes VM to display the visible headers + N lines of text | 324 "*Non-nil value N causes VM to display the visible headers + N lines of text |
291 of a message when it is first presented. The message is not actually | 325 of a message when it is first presented. The message is not actually |
292 flagged as read until it is exposed in its entirety. | 326 flagged as read until it is exposed in its entirety. |
298 messages are immediately flagged as read.") | 332 messages are immediately flagged as read.") |
299 | 333 |
300 (defvar vm-preview-read-messages nil | 334 (defvar vm-preview-read-messages nil |
301 "*Non-nil value means to preview messages even if they've already been read. | 335 "*Non-nil value means to preview messages even if they've already been read. |
302 A nil value causes VM to preview messages only if new or unread.") | 336 A nil value causes VM to preview messages only if new or unread.") |
337 | |
338 (defvar vm-display-using-mime t | |
339 "*Non-nil value means VM should display messages using MIME. | |
340 MIME (Multipurpose Internet Mail Extensions) is a set of | |
341 extensions to the standard Internet message format that allows | |
342 reliable tranmission and reception of arbitrary data including | |
343 images, audio and video as well as traditional text. | |
344 | |
345 A non-nil value for this variable means that VM will recognize | |
346 MIME encoded messages and display them as specified by the | |
347 various MIME standards specifications. | |
348 | |
349 A nil value means VM will not display MIME messages any | |
350 differently than any other message.") | |
351 | |
352 ;; try to avoid bad interaction with TM | |
353 (defvar vm-send-using-mime (not (featurep 'mime-setup)) | |
354 "*Non-nil value means VM should support sending messages using MIME. | |
355 MIME (Multipurpose Internet Mail Extensions) is a set of | |
356 extensions to the standard Internet message format that allows | |
357 reliable tranmission and reception of arbitrary data including | |
358 images, audio and video as well as traditional text. | |
359 | |
360 A non-nil value for this variable means that VM will | |
361 | |
362 - allow you to attach files and messages to your outbound message. | |
363 - analyze the composition buffer when you send off a message and | |
364 encode it as needed. | |
365 | |
366 A nil value means VM will not offer any support for composing | |
367 MIME messages.") | |
368 | |
369 (defvar vm-honor-mime-content-disposition nil | |
370 "*Non-nil value means use information from the Content-Disposition header | |
371 to display MIME messages. The Content-Disposition header | |
372 specifies whether a MIME object should be displayed inline or | |
373 treated as an attachment. For VM, ``inline'' display means | |
374 displaying the object in the Emacs buffer, if possible. | |
375 Attachments will be displayed as a button that you can use | |
376 mouse-2 to activate or mouse-3 to pull up a menu of options.") | |
377 | |
378 (defvar vm-auto-decode-mime-messages nil | |
379 "*Non-nil value causes MIME decoding to occur automatically | |
380 when a message containing MIME objects is exposed. A nil value | |
381 means that you will have to run the `vm-decode-mime-message' | |
382 command (normally bound to `D') manually to decode and display | |
383 MIME objects.") | |
384 | |
385 (defvar vm-auto-displayed-mime-content-types '("text" "multipart") | |
386 "*List of MIME content types that should be displayed immediately | |
387 after decoding. Other types will be displayed as a button that | |
388 the user must activate to display the object. | |
389 | |
390 A value of t means that all types should be displayed immediately. | |
391 A nil value means never display MIME objects immediately; only use buttons. | |
392 | |
393 If the value is a list, it should be a list of strings, which | |
394 should all be types or type/subtype pairs. Example: | |
395 | |
396 (setq vm-auto-displayed-mime-content-types '(\"text\" \"image/jpeg\")) | |
397 | |
398 If a top-level type is listed without a subtype, all subtypes of | |
399 that type are assumed to be included. | |
400 | |
401 Note that some types are processed specially, and this variable does not | |
402 apply to them. | |
403 | |
404 Multipart/Digest and Message/RFC822 messages are always | |
405 displayed as a button to avoid visiting a new folder while the | |
406 user is moving around in the current folder. | |
407 | |
408 Message/Partial messages are always displayed as a button, | |
409 because there always needs to be a way to trigger the assembly | |
410 of the parts into a full message. | |
411 | |
412 Any type that cannot be displayed internally or externally will | |
413 be displayed as a button that allows you to save the body to a | |
414 file.") | |
415 | |
416 (defvar vm-mime-internal-content-types t | |
417 "*List of MIME content types that should be displayed internally | |
418 if Emacs is capable of doing so. A value of t means that VM | |
419 should always display an object internally if possible. A nil | |
420 value means never display MIME objects internally, which means VM | |
421 have to run an external viewer to display MIME objects. | |
422 | |
423 If the value is a list, it should be a list of strings. Example: | |
424 | |
425 (setq vm-mime-internal-content-types '(\"text\" \"image/jpeg\")) | |
426 | |
427 If a top-level type is listed without a subtype, all subtypes of | |
428 that type are assumed to be included. | |
429 | |
430 Note that all multipart types are always handled internally. | |
431 There is no need to list them here.") | |
432 | |
433 (defvar vm-mime-external-content-types-alist nil | |
434 "*Alist of MIME content types and the external programs used to display them. | |
435 If VM cannot display a type internally or has been instructed not | |
436 to (see the documentation for the vm-mime-internal-content-types | |
437 variable) it will try to launch an external program to display that | |
438 type. | |
439 | |
440 The alist format is | |
441 | |
442 ( (TYPE PROGRAM ARG ARG ... ) ... ) | |
443 | |
444 TYPE is a string specifying a MIME type or type/subtype pair. | |
445 Example \"text\" or \"image/jpeg\". If a top-level type is | |
446 listed without a subtype, all subtypes of that type are assumed | |
447 to be included. | |
448 | |
449 PROGRAM is a string naming a program to run to display an object. | |
450 Any ARGS will be passed to the program as arguments. The octets | |
451 that compose the object will be written into a file and the name | |
452 of the file will be passed to the program as its last argument. | |
453 | |
454 Example: | |
455 | |
456 (setq vm-mime-external-content-types-alist | |
457 '( | |
458 (\"text/html\" \"netscape\") | |
459 (\"image/gif\" \"xv\") | |
460 (\"image/jpeg\" \"xv\") | |
461 (\"video/mpeg\" \"mpeg_play\") | |
462 (\"video\" \"xanim\") | |
463 ) | |
464 ) | |
465 | |
466 The first matching list element will be used. | |
467 | |
468 No multipart message will ever be sent to an external viewer.") | |
469 | |
470 (defvar vm-mime-type-converter-alist nil | |
471 "*Alist of MIME types and programs that can convert between them. | |
472 If VM cannot display a content type, it will scan this list to | |
473 see if the type can be converted into a type that it can display. | |
474 | |
475 The alist format is | |
476 | |
477 ( (START-TYPE END-TYPE COMMAND-LINE ) ... ) | |
478 | |
479 START-TYPE is a string specifying a MIME type or type/subtype pair. | |
480 Example \"text\" or \"image/jpeg\". If a top-level type is | |
481 listed without a subtype, all subtypes of that type are assumed | |
482 to be included. | |
483 | |
484 END-TYPE must be an exact type/subtype pair. This is the type | |
485 to which START-TYPE will be converted. | |
486 | |
487 COMMAND-LINE is a string giving a command line to be passed to | |
488 the shell. The octets that compose the object will be written to | |
489 the standard input of the shell command. | |
490 | |
491 Example: | |
492 | |
493 (setq vm-mime-type-converter-alist | |
494 '( | |
495 (\"image/jpeg\" \"image/gif\" \"jpeg2gif\") | |
496 (\"text/html\" \"text/plain\" \"striptags\") | |
497 ) | |
498 ) | |
499 | |
500 The first matching list element will be used.") | |
501 | |
502 (defvar vm-mime-alternative-select-method 'best-internal | |
503 "*Value tells how to choose which multipart/alternative part to display. | |
504 A MIME message of type multipart/alternative has multiple message | |
505 parts containing the same information, but each part may be | |
506 formatted differently. VM will display only one of the parts. | |
507 This variable tells VM how to choose which part to display. | |
508 | |
509 A value of 'best means choose the part that is the most faithful to | |
510 the sender's original content that can be displayed. | |
511 | |
512 A value of 'best-internal means choose the best part that can be | |
513 displayed internally, i.e. with the built-in capabilities of Emacs. | |
514 If none of the parts can be displayed internally, behavior reverts to | |
515 that of 'best.") | |
516 | |
517 (defvar vm-mime-button-face | |
518 (cond ((fboundp 'find-face) | |
519 (or (and (not (eq (device-type) 'tty)) (find-face 'gui-button-face) | |
520 'gui-button-face) | |
521 (and (find-face 'bold-italic) 'bold-italic))) | |
522 ((fboundp 'facep) | |
523 (or (and (facep 'gui-button-face) 'gui-button-face) | |
524 (and (facep 'bold-italic) 'bold-italic)))) | |
525 "*Face used for text in buttons that trigger the display of MIME objects.") | |
526 | |
527 (defvar vm-mime-8bit-composition-charset "iso-8859-1" | |
528 "*Character set that VM should assume if it finds non-US-ASCII characters | |
529 in a composition buffer. Composition buffers are assumed to use | |
530 US-ASCII unless the buffer contains a byte with the high bit set. | |
531 This variable specifies what character set VM should assume if | |
532 such a character is found.") | |
533 | |
534 (defvar vm-mime-8bit-text-transfer-encoding 'quoted-printable | |
535 "*Symbol specifying what kind of transfer encoding to use on 8bit | |
536 text. Characters with the high bit set cannot safely pass | |
537 through all mail gateways and mail transport software. MIME has | |
538 two transfer encodings that convert 8-bit data to 7-bit for same | |
539 transport. Quoted-printable leaves the text mostly readable even | |
540 if the recipent does not have a MIME-capable mail reader. BASE64 | |
541 is unreadable with a MIME-capable mail reader, unless your name | |
542 is U3BvY2s=. | |
543 | |
544 A value of 'quoted-printable, means to use quoted-printable encoding. | |
545 A value of 'base64 means to use BASE64 encoding. | |
546 A value of '8bit means to send the message as is. | |
547 | |
548 Note that this only applies to textual MIME content types. Images, audio, | |
549 video, etc. will always use BASE64 encoding. | |
550 | |
551 Note that lines of 1000 characters or longer will automatically | |
552 trigger BASE64 encoding. Carriage returns (ascii code 13) in the | |
553 text will also trigger BASE64 encoding.") | |
554 | |
555 (defvar vm-mime-attachment-auto-type-alist | |
556 '( | |
557 ("\\.jpe?g" . "image/jpeg") | |
558 ("\\.gif" . "image/gif") | |
559 ("\\.png" . "image/png") | |
560 ("\\.tiff" . "image/tiff") | |
561 ("\\.htm?l" . "text/html") | |
562 ("\\.au" . "audio/basic") | |
563 ("\\.mpe?g" . "video/mpeg") | |
564 ("\\.ps" . "application/postscript") | |
565 ) | |
566 "*Alist used to guess a MIME content type based on a file name. | |
567 The list format is | |
568 | |
569 ((REGEXP . TYPE) ...) | |
570 | |
571 REGEXP is a string that specifies a regular expression. | |
572 TYPE is a string specifying a MIME content type. | |
573 | |
574 When a non-MIME file is attached to a MIME composition buffer, | |
575 this list will be scanned until a REGEXP matches the file's name. | |
576 The corresponding TYPE will be offered as a default when you are | |
577 prompted for the file's type.") | |
578 | |
579 (defvar vm-mime-max-message-size nil | |
580 "*Largest MIME message that VM should send without fragmentation. | |
581 The value should be a integer which specifies the size in bytes. | |
582 A message larger than this value will be split into multiple parts | |
583 for transmission using the MIME message/partial type.") | |
584 | |
585 (defvar vm-mime-attachment-save-directory nil | |
586 "*Non-nil value is a default directory for saving MIME attachments. | |
587 When VM prompts you for a target file name when saving a MIME body, | |
588 any relative pathnames will be relative to this directory.") | |
589 | |
590 (defvar vm-mime-avoid-folding-content-type nil | |
591 "*Non-nil means don't send folded Content-Type headers in MIME messages. | |
592 `Folded' headers are headers broken into multiple lines as specified | |
593 in RFC822 for readability and to avoid excessive line lengths. At | |
594 least one major UNIX vendor ships a version of sendmail that believes | |
595 a folded Content-Type header is a syntax error, and returns any such | |
596 message to sender. A typical error message from such a sendmail | |
597 version is, | |
598 | |
599 553 header syntax error, line \" charset=us-ascii\" | |
600 | |
601 If you see one of these, setting vm-mime-avoid-folding-content-type | |
602 non-nil may let your mail get through.") | |
603 | |
604 (defvar vm-mime-base64-decoder-program nil | |
605 "*Non-nil value should be a string that names a MIME base64 decoder. | |
606 The program should expect to read base64 data on its standard | |
607 input and write the converted data to its standard output.") | |
608 | |
609 (defvar vm-mime-base64-decoder-switches nil | |
610 "*List of command line flags passed to the command named by | |
611 vm-mime-base64-decoder-program.") | |
612 | |
613 (defvar vm-mime-base64-encoder-program nil | |
614 "*Non-nil value should be a string that names a MIME base64 encoder. | |
615 The program should expect arbitrary data on its standard | |
616 input and write base64 data to its standard output.") | |
617 | |
618 (defvar vm-mime-base64-encoder-switches nil | |
619 "*List of command line flags passed to the command named by | |
620 vm-mime-base64-encoder-program.") | |
303 | 621 |
304 (defvar vm-auto-next-message t | 622 (defvar vm-auto-next-message t |
305 "*Non-nil value causes VM to use vm-next-message to advance to the next | 623 "*Non-nil value causes VM to use vm-next-message to advance to the next |
306 message in the folder if the user attempts to scroll past the end of the | 624 message in the folder if the user attempts to scroll past the end of the |
307 current messages. A nil value disables this behavior.") | 625 current messages. A nil value disables this behavior.") |
419 Normally when a message attribute is changed. VM keeps the record | 737 Normally when a message attribute is changed. VM keeps the record |
420 of the change in its internal memory and doesn't insert the | 738 of the change in its internal memory and doesn't insert the |
421 changed data into the folder buffer until a particular message or | 739 changed data into the folder buffer until a particular message or |
422 the whole folder is saved to disk. This makes normal Emacs | 740 the whole folder is saved to disk. This makes normal Emacs |
423 auto-saving useless for VM folder buffers because the information | 741 auto-saving useless for VM folder buffers because the information |
424 you'd want to auto-save, i.e. the attribute changes, isn't in | 742 you'd want to auto-save, i.e. the attribute changes are not in |
425 the buffer when it is auto-saved. | 743 the buffer when it is auto-saved. |
426 | 744 |
427 Setting vm-flush-interval to a numeric value will cause the VM's | 745 Setting vm-flush-interval to a numeric value will cause the VM's |
428 internal memory caches to be periodically flushed to the folder | 746 internal memory caches to be periodically flushed to the folder |
429 buffer. This is done non-obtrusively, so that if you type | 747 buffer. This is done non-obtrusively, so that if you type |
753 be forwarded. vm-forwarded-headers determines the forwarding | 1071 be forwarded. vm-forwarded-headers determines the forwarding |
754 order in that case, with headers not matching any in the | 1072 order in that case, with headers not matching any in the |
755 vm-forwarded-headers list appearing last in the header section of | 1073 vm-forwarded-headers list appearing last in the header section of |
756 the forwarded message.") | 1074 the forwarded message.") |
757 | 1075 |
758 (defvar vm-forwarding-digest-type "rfc934" | 1076 (defvar vm-forwarding-digest-type "mime" |
759 "*Non-nil value should be a string that specifies the type of | 1077 "*Non-nil value should be a string that specifies the type of |
760 message encapsulation format to use when forwarding a message. | 1078 message encapsulation format to use when forwarding a message. |
761 Legal values of this variable are: | 1079 Legal values of this variable are: |
762 | 1080 |
763 \"rfc934\" | 1081 \"rfc934\" |
764 \"rfc1153\" | 1082 \"rfc1153\" |
1083 \"mime\" | |
765 nil | 1084 nil |
766 | 1085 |
767 A nil value means don't use a digest, just mark the beginning and | 1086 A nil value means don't use a digest, just mark the beginning and |
768 end of the forwarded message.") | 1087 end of the forwarded message.") |
1088 | |
1089 (defvar vm-burst-digest-messages-inherit-labels t | |
1090 "*Non-nil values means messages from a digest inherit the digest's labels. | |
1091 Labels are added to messages with vm-add-message-labels, normally | |
1092 bound to `l a'.") | |
769 | 1093 |
770 (defvar vm-digest-preamble-format "\"%s\" (%F)" | 1094 (defvar vm-digest-preamble-format "\"%s\" (%F)" |
771 "*String which specifies the format of the preamble lines generated by | 1095 "*String which specifies the format of the preamble lines generated by |
772 vm-send-digest when it is invoked with a prefix argument. One | 1096 vm-send-digest when it is invoked with a prefix argument. One |
773 line will be generated for each message put into the digest. See the | 1097 line will be generated for each message put into the digest. See the |
782 | 1106 |
783 (defvar vm-digest-identifier-header-format "X-Digest: %s\n" | 1107 (defvar vm-digest-identifier-header-format "X-Digest: %s\n" |
784 "*Header to insert into messages burst from a digest. | 1108 "*Header to insert into messages burst from a digest. |
785 Value should be a format string of the same type as vm-summary-format that describes a header to be inserted into each message burst from a digest. The format string must end with a newline.") | 1109 Value should be a format string of the same type as vm-summary-format that describes a header to be inserted into each message burst from a digest. The format string must end with a newline.") |
786 | 1110 |
787 (defvar vm-digest-burst-type "rfc934" | 1111 (defvar vm-digest-burst-type "guess" |
788 "*Value specifies the default digest type offered by vm-burst-digest | 1112 "*Value specifies the default digest type offered by vm-burst-digest |
789 when it asks you what type of digest you want to unpack. Allowed | 1113 when it asks you what type of digest you want to unpack. Allowed |
790 values of this variable are: | 1114 values of this variable are: |
791 | 1115 |
792 \"rfc934\" | 1116 \"rfc934\" |
793 \"rfc1153\" | 1117 \"rfc1153\" |
1118 \"mime\" | |
794 \"guess\" | 1119 \"guess\" |
1120 | |
1121 rfc1153 digests have a preamble, followed by a line of exactly 70 | |
1122 dashes, with digested messages separated by lines of exactly 30 dashes. | |
1123 | |
1124 rfc934 digests separate messages on any line that begins with a few | |
1125 dashes, but doesn't require lines with only dashes or lines with a | |
1126 specific number of dashes. In the text of the message, any line | |
1127 beginning with dashes is textually modified to be preceeded by a dash | |
1128 and a space to prevent confusion with message separators. | |
1129 | |
1130 MIME digests use whatever boundary that is specified by the | |
1131 boundary parameter in the Content-Type header of the digest. | |
795 | 1132 |
796 If the value is \"guess\", and you take the default | 1133 If the value is \"guess\", and you take the default |
797 response when vm-burst-digest queries you, VM will try to guess | 1134 response when vm-burst-digest queries you, VM will try to guess |
798 the digest type.") | 1135 the digest type.") |
799 | 1136 |
800 (defvar vm-digest-send-type "rfc934" | 1137 (defvar vm-digest-send-type "mime" |
801 "*String that specifies the type of digest vm-send-digest will use. | 1138 "*String that specifies the type of digest vm-send-digest will use. |
802 Legal values of this variable are: | 1139 Legal values of this variable are: |
803 | 1140 |
804 \"rfc934\" | 1141 \"rfc934\" |
805 \"rfc1153\" | 1142 \"rfc1153\" |
1143 \"mime\" | |
806 | 1144 |
807 ") | 1145 ") |
808 | 1146 |
809 (defvar vm-rfc934-digest-headers | 1147 (defvar vm-rfc934-digest-headers |
810 '("Resent-" | 1148 '("Resent-" |
894 will be kept. vm-rfc1153-digest-headers determines the order of | 1232 will be kept. vm-rfc1153-digest-headers determines the order of |
895 appearance in that case, with headers not matching any in the | 1233 appearance in that case, with headers not matching any in the |
896 vm-rfc1153-digest-headers list appearing last in the headers of | 1234 vm-rfc1153-digest-headers list appearing last in the headers of |
897 the digestified messages.") | 1235 the digestified messages.") |
898 | 1236 |
1237 (defvar vm-mime-digest-headers | |
1238 '("Resent-" | |
1239 "From:" "Sender:" | |
1240 "To:" "Cc:" | |
1241 "Subject:" | |
1242 "Date:" | |
1243 "Message-ID:" | |
1244 "Keywords:" | |
1245 "MIME-Version:" | |
1246 "Content-") | |
1247 "*List of headers that should be appear in MIME digests | |
1248 created by VM. These should be listed in the order you wish them | |
1249 to appear in the messages in the digest. Regular expressions are | |
1250 allowed. There's no need to anchor patterns with \"^\", as | |
1251 searches always start at the beginning of a line. Put a colon at | |
1252 the end of patterns to get exact matches. (E.g. \"Date\" matches | |
1253 \"Date\" and \"Date-Sent\".) Header names are always matched | |
1254 case insensitively. | |
1255 | |
1256 If the value of vm-mime-digest-discard-header-regexp is nil, the headers | |
1257 matched by vm-mime-digest-headers are the only headers that will be | |
1258 kept. | |
1259 | |
1260 If vm-mime-digest-discard-header-regexp is non-nil, then only | |
1261 headers matched by that variable will be discarded; all others | |
1262 will be kept. vm-mime-digest-headers determines the order of | |
1263 appearance in that case, with headers not matching any in the | |
1264 vm-mime-digest-headers list appearing last in the headers | |
1265 of the digestified messages.") | |
1266 | |
1267 (defvar vm-mime-digest-discard-header-regexp nil | |
1268 "*Non-nil value should be a regular expression header that tells | |
1269 which headers should not appear in MIME digests created | |
1270 by VM. This variable along with vm-mime-digest-headers | |
1271 determines which headers are kept and which are discarded. | |
1272 | |
1273 If the value of vm-mime-digest-discard-header-regexp is nil, the headers | |
1274 matched by vm-mime-digest-headers are the only headers that will be | |
1275 kept. | |
1276 | |
1277 If vm-mime-digest-discard-header-regexp is non-nil, then only | |
1278 headers matched by this variable will be discarded; all others | |
1279 will be kept. vm-mime-digest-headers determines the order of | |
1280 appearance in that case, with headers not matching any in the | |
1281 vm-mime-digest-headers list appearing last in the headers | |
1282 of the digestified messages.") | |
1283 | |
899 (defvar vm-resend-bounced-headers | 1284 (defvar vm-resend-bounced-headers |
900 '("Resent-" | 1285 '("MIME-Version:" "Content-" |
1286 "Resent-" | |
901 "From:" "Sender:" "Reply-To:" | 1287 "From:" "Sender:" "Reply-To:" |
902 "To:" "Cc:" | 1288 "To:" "Cc:" |
903 "Subject:" | 1289 "Subject:" |
904 "Newsgroups:" | 1290 "Newsgroups:" |
905 "In-Reply-To:" "References:" | 1291 "In-Reply-To:" "References:" |
964 the message.") | 1350 the message.") |
965 | 1351 |
966 (defvar vm-resend-discard-header-regexp "\\(\\(X400-\\)?Received:\\|Resent-\\)" | 1352 (defvar vm-resend-discard-header-regexp "\\(\\(X400-\\)?Received:\\|Resent-\\)" |
967 "*Non-nil value should be a regular expression that tells | 1353 "*Non-nil value should be a regular expression that tells |
968 what headers should not appear in a resent message. This | 1354 what headers should not appear in a resent message. This |
969 variable along with vm-resend-bounced-headers determines which | 1355 variable along with vm-resend-headers determines which |
970 headers are kept and which headers are discarded. | 1356 headers are kept and which headers are discarded. |
971 | 1357 |
972 If the value of vm-resend-discard-header-regexp is nil, | 1358 If the value of vm-resend-discard-header-regexp is nil, |
973 the headers matched by vm-resend-headers are the only | 1359 the headers matched by vm-resend-headers are the only |
974 headers that will be kept. | 1360 headers that will be kept. |
1043 | 1429 |
1044 The field width may be followed by a `.' and a number specifying | 1430 The field width may be followed by a `.' and a number specifying |
1045 the maximum allowed length of the substituted string. If the | 1431 the maximum allowed length of the substituted string. If the |
1046 string is longer than this value the right end of the string is | 1432 string is longer than this value the right end of the string is |
1047 truncated. If the value is negative, the string is truncated on | 1433 truncated. If the value is negative, the string is truncated on |
1048 on the left instead of the right. | 1434 the left instead of the right. |
1049 | 1435 |
1050 The summary format need not be one line per message but it must end with | 1436 The summary format need not be one line per message but it must end with |
1051 a newline, otherwise the message pointer will not be displayed correctly | 1437 a newline, otherwise the message pointer will not be displayed correctly |
1052 in the summary window.") | 1438 in the summary window.") |
1053 | 1439 |
1058 variable's value has no effect on existing summary buffers.") | 1444 variable's value has no effect on existing summary buffers.") |
1059 | 1445 |
1060 (defvar vm-summary-highlight-face 'bold | 1446 (defvar vm-summary-highlight-face 'bold |
1061 "*Face to use to highlight the summary entry for the current message. | 1447 "*Face to use to highlight the summary entry for the current message. |
1062 Nil means don't highlight the current message's summary entry.") | 1448 Nil means don't highlight the current message's summary entry.") |
1449 | |
1450 (defvar vm-mouse-track-summary t | |
1451 "*Non-nil value means highlight summary lines as the mouse passes | |
1452 over them.") | |
1063 | 1453 |
1064 (defvar vm-summary-show-threads nil | 1454 (defvar vm-summary-show-threads nil |
1065 "*Non-nil value means VM should display and maintain | 1455 "*Non-nil value means VM should display and maintain |
1066 message thread trees in the summary buffer. This means that | 1456 message thread trees in the summary buffer. This means that |
1067 messages with a common ancestor will be displayed contiguously in | 1457 messages with a common ancestor will be displayed contiguously in |
1119 centered within the summary window. A value of t causes VM to always | 1509 centered within the summary window. A value of t causes VM to always |
1120 keep arrow centered. A value of nil means VM will never bother centering | 1510 keep arrow centered. A value of nil means VM will never bother centering |
1121 the arrow. A value that is not nil and not t causes VM to center the | 1511 the arrow. A value that is not nil and not t causes VM to center the |
1122 arrow only if the summary window is not the only existing window.") | 1512 arrow only if the summary window is not the only existing window.") |
1123 | 1513 |
1124 (defvar vm-summary-subject-no-newlines t | |
1125 "*Non-nil value means VM should replace newlines with spaces in the subject | |
1126 displayed in the summary.") | |
1127 | |
1128 (defvar vm-subject-ignored-prefix "^\\(re: *\\)+" | 1514 (defvar vm-subject-ignored-prefix "^\\(re: *\\)+" |
1129 "*Non-nil value should be a regular expression that matches | 1515 "*Non-nil value should be a regular expression that matches |
1130 strings at the beginning of the Subject header that you want VM to ignore | 1516 strings at the beginning of the Subject header that you want VM to ignore |
1131 when threading, sorting, marking, and killing messages by subject. | 1517 when threading, sorting, marking, and killing messages by subject. |
1132 | 1518 |
1174 | 1560 |
1175 This variable has no meaning if you're not running Emacs native | 1561 This variable has no meaning if you're not running Emacs native |
1176 under X Windows or some other window system that allows multiple | 1562 under X Windows or some other window system that allows multiple |
1177 Emacs frames.") | 1563 Emacs frames.") |
1178 | 1564 |
1565 (defvar vm-raise-frame-at-startup t | |
1566 "*Specifies whether VM should raise its frame at startup. | |
1567 A value of nil means never raise the frame. | |
1568 A value of t means always raise the frame. | |
1569 Other values are reserved for future use.") | |
1570 | |
1179 (defvar vm-frame-per-folder t | 1571 (defvar vm-frame-per-folder t |
1180 "*Non-nil value causes the folder visiting commands to visit in a new frame. | 1572 "*Non-nil value causes the folder visiting commands to visit in a new frame. |
1181 Nil means the commands will use the current frame. This variable | 1573 Nil means the commands will use the current frame. This variable |
1182 does not apply to the VM commands whose names end in | 1574 does not apply to the VM commands whose names end in |
1183 -other-frame, which always create a new frame. | 1575 -other-frame, which always create a new frame. |
1214 | 1606 |
1215 This variable has no meaning if you're not running Emacs native | 1607 This variable has no meaning if you're not running Emacs native |
1216 under X Windows or some other window system that allows multiple | 1608 under X Windows or some other window system that allows multiple |
1217 Emacs frames.") | 1609 Emacs frames.") |
1218 | 1610 |
1611 (defvar vm-frame-per-completion t | |
1612 "*Non-nil value causes VM to open a new frame on mouse | |
1613 initiated completing reads. A mouse initiated completing read | |
1614 occurs when you invoke a VM command using the mouse, either with a | |
1615 menu or a toolbar button. That command must then prompt you for | |
1616 information, and there must be a limited set of proper responses. | |
1617 | |
1618 If these conditions are met and vm-frame-per-completion's value | |
1619 is non-nil, VM will create a new frame containing a list of | |
1620 responses that you can select with the mouse. | |
1621 | |
1622 A nil value means the current frame will be used to display the | |
1623 list of choices. | |
1624 | |
1625 This variable has no meaning if you're not running Emacs native | |
1626 under X Windows or some other window system that allows multiple | |
1627 Emacs frames.") | |
1628 | |
1219 (defvar vm-frame-parameter-alist nil | 1629 (defvar vm-frame-parameter-alist nil |
1220 "*Non-nil value is an alist of types and lists of frame parameters. | 1630 "*Non-nil value is an alist of types and lists of frame parameters. |
1221 This list tells VM what frame parameters to associate with each | 1631 This list tells VM what frame parameters to associate with each |
1222 new frame it creates of a specific type. | 1632 new frame it creates of a specific type. |
1223 | 1633 |
1224 The alist should be of this form | 1634 The alist should be of this form |
1225 | 1635 |
1226 ((SYMBOL PARAMLIST) (SYMBOL2 PARAMLIST2) ...) | 1636 ((SYMBOL PARAMLIST) (SYMBOL2 PARAMLIST2) ...) |
1227 | 1637 |
1228 SYMBOL must be one of `composition', `edit', `folder', | 1638 SYMBOL must be one of `completion', `composition', `edit', |
1229 `primary-folder' or `summary'. It specifies the type of frame | 1639 `folder', `primary-folder' or `summary'. It specifies the type |
1230 that the following PARAMLIST applies to. | 1640 of frame that the following PARAMLIST applies to. |
1231 | 1641 |
1642 `completion' specifies parameters for frames that display list of | |
1643 choices generated by a mouse-initiated completing read. | |
1644 (See vm-frame-per-completion.) | |
1232 `composition' specifies parameters for mail composition frames. | 1645 `composition' specifies parameters for mail composition frames. |
1233 `edit' specifies parameters for message edit frames | 1646 `edit' specifies parameters for message edit frames |
1234 (e.g. created by vm-edit-message-other-frame) | 1647 (e.g. created by vm-edit-message-other-frame) |
1235 `folder' specifies parameters for frames created by `vm' and the | 1648 `folder' specifies parameters for frames created by `vm' and the |
1236 `vm-visit-' commands. | 1649 `vm-visit-' commands. |
1237 `primary-folder' specifies parameters for the frame created by running | 1650 `primary-folder' specifies parameters for the frame created by running |
1238 `vm' without any arguments. | 1651 `vm' without any arguments. |
1239 `summary' specifies parameters for frames to display a summary buffer | 1652 `summary' specifies parameters for frames that display a summary buffer |
1240 (e.g. created by vm-summarize-other-frame) | 1653 (e.g. created by vm-summarize-other-frame) |
1241 | 1654 |
1242 PARAMLIST is a list of pairs as described in the documentation for | 1655 PARAMLIST is a list of pairs as described in the documentation for |
1243 the function `make-frame'. | 1656 the function `make-frame'. |
1244 | 1657 |
1256 "*Non-nil value causes VM to provide a toolbar interface. | 1669 "*Non-nil value causes VM to provide a toolbar interface. |
1257 Value should be a list of symbols that will determine which | 1670 Value should be a list of symbols that will determine which |
1258 toolbar buttons will appears and in what order. Valid symbol | 1671 toolbar buttons will appears and in what order. Valid symbol |
1259 value within the list are: | 1672 value within the list are: |
1260 | 1673 |
1261 autofile | 1674 autofile |
1262 compose | 1675 compose |
1263 delete/undelete | 1676 delete/undelete |
1264 file | 1677 file |
1265 help | 1678 help |
1266 next | 1679 mime |
1267 previous | 1680 next |
1268 print | 1681 previous |
1269 quit | 1682 print |
1270 reply | 1683 quit |
1271 visit | 1684 reply |
1272 nil | 1685 visit |
1686 nil | |
1273 | 1687 |
1274 If nil appears in the list, it should appear exactly once. All | 1688 If nil appears in the list, it should appear exactly once. All |
1275 buttons after nil in the list will be displayed flushright in | 1689 buttons after nil in the list will be displayed flushright in |
1276 top/bottom toolbars and flush bottom in left/right toolbars. | 1690 top/bottom toolbars and flush bottom in left/right toolbars. |
1277 | 1691 |
1299 list based on the value of vm-use-toolbar. vm-use-toolbar still | 1713 list based on the value of vm-use-toolbar. vm-use-toolbar still |
1300 must be set non-nil for a toolbar to appear, however. | 1714 must be set non-nil for a toolbar to appear, however. |
1301 | 1715 |
1302 Consider this variable experimental; it may not be supported forever.") | 1716 Consider this variable experimental; it may not be supported forever.") |
1303 | 1717 |
1304 (defvar vm-use-menus '(folder motion send mark label sort | 1718 (defvar vm-use-menus |
1305 virtual undo dispose emacs nil help) | 1719 (nconc (list 'folder 'motion 'send 'mark 'label 'sort 'virtual) |
1720 (cond ((string-match ".*-.*-\\(win95\\|nt\\)" system-configuration) | |
1721 nil) | |
1722 (t (list 'undo))) | |
1723 (list 'dispose) | |
1724 (cond ((string-match ".*-.*-\\(win95\\|nt\\)" system-configuration) | |
1725 nil) | |
1726 (t (list 'emacs))) | |
1727 (list nil 'help)) | |
1306 "*Non-nil value causes VM to provide a menu interface. | 1728 "*Non-nil value causes VM to provide a menu interface. |
1307 A value that is a list causes VM to install its own menubar. | 1729 A value that is a list causes VM to install its own menubar. |
1308 A value of 1 causes VM to install a \"VM\" item in the Emacs menubar. | 1730 A value of 1 causes VM to install a \"VM\" item in the Emacs menubar. |
1309 | 1731 |
1310 If the value of vm-use-menus is a list, it should be a list of | 1732 If the value of vm-use-menus is a list, it should be a list of |
1331 | 1753 |
1332 This variable only has meaning in Emacs environments where menus | 1754 This variable only has meaning in Emacs environments where menus |
1333 are provided, which usually means Emacs has to be running under a | 1755 are provided, which usually means Emacs has to be running under a |
1334 window system.") | 1756 window system.") |
1335 | 1757 |
1758 (defvar vm-popup-menu-on-mouse-3 t | |
1759 "*Non-nil value means VM should provide context-sensitive menus on mouse-3. | |
1760 A nil value means VM should not change the binding of mouse-3.") | |
1761 | |
1336 (defvar vm-warp-mouse-to-new-frame nil | 1762 (defvar vm-warp-mouse-to-new-frame nil |
1337 "*Non-nil value causes VM to move the mouse cursor into newly created frames. | 1763 "*Non-nil value causes VM to move the mouse cursor into newly created frames. |
1338 This is useful to give the new frame the focus under some window managers | 1764 This is useful to give the new frame the focus under some window managers |
1339 that randomly place newly created frames. | 1765 that randomly place newly created frames. |
1340 | 1766 |
1341 Nil means don't move the mouse cursor.") | 1767 Nil means don't move the mouse cursor.") |
1342 | 1768 |
1343 ;; if browse-url is around (always will be in XEmacs 19.14 or later) use it; | 1769 (defvar vm-url-browser |
1344 ;; otherwise do our own support. | 1770 (cond ((fboundp 'w3-fetch-other-frame) |
1345 (if (boundp 'browse-url-browser-function) | 1771 'w3-fetch-other-frame) |
1346 (defvaralias 'vm-url-browser 'browse-url-browser-function) | 1772 ((fboundp 'w3-fetch) |
1347 (defvar vm-url-browser | 1773 'w3-fetch) |
1348 (cond ((fboundp 'w3-fetch-other-frame) | 1774 (t 'vm-mouse-send-url-to-netscape)) |
1349 'w3-fetch-other-frame) | 1775 "*Non-nil value means VM should enable URL passing. |
1350 ((fboundp 'w3-fetch) | 1776 This means that VM will search for URLs (Uniform Resource |
1351 'w3-fetch) | |
1352 (t 'vm-mouse-send-url-to-netscape)) | |
1353 "*Non-nil value means VM should enable URL passing. | |
1354 This means that VM will search for URLs (Universal Resource | |
1355 Locators) in messages and make it possible for you to pass them | 1777 Locators) in messages and make it possible for you to pass them |
1356 to a World Wide Web browser. | 1778 to a World Wide Web browser. |
1357 | 1779 |
1358 Clicking mouse-2 on the URL will send it to the browser. | 1780 Clicking mouse-2 on the URL will send it to the browser. |
1359 | 1781 |
1360 Clicking mouse-3 on the URL will pop up a menu of browsers and | 1782 By default clicking mouse-3 on the URL will pop up a menu of |
1361 you can pick which one you want to use. | 1783 browsers and you can pick which one you want to use. If |
1784 vm-popup-menu-on-mouse-3 is set to nil, you will not see the menu. | |
1362 | 1785 |
1363 Moving point to a character within the URL and pressing RETURN | 1786 Moving point to a character within the URL and pressing RETURN |
1364 will send the URL to the browser (Only in XEmacs). | 1787 will send the URL to the browser. |
1365 | 1788 |
1366 If the value of vm-url-browser is a string, it should specify | 1789 If the value of vm-url-browser is a string, it should specify |
1367 name of an external browser to run. The URL will be passed to | 1790 name of an external browser to run. The URL will be passed to |
1368 the program as its first argument. | 1791 the program as its first argument. |
1369 | 1792 |
1370 If the value of vm-url-browser is a symbol, if should specifiy a | 1793 If the value of vm-url-browser is a symbol, it should specify a |
1371 Lisp function to call. The URL will be passed to the program as | 1794 Lisp function to call. The URL will be passed to the program as |
1372 its first and only argument. Use | 1795 its first and only argument. Use |
1373 | 1796 |
1374 (setq vm-url-browser 'vm-mouse-send-url-to-netscape) | 1797 (setq vm-url-browser 'vm-mouse-send-url-to-netscape) |
1375 | 1798 |
1378 (setq vm-url-browser 'vm-mouse-send-url-to-mosaic) | 1801 (setq vm-url-browser 'vm-mouse-send-url-to-mosaic) |
1379 | 1802 |
1380 for Mosaic. The advantage of using them is that they will display | 1803 for Mosaic. The advantage of using them is that they will display |
1381 an URL using on existing Mosaic or Netscape process, if possible. | 1804 an URL using on existing Mosaic or Netscape process, if possible. |
1382 | 1805 |
1383 A nil value means VM should not enable URL passing to browsers.")) | 1806 A nil value means VM should not enable URL passing to browsers.") |
1384 | 1807 |
1385 (defvar vm-highlight-url-face 'bold-italic | 1808 (defvar vm-highlight-url-face 'bold-italic |
1386 "*Non-nil value should be a face to use display URLs found in messages. | 1809 "*Non-nil value should be a face to use display URLs found in messages. |
1387 Nil means don't highlight URLs.") | 1810 Nil means don't highlight URLs.") |
1388 | 1811 |
1463 past the undeleted messages. A value of t means motion should | 1886 past the undeleted messages. A value of t means motion should |
1464 honor the value of vm-circular-folders. A value that is not t | 1887 honor the value of vm-circular-folders. A value that is not t |
1465 and not nil means that motion should be done as if | 1888 and not nil means that motion should be done as if |
1466 vm-circular-folders is set to nil.") | 1889 vm-circular-folders is set to nil.") |
1467 | 1890 |
1891 (defvar vm-move-after-killing nil | |
1892 "*Non-nil value causes VM's `k' command to automatically invoke | |
1893 vm-next-message or vm-previous-message after killing messages, to try | |
1894 to move past the deleted messages. A value of t means motion | |
1895 should honor the value of vm-circular-folders. A value that is | |
1896 not t and not nil means that motion should be done as if | |
1897 vm-circular-folders is set to nil.") | |
1898 | |
1468 (defvar vm-delete-after-saving nil | 1899 (defvar vm-delete-after-saving nil |
1469 "*Non-nil value causes VM automatically to mark messages for deletion | 1900 "*Non-nil value causes VM automatically to mark messages for deletion |
1470 after successfully saving them to a folder.") | 1901 after successfully saving them to a folder.") |
1471 | 1902 |
1472 (defvar vm-delete-after-archiving nil | 1903 (defvar vm-delete-after-archiving nil |
1514 | 1945 |
1515 (defvar vm-print-command lpr-command | 1946 (defvar vm-print-command lpr-command |
1516 "*Command VM uses to print messages.") | 1947 "*Command VM uses to print messages.") |
1517 | 1948 |
1518 (defvar vm-print-command-switches lpr-switches | 1949 (defvar vm-print-command-switches lpr-switches |
1519 "*Command line flags passed to the command named by vm-print-command. | 1950 "*List of command line flags passed to the command named by vm-print-command. |
1520 VM uses vm-print-command to print messages.") | 1951 VM uses vm-print-command to print messages.") |
1521 | 1952 |
1522 (defvar vm-berkeley-mail-compatibility | 1953 (defvar vm-berkeley-mail-compatibility |
1523 (memq system-type '(berkeley-unix netbsd)) | 1954 (memq system-type '(berkeley-unix netbsd)) |
1524 "*Non-nil means to read and write BSD Mail(1) style Status: headers. | 1955 "*Non-nil means to read and write BSD Mail(1) style Status: headers. |
1526 Mail.") | 1957 Mail.") |
1527 | 1958 |
1528 (defvar vm-strip-reply-headers nil | 1959 (defvar vm-strip-reply-headers nil |
1529 "*Non-nil value causes VM to strip away all comments and extraneous text | 1960 "*Non-nil value causes VM to strip away all comments and extraneous text |
1530 from the headers generated in reply messages. If you use the \"fakemail\" | 1961 from the headers generated in reply messages. If you use the \"fakemail\" |
1531 program as distributed with Emacs, you probably want to set this variable to | 1962 program as distributed with Emacs, you probably want to set this variable |
1532 to t, because as of Emacs v18.52 \"fakemail\" could not handle unstripped | 1963 to t, because as of Emacs v18.52 \"fakemail\" could not handle unstripped |
1533 headers.") | 1964 headers.") |
1534 | |
1535 (defvar vm-inhibit-startup-message nil | |
1536 "*Non-nil causes VM not to display its copyright notice, disclaimers | |
1537 etc. when started in the usual way.") | |
1538 | 1965 |
1539 (defvar vm-select-new-message-hook nil | 1966 (defvar vm-select-new-message-hook nil |
1540 "*List of hook functions called every time a message with the 'new' | 1967 "*List of hook functions called every time a message with the 'new' |
1541 attribute is made to be the current message. When the hooks are run the | 1968 attribute is made to be the current message. When the hooks are run the |
1542 current buffer will be the folder containing the message and the | 1969 current buffer will be the folder containing the message and the |
1699 "*List of hook functions that are run whenever VM iconifies a frame.") | 2126 "*List of hook functions that are run whenever VM iconifies a frame.") |
1700 | 2127 |
1701 (defvar vm-menu-setup-hook nil | 2128 (defvar vm-menu-setup-hook nil |
1702 "*List of hook functions that are run just after all menus are initialized.") | 2129 "*List of hook functions that are run just after all menus are initialized.") |
1703 | 2130 |
2131 (defvar vm-mime-display-function nil | |
2132 "*If non-nil, this should name a function to be called inside | |
2133 vm-decode-mime-message to do the MIME display the current | |
2134 message. The function is called with no arguments, and at the | |
2135 time of the call the current buffer will be the `presentation' | |
2136 buffer for the folder, which is a temporary buffer that VM uses | |
2137 for the display of MIME messages. A copy of the current message | |
2138 will be in the presentation buffer at that time. The normal work | |
2139 that vm-decode-mime-message would do is not done, because this | |
2140 function is expected to subsume all of it.") | |
2141 | |
1704 (defvar mail-yank-hooks nil | 2142 (defvar mail-yank-hooks nil |
1705 "Hooks called after a message is yanked into a mail composition. | 2143 "Hooks called after a message is yanked into a mail composition. |
1706 | 2144 |
1707 (This hook is deprecated, you should use mail-citation-hook instead.) | 2145 (This hook is deprecated, you should use mail-citation-hook instead.) |
1708 | 2146 |
1753 vm-mouse-send-url-to-netscape uses this.") | 2191 vm-mouse-send-url-to-netscape uses this.") |
1754 | 2192 |
1755 (defvar vm-mosaic-program "Mosaic" | 2193 (defvar vm-mosaic-program "Mosaic" |
1756 "*Name of program to use to run Mosaic. | 2194 "*Name of program to use to run Mosaic. |
1757 vm-mouse-send-url-to-mosaic uses this.") | 2195 vm-mouse-send-url-to-mosaic uses this.") |
2196 | |
2197 (defvar vm-temp-file-directory "/tmp" | |
2198 "*Name of a directory where VM can put temporary files. | |
2199 This name must not end with a slash.") | |
1758 | 2200 |
1759 (defvar vm-tale-is-an-idiot nil | 2201 (defvar vm-tale-is-an-idiot nil |
1760 "*Non-nil value causes vm-mail-send to check multi-line recipient | 2202 "*Non-nil value causes vm-mail-send to check multi-line recipient |
1761 headers of outbound mail for lines that don't end with a | 2203 headers of outbound mail for lines that don't end with a |
1762 comma. If such a line is found, an error is signaled and the | 2204 comma. If such a line is found, an error is signaled and the |
1783 (define-key map "^" 'vm-goto-parent-message) | 2225 (define-key map "^" 'vm-goto-parent-message) |
1784 (define-key map "t" 'vm-expose-hidden-headers) | 2226 (define-key map "t" 'vm-expose-hidden-headers) |
1785 (define-key map " " 'vm-scroll-forward) | 2227 (define-key map " " 'vm-scroll-forward) |
1786 (define-key map "b" 'vm-scroll-backward) | 2228 (define-key map "b" 'vm-scroll-backward) |
1787 (define-key map "\C-?" 'vm-scroll-backward) | 2229 (define-key map "\C-?" 'vm-scroll-backward) |
2230 (define-key map "D" 'vm-decode-mime-message) | |
1788 (define-key map "d" 'vm-delete-message) | 2231 (define-key map "d" 'vm-delete-message) |
1789 (define-key map "\C-d" 'vm-delete-message-backward) | 2232 (define-key map "\C-d" 'vm-delete-message-backward) |
1790 (define-key map "u" 'vm-undelete-message) | 2233 (define-key map "u" 'vm-undelete-message) |
1791 (define-key map "U" 'vm-unread-message) | 2234 (define-key map "U" 'vm-unread-message) |
1792 (define-key map "e" 'vm-edit-message) | 2235 (define-key map "e" 'vm-edit-message) |
1847 (define-key map "Mt" 'vm-unmark-thread-subtree) | 2290 (define-key map "Mt" 'vm-unmark-thread-subtree) |
1848 (define-key map "MS" 'vm-mark-messages-same-subject) | 2291 (define-key map "MS" 'vm-mark-messages-same-subject) |
1849 (define-key map "Ms" 'vm-unmark-messages-same-subject) | 2292 (define-key map "Ms" 'vm-unmark-messages-same-subject) |
1850 (define-key map "MA" 'vm-mark-messages-same-author) | 2293 (define-key map "MA" 'vm-mark-messages-same-author) |
1851 (define-key map "Ma" 'vm-unmark-messages-same-author) | 2294 (define-key map "Ma" 'vm-unmark-messages-same-author) |
2295 (define-key map "MR" 'vm-mark-summary-region) | |
2296 (define-key map "Mr" 'vm-unmark-summary-region) | |
1852 (define-key map "M?" 'vm-mark-help) | 2297 (define-key map "M?" 'vm-mark-help) |
1853 (define-key map "W" (make-sparse-keymap)) | 2298 (define-key map "W" (make-sparse-keymap)) |
1854 (define-key map "WW" 'vm-apply-window-configuration) | 2299 (define-key map "WW" 'vm-apply-window-configuration) |
1855 (define-key map "WS" 'vm-save-window-configuration) | 2300 (define-key map "WS" 'vm-save-window-configuration) |
1856 (define-key map "WD" 'vm-delete-window-configuration) | 2301 (define-key map "WD" 'vm-delete-window-configuration) |
1882 "Keymap for VM Summary mode") | 2327 "Keymap for VM Summary mode") |
1883 | 2328 |
1884 (defvar vm-mail-mode-map | 2329 (defvar vm-mail-mode-map |
1885 (let ((map (make-sparse-keymap))) | 2330 (let ((map (make-sparse-keymap))) |
1886 (define-key map "\C-c\C-v" vm-mode-map) | 2331 (define-key map "\C-c\C-v" vm-mode-map) |
2332 (define-key map "\C-c\C-p" 'vm-mime-preview-composition) | |
2333 (define-key map "\C-c\C-e" 'vm-mime-encode-composition) | |
2334 (define-key map "\C-c\C-a" 'vm-mime-attach-file) | |
2335 (define-key map "\C-c\C-m" 'vm-mime-attach-mime-file) | |
1887 (define-key map "\C-c\C-y" 'vm-yank-message) | 2336 (define-key map "\C-c\C-y" 'vm-yank-message) |
1888 (define-key map "\C-c\C-s" 'vm-mail-send) | 2337 (define-key map "\C-c\C-s" 'vm-mail-send) |
1889 (define-key map "\C-c\C-c" 'vm-mail-send-and-exit) | 2338 (define-key map "\C-c\C-c" 'vm-mail-send-and-exit) |
1890 (define-key map "\C-c\C-w" 'mail-signature) | 2339 (define-key map "\C-c\C-w" 'mail-signature) |
1891 (define-key map "\C-c\C-t" 'mail-text) | 2340 (define-key map "\C-c\C-t" 'mail-text) |
1929 (make-variable-buffer-local 'vm-message-order-header-present) | 2378 (make-variable-buffer-local 'vm-message-order-header-present) |
1930 (defvar vm-last-message-pointer nil) | 2379 (defvar vm-last-message-pointer nil) |
1931 (make-variable-buffer-local 'vm-last-message-pointer) | 2380 (make-variable-buffer-local 'vm-last-message-pointer) |
1932 (defvar vm-mail-buffer nil) | 2381 (defvar vm-mail-buffer nil) |
1933 (make-variable-buffer-local 'vm-mail-buffer) | 2382 (make-variable-buffer-local 'vm-mail-buffer) |
2383 (defvar vm-presentation-buffer nil) | |
2384 (make-variable-buffer-local 'vm-presentation-buffer) | |
2385 (defvar vm-presentation-buffer-handle nil) | |
2386 (make-variable-buffer-local 'vm-presentation-buffer-handle) | |
2387 (defvar vm-mime-decoded nil) | |
2388 (make-variable-buffer-local 'vm-mime-decoded) | |
1934 (defvar vm-summary-buffer nil) | 2389 (defvar vm-summary-buffer nil) |
1935 (make-variable-buffer-local 'vm-summary-buffer) | 2390 (make-variable-buffer-local 'vm-summary-buffer) |
1936 (defvar vm-summary-pointer nil) | 2391 (defvar vm-summary-pointer nil) |
1937 (make-variable-buffer-local 'vm-summary-pointer) | 2392 (make-variable-buffer-local 'vm-summary-pointer) |
1938 (defvar vm-system-state nil) | 2393 (defvar vm-system-state nil) |
1956 (make-variable-buffer-local 'vm-totals) | 2411 (make-variable-buffer-local 'vm-totals) |
1957 (defvar vm-modification-counter 0) | 2412 (defvar vm-modification-counter 0) |
1958 (make-variable-buffer-local 'vm-modification-counter) | 2413 (make-variable-buffer-local 'vm-modification-counter) |
1959 (defvar vm-flushed-modification-counter nil) | 2414 (defvar vm-flushed-modification-counter nil) |
1960 (make-variable-buffer-local 'vm-flushed-modification-counter) | 2415 (make-variable-buffer-local 'vm-flushed-modification-counter) |
2416 (defvar vm-tempfile-counter 0) | |
1961 (defvar vm-messages-needing-summary-update nil) | 2417 (defvar vm-messages-needing-summary-update nil) |
1962 (defvar vm-buffers-needing-display-update nil) | 2418 (defvar vm-buffers-needing-display-update nil) |
1963 (defvar vm-numbering-redo-start-point nil) | 2419 (defvar vm-numbering-redo-start-point nil) |
1964 (make-variable-buffer-local 'vm-numbering-redo-start-point) | 2420 (make-variable-buffer-local 'vm-numbering-redo-start-point) |
1965 (defvar vm-numbering-redo-end-point nil) | 2421 (defvar vm-numbering-redo-end-point nil) |
2008 (defconst vm-berkeley-mail-status-header-regexp "^Status: \\(..?\\)\n") | 2464 (defconst vm-berkeley-mail-status-header-regexp "^Status: \\(..?\\)\n") |
2009 (defvar vm-matched-header-vector (make-vector 6 nil)) | 2465 (defvar vm-matched-header-vector (make-vector 6 nil)) |
2010 (defconst vm-supported-folder-types | 2466 (defconst vm-supported-folder-types |
2011 '("From_" "From_-with-Content-Length" "mmdf" "babyl")) | 2467 '("From_" "From_-with-Content-Length" "mmdf" "babyl")) |
2012 (defconst vm-supported-window-configurations | 2468 (defconst vm-supported-window-configurations |
2013 '(("default") | 2469 '( |
2470 ("default") | |
2014 ("startup") | 2471 ("startup") |
2015 ("quitting") | 2472 ("quitting") |
2016 ("composing-message") | 2473 ("composing-message") |
2017 ("editing-message") | 2474 ("editing-message") |
2018 ("marking-message") | 2475 ("marking-message") |
2019 ("reading-message") | 2476 ("reading-message") |
2020 ("searching-message") | 2477 ("searching-message") |
2478 ("vm") | |
2479 ("vm-add-message-labels") | |
2480 ("vm-apply-virtual-folder") | |
2481 ("vm-auto-archive-messages") | |
2482 ("vm-beginning-of-message") | |
2483 ("vm-burst-digest") | |
2484 ("vm-burst-mime-digest") | |
2485 ("vm-burst-rfc1153-digest") | |
2486 ("vm-burst-rfc934-digest") | |
2487 ("vm-change-folder-type") | |
2488 ("vm-clear-all-marks") | |
2489 ("vm-continue-composing-message") | |
2490 ("vm-create-virtual-folder") | |
2491 ("vm-decode-mime-message") | |
2021 ("vm-delete-message") | 2492 ("vm-delete-message") |
2022 ("vm-delete-message-backward") | 2493 ("vm-delete-message-backward") |
2494 ("vm-delete-message-labels") | |
2495 ("vm-discard-cached-data") | |
2496 ("vm-edit-message") | |
2497 ("vm-edit-message-abort") | |
2498 ("vm-edit-message-end") | |
2499 ("vm-edit-message-other-frame") | |
2500 ("vm-end-of-message") | |
2501 ("vm-expose-hidden-headers") | |
2502 ("vm-expunge-folder") | |
2503 ("vm-followup") | |
2504 ("vm-followup-include-text") | |
2505 ("vm-followup-include-text-other-frame") | |
2506 ("vm-followup-other-frame") | |
2507 ("vm-forward-message") | |
2508 ("vm-forward-message-all-headers") | |
2509 ("vm-forward-message-all-headers-other-frame") | |
2510 ("vm-forward-message-other-frame") | |
2511 ("vm-get-new-mail") | |
2512 ("vm-goto-message") | |
2513 ("vm-goto-message-last-seen") | |
2514 ("vm-goto-parent-message") | |
2515 ("vm-help") | |
2516 ("vm-isearch-forward") | |
2517 ("vm-kill-subject") | |
2518 ("vm-load-init-file") | |
2519 ("vm-mail") | |
2520 ("vm-mail-other-frame") | |
2521 ("vm-mail-other-window") | |
2522 ("vm-mail-send") | |
2523 ("vm-mail-send-and-exit") | |
2524 ("vm-mark-all-messages") | |
2525 ("vm-mark-help") | |
2526 ("vm-mark-matching-messages") | |
2527 ("vm-mark-message") | |
2528 ("vm-mark-messages-same-author") | |
2529 ("vm-mark-messages-same-subject") | |
2530 ("vm-mark-summary-region") | |
2531 ("vm-mark-thread-subtree") | |
2532 ("vm-mode") | |
2533 ("vm-move-message-backward") | |
2534 ("vm-move-message-backward-physically") | |
2535 ("vm-move-message-forward") | |
2536 ("vm-move-message-forward-physically") | |
2537 ("vm-next-command-uses-marks") | |
2538 ("vm-next-message") | |
2539 ("vm-next-message-no-skip") | |
2540 ("vm-next-message-no-skip") | |
2541 ("vm-next-message-same-subject") | |
2542 ("vm-next-unread-message") | |
2543 ("vm-other-frame") | |
2544 ("vm-other-window") | |
2545 ("vm-pipe-message-to-command") | |
2546 ("vm-previous-message") | |
2547 ("vm-previous-message-no-skip") | |
2548 ("vm-previous-message-no-skip") | |
2549 ("vm-previous-message-same-subject") | |
2550 ("vm-previous-unread-message") | |
2551 ("vm-quit") | |
2552 ("vm-quit-just-bury") | |
2553 ("vm-quit-just-iconify") | |
2554 ("vm-quit-no-change") | |
2555 ("vm-reply") | |
2556 ("vm-reply-include-text") | |
2557 ("vm-reply-include-text-other-frame") | |
2558 ("vm-reply-other-frame") | |
2559 ("vm-resend-bounced-message") | |
2560 ("vm-resend-bounced-message-other-frame") | |
2561 ("vm-resend-message") | |
2562 ("vm-resend-message-other-frame") | |
2563 ("vm-save-and-expunge-folder") | |
2564 ("vm-save-buffer") | |
2565 ("vm-save-folder") | |
2566 ("vm-save-message") | |
2567 ("vm-save-message-sans-headers") | |
2568 ("vm-scroll-backward") | |
2569 ("vm-scroll-forward") | |
2570 ("vm-send-digest") | |
2571 ("vm-send-digest-other-frame") | |
2572 ("vm-send-mime-digest") | |
2573 ("vm-send-mime-digest-other-frame") | |
2574 ("vm-send-rfc1153-digest") | |
2575 ("vm-send-rfc1153-digest-other-frame") | |
2576 ("vm-send-rfc934-digest") | |
2577 ("vm-send-rfc934-digest-other-frame") | |
2578 ("vm-set-message-attributes") | |
2579 ("vm-show-copying-restrictions") | |
2580 ("vm-show-no-warranty") | |
2581 ("vm-sort-messages") | |
2582 ("vm-submit-bug-report") | |
2583 ("vm-summarize") | |
2584 ("vm-summarize-other-frame") | |
2585 ("vm-toggle-read-only") | |
2586 ("vm-toggle-threads-display") | |
2023 ("vm-undelete-message") | 2587 ("vm-undelete-message") |
2024 ("vm-kill-subject") | 2588 ("vm-undo") |
2025 ("vm-expunge-folder") | 2589 ("vm-unmark-matching-messages") |
2026 ("vm-burst-digest") | 2590 ("vm-unmark-message") |
2027 ("vm-burst-rfc934-digest") | 2591 ("vm-unmark-messages-same-author") |
2028 ("vm-burst-rfc1153-digest") | 2592 ("vm-unmark-messages-same-subject") |
2029 ("vm-edit-message") | 2593 ("vm-unmark-summary-region") |
2030 ("vm-discard-cached-data") | 2594 ("vm-unmark-thread-subtree") |
2031 ("vm-edit-message-end") | |
2032 ("vm-edit-message-abort") | |
2033 ("vm-unread-message") | 2595 ("vm-unread-message") |
2034 ("vm-quit-no-change") | 2596 ("vm-virtual-help") |
2035 ("vm-quit") | |
2036 ("vm-save-buffer") | |
2037 ("vm-write-file") | |
2038 ("vm-save-folder") | |
2039 ("vm-save-and-expunge-folder") | |
2040 ("vm-visit-folder") | 2597 ("vm-visit-folder") |
2041 ("vm-visit-folder-other-frame") | 2598 ("vm-visit-folder-other-frame") |
2042 ("vm-visit-folder-other-window") | 2599 ("vm-visit-folder-other-window") |
2043 ("vm-help") | |
2044 ("vm-get-new-mail") | |
2045 ("vm-load-init-file") | |
2046 ("vm") | |
2047 ("vm-other-frame") | |
2048 ("vm-other-window") | |
2049 ("vm-toggle-read-only") | |
2050 ("vm-mode") | |
2051 ("vm-show-copying-restrictions") | |
2052 ("vm-show-no-warranty") | |
2053 ("vm-clear-all-marks") | |
2054 ("vm-mark-all-messages") | |
2055 ("vm-mark-message") | |
2056 ("vm-unmark-message") | |
2057 ("vm-mark-messages-same-subject") | |
2058 ("vm-unmark-messages-same-subject") | |
2059 ("vm-mark-messages-same-author") | |
2060 ("vm-unmark-messages-same-author") | |
2061 ("vm-mark-matching-messages") | |
2062 ("vm-unmark-matching-messages") | |
2063 ("vm-mark-thread-subtree") | |
2064 ("vm-unmark-thread-subtree") | |
2065 ("vm-next-command-uses-marks") | |
2066 ("vm-mark-help") | |
2067 ("vm-submit-bug-report") | |
2068 ("vm-goto-message") | |
2069 ("vm-goto-message-last-seen") | |
2070 ("vm-next-message") | |
2071 ("vm-previous-message") | |
2072 ("vm-next-message-no-skip") | |
2073 ("vm-previous-message-no-skip") | |
2074 ("vm-next-unread-message") | |
2075 ("vm-previous-unread-message") | |
2076 ("vm-scroll-forward") | |
2077 ("vm-scroll-backward") | |
2078 ("vm-expose-hidden-headers") | |
2079 ("vm-beginning-of-message") | |
2080 ("vm-end-of-message") | |
2081 ("vm-yank-message-other-folder") | |
2082 ("vm-yank-message") | |
2083 ("vm-mail-send-and-exit") | |
2084 ("vm-mail-send") | |
2085 ("vm-reply") | |
2086 ("vm-reply-include-text") | |
2087 ("vm-followup") | |
2088 ("vm-followup-include-text") | |
2089 ("vm-forward-message") | |
2090 ("vm-forward-message-all-headers") | |
2091 ("vm-mail") | |
2092 ("vm-resend-bounced-message") | |
2093 ("vm-resend-message") | |
2094 ("vm-send-digest") | |
2095 ("vm-send-rfc934-digest") | |
2096 ("vm-send-rfc1153-digest") | |
2097 ("vm-reply-other-frame") | |
2098 ("vm-reply-include-text-other-frame") | |
2099 ("vm-followup-other-frame") | |
2100 ("vm-followup-include-text-other-frame") | |
2101 ("vm-forward-message-other-frame") | |
2102 ("vm-forward-message-all-headers-other-frame") | |
2103 ("vm-mail-other-frame") | |
2104 ("vm-mail-other-window") | |
2105 ("vm-resend-bounced-message-other-frame") | |
2106 ("vm-resend-message-other-frame") | |
2107 ("vm-send-digest-other-frame") | |
2108 ("vm-send-rfc934-digest-other-frame") | |
2109 ("vm-send-rfc1153-digest-other-frame") | |
2110 ("vm-continue-composing-message") | |
2111 ("vm-auto-archive-messages") | |
2112 ("vm-save-message") | |
2113 ("vm-save-message-sans-headers") | |
2114 ("vm-pipe-message-to-command") | |
2115 ("vm-isearch-forward") | |
2116 ("vm-move-message-forward") | |
2117 ("vm-move-message-backward") | |
2118 ("vm-move-message-forward-physically") | |
2119 ("vm-move-message-backward-physically") | |
2120 ("vm-sort-messages") | |
2121 ("vm-toggle-threads-display") | |
2122 ("vm-summarize") | |
2123 ("vm-summarize-other-frame") | |
2124 ("vm-undo") | |
2125 ("vm-visit-virtual-folder") | 2600 ("vm-visit-virtual-folder") |
2126 ("vm-visit-virtual-folder-other-frame") | 2601 ("vm-visit-virtual-folder-other-frame") |
2127 ("vm-visit-virtual-folder-other-window"))) | 2602 ("vm-visit-virtual-folder-other-window") |
2603 ("vm-write-file") | |
2604 ("vm-yank-message") | |
2605 ("vm-yank-message-other-folder") | |
2606 )) | |
2128 (defconst vm-supported-sort-keys | 2607 (defconst vm-supported-sort-keys |
2129 '("date" "reversed-date" | 2608 '("date" "reversed-date" |
2130 "author" "reversed-author" | 2609 "author" "reversed-author" |
2131 "subject" "reversed-subject" | 2610 "subject" "reversed-subject" |
2132 "recipients" "reversed-recipients" | 2611 "recipients" "reversed-recipients" |
2180 "unseen" | 2659 "unseen" |
2181 "answered" | 2660 "answered" |
2182 "unanswered")) | 2661 "unanswered")) |
2183 | 2662 |
2184 (defvar vm-key-functions nil) | 2663 (defvar vm-key-functions nil) |
2185 (defconst vm-digest-type-alist '(("rfc934") ("rfc1153"))) | 2664 (defconst vm-digest-type-alist '(("rfc934") ("rfc1153") ("mime"))) |
2186 (defvar vm-completion-auto-correct t | 2665 (defvar vm-completion-auto-correct t |
2187 "Non-nil means that minibuffer-complete-file should aggressively erase | 2666 "Non-nil means that minibuffer-complete-file should aggressively erase |
2188 the trailing part of a word that caused completion to fail, and retry | 2667 the trailing part of a word that caused completion to fail, and retry |
2189 the completion with the resulting word.") | 2668 the completion with the resulting word.") |
2190 (defvar vm-minibuffer-completion-table nil | 2669 (defvar vm-minibuffer-completion-table nil |
2193 (defvar vm-completion-auto-space t | 2672 (defvar vm-completion-auto-space t |
2194 "Non-nil value means that vm-minibuffer-complete-word should automatically | 2673 "Non-nil value means that vm-minibuffer-complete-word should automatically |
2195 append a space to words that complete unambiguously.") | 2674 append a space to words that complete unambiguously.") |
2196 (defconst vm-attributes-vector-length 9) | 2675 (defconst vm-attributes-vector-length 9) |
2197 (defconst vm-cache-vector-length 20) | 2676 (defconst vm-cache-vector-length 20) |
2198 (defconst vm-softdata-vector-length 16) | 2677 (defconst vm-softdata-vector-length 18) |
2199 (defconst vm-location-data-vector-length 6) | 2678 (defconst vm-location-data-vector-length 6) |
2200 (defconst vm-mirror-data-vector-length 5) | 2679 (defconst vm-mirror-data-vector-length 5) |
2201 (defconst vm-startup-message-lines | 2680 (defconst vm-startup-message-lines |
2202 '("Please use \\[vm-submit-bug-report] to report bugs." | 2681 '("Please use \\[vm-submit-bug-report] to report bugs." |
2682 "For discussion about the VM mail reader, see the gnu.emacs.vm.info newsgroup" | |
2203 "You may give out copies of VM. Type \\[vm-show-copying-restrictions] to see the conditions" | 2683 "You may give out copies of VM. Type \\[vm-show-copying-restrictions] to see the conditions" |
2204 "VM comes with ABSOLUTELY NO WARRANTY; type \\[vm-show-no-warranty] for full details" | 2684 "VM comes with ABSOLUTELY NO WARRANTY; type \\[vm-show-no-warranty] for full details" |
2205 "In Stereo (where available)")) | 2685 "In Stereo (where available)")) |
2206 (defconst vm-startup-message-displayed nil) | 2686 (defconst vm-startup-message-displayed nil) |
2207 ;; for the mode line | 2687 ;; for the mode line |
2208 (defvar vm-mode-line-format | 2688 (defvar vm-mode-line-format |
2209 '("" " %&%& " | 2689 '("" " %&%& " |
2210 ("VM: " | 2690 ("VM " vm-version ": " |
2211 (vm-folder-read-only "read-only ") | 2691 (vm-folder-read-only "read-only ") |
2212 (vm-virtual-folder-definition (vm-virtual-mirror "mirrored ")) | 2692 (vm-virtual-folder-definition (vm-virtual-mirror "mirrored ")) |
2213 "%b" | 2693 "%b" |
2214 (vm-mail-buffer (vm-ml-sort-keys ("" " by " vm-ml-sort-keys))) | 2694 (vm-mail-buffer (vm-ml-sort-keys ("" " by " vm-ml-sort-keys))) |
2215 (vm-message-list | 2695 (vm-message-list |
2275 (defvar vm-pop-read-point nil) | 2755 (defvar vm-pop-read-point nil) |
2276 (defvar vm-reply-list nil) | 2756 (defvar vm-reply-list nil) |
2277 (defvar vm-forward-list nil) | 2757 (defvar vm-forward-list nil) |
2278 (defvar vm-redistribute-list nil) | 2758 (defvar vm-redistribute-list nil) |
2279 (defvar current-itimer nil) | 2759 (defvar current-itimer nil) |
2280 (defvar mode-popup-menu nil) | |
2281 (defvar current-menubar nil) | 2760 (defvar current-menubar nil) |
2282 (defvar scrollbar-height nil) | 2761 (defvar scrollbar-height nil) |
2283 (defvar top-toolbar nil) | 2762 (defvar top-toolbar nil) |
2284 (defvar top-toolbar-height nil) | 2763 (defvar top-toolbar-height nil) |
2285 (defvar bottom-toolbar nil) | 2764 (defvar bottom-toolbar nil) |
2290 (defvar left-toolbar-width nil) | 2769 (defvar left-toolbar-width nil) |
2291 ;; this defvar matches the XEmacs one so it doesn't matter if VM | 2770 ;; this defvar matches the XEmacs one so it doesn't matter if VM |
2292 ;; is loaded before highlight-headers.el | 2771 ;; is loaded before highlight-headers.el |
2293 (defvar highlight-headers-regexp "Subject[ \t]*:") | 2772 (defvar highlight-headers-regexp "Subject[ \t]*:") |
2294 (defvar vm-url-regexp | 2773 (defvar vm-url-regexp |
2295 "\\(file\\|ftp\\|gopher\\|http\\|https\\|news\\|wais\\|www\\)://[^ \t\n\f\r\"<>|()]*[^ \t\n\f\r\"<>|.!?(){}]" | 2774 "<URL:\\([^>]+\\)>\\|\\(\\(file\\|ftp\\|gopher\\|http\\|https\\|news\\|wais\\|www\\)://[^ \t\n\f\r\"<>|()]*[^ \t\n\f\r\"<>|.!?(){}]\\)\\|\\(mailto:[^ \t\n\f\r\"<>|()]*[^ \t\n\f\r\"<>|.!?(){}]\\)" |
2296 "Regular expression that matches an absolute URL.") | 2775 "Regular expression that matches an absolute URL. |
2776 The URL itself must be matched by a \\(..\\) grouping. | |
2777 VM will extract the URL by copying the lowest number grouping | |
2778 that has a match.") | |
2297 (defconst vm-month-alist | 2779 (defconst vm-month-alist |
2298 '(("jan" "January" "1") | 2780 '(("jan" "January" "1") |
2299 ("feb" "February" "2") | 2781 ("feb" "February" "2") |
2300 ("mar" "March" "3") | 2782 ("mar" "March" "3") |
2301 ("apr" "April" "4") | 2783 ("apr" "April" "4") |
2320 (make-variable-buffer-local 'vm-summary-overlay) | 2802 (make-variable-buffer-local 'vm-summary-overlay) |
2321 (defvar vm-thread-loop-obarray (make-vector 29 0)) | 2803 (defvar vm-thread-loop-obarray (make-vector 29 0)) |
2322 (defvar vm-delete-duplicates-obarray (make-vector 29 0)) | 2804 (defvar vm-delete-duplicates-obarray (make-vector 29 0)) |
2323 (defvar vm-mail-mode-map-parented nil) | 2805 (defvar vm-mail-mode-map-parented nil) |
2324 (defvar vm-xface-cache (make-vector 29 0)) | 2806 (defvar vm-xface-cache (make-vector 29 0)) |
2807 (defconst vm-mime-base64-alphabet | |
2808 (concat | |
2809 [ | |
2810 65 66 67 68 69 70 71 72 73 74 75 76 77 | |
2811 78 79 80 81 82 83 84 85 86 87 88 89 90 | |
2812 97 98 99 100 101 102 103 104 105 106 107 108 109 | |
2813 110 111 112 113 114 115 116 117 118 119 120 121 122 | |
2814 48 49 50 51 52 53 54 55 56 57 43 47 | |
2815 ] | |
2816 )) | |
2817 (defconst vm-mime-base64-alphabet-decoding-vector | |
2818 [ | |
2819 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
2820 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
2821 0 0 0 0 0 0 0 0 0 0 0 62 0 0 0 63 | |
2822 52 53 54 55 56 57 58 59 60 61 0 0 0 0 0 0 | |
2823 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
2824 15 16 17 18 19 20 21 22 23 24 25 0 0 0 0 0 | |
2825 0 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | |
2826 41 42 43 44 45 46 47 48 49 50 51 0 0 0 0 0 | |
2827 ]) | |
2828 | |
2829 ;;(defconst vm-mime-base64-alphabet-decoding-alist | |
2830 ;; '( | |
2831 ;; ( 65 . 00) ( 66 . 01) ( 67 . 02) ( 68 . 03) ( 69 . 04) ( 70 . 05) | |
2832 ;; ( 71 . 06) ( 72 . 07) ( 73 . 08) ( 74 . 09) ( 75 . 10) ( 76 . 11) | |
2833 ;; ( 77 . 12) ( 78 . 13) ( 79 . 14) ( 80 . 15) ( 81 . 16) ( 82 . 17) | |
2834 ;; ( 83 . 18) ( 84 . 19) ( 85 . 20) ( 86 . 21) ( 87 . 22) ( 88 . 23) | |
2835 ;; ( 89 . 24) ( 90 . 25) ( 97 . 26) ( 98 . 27) ( 99 . 28) (100 . 29) | |
2836 ;; (101 . 30) (102 . 31) (103 . 32) (104 . 33) (105 . 34) (106 . 35) | |
2837 ;; (107 . 36) (108 . 37) (109 . 38) (110 . 39) (111 . 40) (112 . 41) | |
2838 ;; (113 . 42) (114 . 43) (115 . 44) (116 . 45) (117 . 46) (118 . 47) | |
2839 ;; (119 . 48) (120 . 49) (121 . 50) (122 . 51) ( 48 . 52) ( 49 . 53) | |
2840 ;; ( 50 . 54) ( 51 . 55) ( 52 . 56) ( 53 . 57) ( 54 . 58) ( 55 . 59) | |
2841 ;; ( 56 . 60) ( 57 . 61) ( 43 . 62) ( 47 . 63) | |
2842 ;; )) | |
2843 ;; | |
2844 ;;(defvar vm-mime-base64-alphabet-decoding-vector | |
2845 ;; (let ((v (make-vector 123 nil)) | |
2846 ;; (p vm-mime-base64-alphabet-decoding-alist)) | |
2847 ;; (while p | |
2848 ;; (aset v (car (car p)) (cdr (car p))) | |
2849 ;; (setq p (cdr p))) | |
2850 ;; v )) | |
2851 | |
2852 (defvar vm-message-garbage-alist nil) | |
2853 (make-variable-buffer-local 'vm-message-garbage-alist) | |
2854 (defvar vm-folder-garbage-alist nil) | |
2855 (make-variable-buffer-local 'vm-folder-garbage-alist) | |
2856 (defconst vm-mime-header-list '("MIME-Version:" "Content-")) | |
2857 (defconst vm-mime-xemacs-mule-charset-alist | |
2858 '( | |
2859 ("us-ascii" no-conversion) | |
2860 ("iso-8859-1" no-conversion) | |
2861 ("iso-8859-2" iso-8859-2) | |
2862 ("iso-8859-3" iso-8859-3) | |
2863 ("iso-8859-4" iso-8859-4) | |
2864 ("iso-8859-5" iso-8859-5) | |
2865 ("iso-8859-6" iso-8859-6) | |
2866 ("iso-8859-7" iso-8859-7) | |
2867 ("iso-8859-8" iso-8859-8) | |
2868 ("iso-8859-9" iso-8859-9) | |
2869 ("iso-2022-jp" iso-2022-jp) | |
2870 ;; probably not correct, but probably better than nothing. | |
2871 ("iso-2022-jp-2" iso-2022-jp) | |
2872 ("iso-2022-int-1" iso-2022-int-1) | |
2873 ("iso-2022-kr" iso-2022-kr) | |
2874 ("euc-kr" iso-2022-kr) | |
2875 )) | |
2876 (defconst vm-mime-charset-completion-alist | |
2877 '( | |
2878 ("us-ascii") | |
2879 ("iso-8859-1") | |
2880 ("iso-8859-2") | |
2881 ("iso-8859-3") | |
2882 ("iso-8859-4") | |
2883 ("iso-8859-5") | |
2884 ("iso-8859-6") | |
2885 ("iso-8859-7") | |
2886 ("iso-8859-8") | |
2887 ("iso-8859-9") | |
2888 ("iso-2022-jp") | |
2889 ("iso-2022-jp-2") | |
2890 ("iso-2022-int-1") | |
2891 ("iso-2022-kr") | |
2892 )) | |
2893 (defconst vm-mime-type-completion-alist | |
2894 '( | |
2895 ("text/plain") | |
2896 ("text/enriched") | |
2897 ("text/html") | |
2898 ("audio/basic") | |
2899 ("image/jpeg") | |
2900 ("image/png") | |
2901 ("image/gif") | |
2902 ("image/tiff") | |
2903 ("video/mpeg") | |
2904 ("application/postscript") | |
2905 ("application/octet-stream") | |
2906 ("message/rfc822") | |
2907 )) | |
2908 (defconst vm-mime-encoded-word-regexp | |
2909 "=\\?\\([^?]+\\)\\?\\([BQ]\\)\\?\\([^?]+\\)\\?=") | |
2910 ;; for MS-DOS and Windows NT | |
2911 ;; nil value means text file | |
2912 ;; t value means binary file | |
2913 ;; presumably it controls whether LF -> CRLF mapping is done | |
2914 ;; when writing to files. | |
2915 (defvar buffer-file-type) | |
2916 (defvar vm-frame-list nil) | |
2917 (if (not (boundp 'shell-command-switch)) | |
2918 (defvar shell-command-switch "-c")) |