🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.vm.bug
Article #676

MIME object commands in presentation buffer not documented

#676
From: Kevin Rodgers
Date: Thu, 06 Nov 2003 19:20
248 lines
11310 bytes
Of the 9 `$ KEY' sequences bound in vm-mime-reader-map to vm-mime-*
commands, only 2 have doc strings and only 6 are listed under "$ -
prefix for MIME commands" in the doc string for vm-presentation-mode.

I think all 9 vm-mime-* commands (plus vm-mime-run-display-function-
at-point, bound to `RET') should have doc strings and be listed in a
sensible order by `C-h m' (just like by <mouse-3>).  Here's a patch:

*** vm-7.18/vm-vars.el.orig	Mon Aug 18 20:10:42 2003
--- vm-7.18/vm-vars.el	Wed Nov  5 17:41:36 2003
***************
*** 4001,4016 ****

   (defvar vm-mime-reader-map
     (let ((map (make-sparse-keymap)))
!     (define-key map "$a" 'vm-mime-attach-object-from-message)
!     (define-key map "$s" 'vm-mime-reader-map-save-message)
!     (define-key map "$w" 'vm-mime-reader-map-save-file)
!     (define-key map "$|" 'vm-mime-reader-map-pipe-to-command)
!     (define-key map "$p" 'vm-mime-reader-map-pipe-to-printer)
       (define-key map "$\r" 'vm-mime-reader-map-display-using-default)
-     (define-key map "$d" 'vm-delete-mime-object)
       (define-key map "$e" 'vm-mime-reader-map-display-using-external-viewer)
       (define-key map "$v" 'vm-mime-reader-map-display-object-as-type)
!     (define-key map "\r" 'vm-mime-run-display-function-at-point)
       (cond ((vm-mouse-xemacs-mouse-p)
   	   (define-key map 'button3 'vm-menu-popup-mime-dispose-menu)))
       (cond ((fboundp 'set-keymap-name)
--- 4001,4016 ----

   (defvar vm-mime-reader-map
     (let ((map (make-sparse-keymap)))
!     (define-key map "\r" 'vm-mime-run-display-function-at-point)
       (define-key map "$\r" 'vm-mime-reader-map-display-using-default)
       (define-key map "$e" 'vm-mime-reader-map-display-using-external-viewer)
       (define-key map "$v" 'vm-mime-reader-map-display-object-as-type)
!     (define-key map "$w" 'vm-mime-reader-map-save-file)
!     (define-key map "$s" 'vm-mime-reader-map-save-message)
!     (define-key map "$p" 'vm-mime-reader-map-pipe-to-printer)
!     (define-key map "$|" 'vm-mime-reader-map-pipe-to-command)
!     (define-key map "$a" 'vm-mime-attach-object-from-message)
!     (define-key map "$d" 'vm-delete-mime-object)
       (cond ((vm-mouse-xemacs-mouse-p)
   	   (define-key map 'button3 'vm-menu-popup-mime-dispose-menu)))
       (cond ((fboundp 'set-keymap-name)

*** vm-7.18/vm-mime.el.orig	Mon Oct 13 13:30:18 2003
--- vm-7.18/vm-mime.el	Wed Nov  5 17:58:09 2003
***************
*** 3555,3560 ****
--- 3555,3561 ----

   (defun vm-mime-run-display-function-at-point (&optional function dispose)
     (interactive)
+   "Display the MIME object at point according to its type."
     ;; save excursion to keep point from moving.  its motion would
     ;; drag window point along, to a place arbitrarily far from
     ;; where it was when the user triggered the button.
***************
*** 3571,3576 ****
--- 3572,3578 ----

   (defun vm-mime-reader-map-save-file ()
     (interactive)
+   "Write the MIME object at point to a file."
     ;; make sure point doesn't move, we need it to stay on the tag
     ;; if the user wants to delete after saving.
     (let (file)
***************
*** 3587,3592 ****
--- 3589,3595 ----

   (defun vm-mime-reader-map-save-message ()
     (interactive)
+   "Save the MIME object at point to a folder."
     ;; make sure point doesn't move, we need it to stay on the tag
     ;; if the user wants to delete after saving.
     (let (folder)
***************
*** 3602,3624 ****
--- 3605,3632 ----

   (defun vm-mime-reader-map-pipe-to-command ()
     (interactive)
+   "Pipe the MIME object at point to a shell command."
     (vm-mime-run-display-function-at-point
      'vm-mime-pipe-body-to-queried-command))

   (defun vm-mime-reader-map-pipe-to-printer ()
+   "Print the MIME object at point."
     (interactive)
     (vm-mime-run-display-function-at-point 'vm-mime-send-body-to-printer))

   (defun vm-mime-reader-map-display-using-external-viewer ()
     (interactive)
+   "Display the MIME object at point with an external viewer."
     (vm-mime-run-display-function-at-point
      'vm-mime-display-body-using-external-viewer))

   (defun vm-mime-reader-map-display-using-default ()
     (interactive)
+   "Display the MIME object at point using the `default' face."
     (vm-mime-run-display-function-at-point 'vm-mime-display-body-as-text))

   (defun vm-mime-reader-map-display-object-as-type ()
+   "Display the MIME object at point as some other type."
     (interactive)
     (vm-mime-run-display-function-at-point 'vm-mime-display-object-as-type))

***************
*** 4488,4494 ****
   			    (list 'kill-buffer buf)))))))

   (defun vm-mime-attach-object-from-message (composition)
!   "Attach a object from the current message to a VM composition buffer.

   The object is not inserted into the buffer and MIME encoded until
   you execute `vm-mail-send' or `vm-mail-send-and-exit'.  A visible tag
--- 4496,4502 ----
   			    (list 'kill-buffer buf)))))))

   (defun vm-mime-attach-object-from-message (composition)
!   "Attach the MIME object at point to a composition buffer.

   The object is not inserted into the buffer and MIME encoded until
   you execute `vm-mail-send' or `vm-mail-send-and-exit'.  A visible tag
***************
*** 4808,4816 ****
   ;;	      (t description))))))

   (defun vm-delete-mime-object (&optional saved-file)
!   "Deletes the contents of MIME object referred to by the MIME
! button at point.  The MIME object is replaced by a text/plain
! object that briefly describes what was deleted."
     (interactive)
     (vm-follow-summary-cursor)
     (vm-select-folder-buffer)
--- 4816,4824 ----
   ;;	      (t description))))))

   (defun vm-delete-mime-object (&optional saved-file)
!   "Delete the MIME object at point.
! The MIME object is replaced by a text/plain object that describes the
! original object."
     (interactive)
     (vm-follow-summary-cursor)
     (vm-select-folder-buffer)

*** vm-7.18/vm-startup.el.orig	Sun Nov  2 21:37:23 2003
--- vm-7.18/vm-startup.el	Thu Nov  6 11:57:21 2003
***************
*** 515,538 ****
                that match those selectors.
          M ? - partial help for mark commands

!  W S - save the current window configuration to a name
!  W D - delete a window configuration
!  W W - apply a configuration
!  W ? - help for the window configuration commands

!  V V - visit a virtual folder (must be defined in vm-virtual-folder-alist)
!  V C - create a virtual folder composed of a subset of the
!        current folder's messages.
!  V A - create a virtual folder containing all the messages in the current
!        folder with the same author as the current message.
!  V S - create a virtual folder containing all the messages in the current
!        folder with the same subject as the current message.
!  V X - apply the selectors of a named virtual folder to the
!        messages in the current folder and create a virtual folder
!        containing the selected messages.
!  V M - toggle whether this virtual folder's messages mirror the
!        underlying real messages' attributes.
!  V ? - help for virtual folder commands

    C-_ - undo, special undo that retracts the most recent
                changes in message attributes and labels.  Expunges,
--- 515,540 ----
                that match those selectors.
          M ? - partial help for mark commands

!    W - prefix for window configuration commands:
!        W S - save the current window configuration to a name
!        W D - delete a window configuration
!        W W - apply a configuration
!        W ? - help for the window configuration commands

!    V - prefix for virtual folder commands:
!        V V - visit a virtual folder (must be defined in vm-virtual-folder-alist)
!        V C - create a virtual folder composed of a subset of
!              the current folder's messages.
!        V A - create a virtual folder containing all the messages in
!              the current folder with the same author as the current message.
!        V S - create a virtual folder containing all the messages in
!              the current folder with the same subject as the current message.
!        V X - apply the selectors of a named virtual folder to the messages in
!              the current folder and create a virtual folder
!              containing the selected messages.
!        V M - toggle whether this virtual folder's messages mirror the
!              underlying real messages' attributes.
!        V ? - help for virtual folder commands

    C-_ - undo, special undo that retracts the most recent
                changes in message attributes and labels.  Expunges,
***************
*** 541,557 ****

      a - set message attributes

!  l a - add labels to message
!  l d - delete labels from message

!    $ - prefix for MIME commands.  Position the cursor over a MIME
!        tag and use these keystrokes to operate on a MIME object.

!        $ s - save the MIME object
!        $ p - print the MIME object
!        $ | - pipe the MIME object to a shell command.
!        $ RET - display the MIME object's text using the \"default\" face.
          $ e - display the MIME object with an external viewer.
          $ d - delete the MIME object from the message.

      L - reload your VM init file, ~/.vm
--- 543,564 ----

      a - set message attributes

!    l - prefix for label commands:
!        l a - add labels to message
!        l d - delete labels from message

!    $ - prefix for MIME commands (position the cursor over a MIME tag and
!        use these key sequences to operate on the object):

!        RET - display the MIME object according to its type.
!        $ RET - display the MIME object's text using the `default' face.
          $ e - display the MIME object with an external viewer.
+        $ v - display the MIME object as some other type.
+        $ w - write the MIME object to a file.
+        $ s - save the MIME object to a folder.
+        $ p - print the MIME object.
+        $ | - pipe the MIME object to a shell command.
+        $ a - attach the MIME object to a composition buffer.
          $ d - delete the MIME object from the message.

      L - reload your VM init file, ~/.vm

-- 
Kevin Rodgers
Technical Details
Message-ID: <3FAA9EFB.90504@yahoo.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!170.207.51.80!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: f6829,e3cd1eaf59bbb358,start
X-Google-Attributes: gidf6829,public
X-Google-ArrivalTime: 2003-11-06 11:20:25 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!170.207.51.80!not-for-mail
From: Kevin Rodgers <ihs_4664@yahoo.com>
Newsgroups: gnu.emacs.vm.bug
Subject: MIME object commands in presentation buffer not documented
Date: Thu, 06 Nov 2003 12:20:27 -0700
Lines: 249
Message-ID: <3FAA9EFB.90504@yahoo.com>
NNTP-Posting-Host: 170.207.51.80
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de 1068146423 48104747 170.207.51.80 (16 [82742])
User-Agent: Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:0.9.4.1) Gecko/20020406 Netscape6/6.2.2
X-Accept-Language: en-us