[EMAIL PROTECTED] (Jason F. McBrayer) writes: > Bastien <[EMAIL PROTECTED]> writes: > >> Anyway, i think gnus-registry comes in handy here. > > It looks like that may indeed be the way forward, if it will let you > follow a link by message-id rather than group. I'm not clear on the > specifics of how you'd set it up, though.
Not fully tested yet, but this patch is a first attempt to implement this. It uses message-id instead of message number to store Gnus links. If gnus-registry is on, it fetches location of the article depending on gnus-registry-alist. It's compatible with old Gnus links. The problem is gnus-registry-alist can be huge, and access to article might be somewhat slow.
--- org.el.orig 2007-07-13 15:10:47.000000000 +0200 +++ org.el 2007-07-18 13:48:38.000000000 +0200 @@ -10509,7 +10509,7 @@ (format "http://groups.google.com/groups?as_umsgid=%s" (org-fixup-message-id-for-http message-id)))) (setq link (org-make-link "gnus:" group - "#" (number-to-string article)))))) + "#" (org-remove-angle-brackets message-id)))))) ((eq major-mode 'w3-mode) (setq cpltxt (url-view-url t) @@ -11444,8 +11444,14 @@ (funcall (cdr (assq 'gnus org-link-frame-setup))) (if gnus-other-frame-object (select-frame gnus-other-frame-object)) (cond ((and group article) + (if (string-match "@" article) + (when (boundp 'gnus-registry-alist) + (gnus-registry-initialize) + (setq group (caddr (assoc (concat "<" article ">") + gnus-registry-alist)))) + (setq article (string-to-number article))) (gnus-group-read-group 1 nil group) - (gnus-summary-goto-article (string-to-number article) nil t)) + (gnus-summary-goto-article article nil t)) (group (gnus-group-jump-to-group group)))) (defun org-follow-vm-link (&optional folder article readonly)
Let me know if this is convenient. -- Bastien
_______________________________________________ Emacs-orgmode mailing list Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode