[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Conversation View / org-wl-store-link Enhancements



At Mon, 23 Aug 2010 11:23:25 -0800,
Dave Abrahams wrote:
> 
> On Mon, Aug 23, 2010 at 8:59 AM, Erik Hetzner <ehetzner@gmail.com> wrote:
> > At Sun, 22 Aug 2010 16:06:48 -0800,
> > David Abrahams wrote:
> >>
> >> At Sun, 22 Aug 2010 14:48:26 -0700,
> >> Erik Hetzner wrote:
> >> >
> >> > Thanks for debugging my code & my thinking! You are correct. I
> >> > assumed we needed to gather more references because my code wasn’t
> >> > working as expected, but it does seem we are not getting all
> >> > references from the msgdb.
> >> >
> >
> > (defvar egh:wl-summary-prev-folder-name nil)
> >
> > (defun egh:wl-summary-visit-conversation (&optional close)
> >  (interactive "P")
> >  (if close
> >      (if egh:wl-summary-prev-folder-name
> >          (wl-summary-goto-folder-subr egh:wl-summary-prev-folder-name
> >                                       'no-sync nil nil t)
> >        (message "No previous folder to visit."))
> >    (let (folder-name prev-folder-name)
> >      (save-excursion
> >        (setq prev-folder-name wl-summary-buffer-folder-name)
> >        (wl-summary-set-message-buffer-or-redisplay)
> >        (set-buffer (wl-message-get-original-buffer))
> >        (let* ((ref (substring (car (split-string (or (std11-field-body "References")
> >                                                      (std11-field-body "Message-Id")))) 1 -1)))
> >          (setq folder-name (concat "/message-id:\"" ref
> >                                    "\"|references:\"" ref
> >                                    "\"/" (egh:wl-all-folder)))))
> >      (wl-summary-goto-folder-subr folder-name 'update nil nil t)
> >      (setq egh:wl-summary-prev-folder-name prev-folder-name)
> >      (make-local-variable 'egh:wl-summary-prev-folder-name))))
> >
> > (define-key wl-summary-mode-map "X" 'egh:wl-summary-visit-conversation)

I have made some significant enhancements to this, which you can view
at
http://github.com/dabrahams/elisp/commit/2153e812e470d95342889606ebcdf451d3b9223b#L0R740

In particular:

* wl-summary-visit-conversation now not only opens the thread, but
  takes you to the current message in that Summary buffer.

* Used with a prefix argument, it will return you to the exact message
  you were viewing.

* org-store-link, with the advice at
  http://github.com/dabrahams/elisp/commit/2153e812e470d95342889606ebcdf451d3b9223b#L0R790
  will store a link that takes you to the message in its thread
  context.


-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com