emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] Integration of Org mode and Gnus


From: Bastien
Subject: Re: [Orgmode] Integration of Org mode and Gnus
Date: Wed, 18 Jul 2007 14:01:06 +0200
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/23.0.0 (gnu/linux)

address@hidden (Jason F. McBrayer) writes:

> Bastien <address@hidden> 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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]