Discussion:
[ANN] Gnorb: Glue code between Gnus, Org, and BBDB
Eric Abrahamsen
2014-05-06 09:21:45 UTC
Permalink
Hello all,

I've spent the past couple weeks organizing various bits of code into a
proper package, called Gnorb, which I'm billing as "Glue code between
Gnus, Org, and BBDB". The main point is to reduce friction between these
three packages, making it easier to sling around emails, TODOs,
attachments, and the like, and providing multiple views on information.

https://github.com/girzel/gnorb

Most of these bits fall under the category of "things you could have
written yourself", but taken together I've found that they really smooth
out my daily work flow. Some features:

- Whang attachments from Gnus messages onto Org headings, using org-attach.
- Automate the above as part of the org capture process
- Email contents of org subtree under point (prompt for export routine)
- Single-keystroke Org links or email citations of BBDB contacts
- Initiate search of emails from contacts in open BBDB buffer
- Initiate Org agenda tag search from BBDB buffer
- Inverse of the above: pop up a BBDB buffer alongside an Org tags search
- Treat headings as email-related TODOs, and handle them DWIM-style

See the README.org for more. Most of these are single-use small
snippets, but the last I've found particularly useful. A typical flow
would go like this: you have a capture template that looks like:

("r" "Reply" entry (file+headline "~/org/notes.org" "Emails")
"** REPLY %a %?" :gnus-attachments t)

Use this template to capture from an email in the Gnus summary buffer.
You're prompted to attach the message attachments to the new heading,
and while you're there you decide to add BBDB links to people who should
also be in on the reply. You end up with this:

** REPLY [[gnus:link]] and also send to [[bbdb:bob]] and [[bbdb:jane]] :ATTACH:
:PROPERTIES: (attachments and all that)

Then call `gnorb-org-handle-mail' on this headline in an Org or Agenda
buffer. A reply is started to the Gnus message, Bob and Jane are added
to the To header, and you're prompted to attach the attachments to the
outgoing message (presumably you've edited them). When the message is
sent you're returned to the original Org buffer and prompted to mark the
TODO as done. Next email!

The current version of this thing is "Works on My Computer (Beta)". I
would love bug reports, but would love feature requests even more! I'm
currently working on getting BBDB to store links to the last N messages
from any given contact. Also, how best to model email conversations
using TODO state-changes, log entries, and links.

I'm sure there's plenty more fun to be had, though.

Eric
Eric Abrahamsen
2014-05-07 01:27:18 UTC
Permalink
[this didn't seem to make it through the list hiccup yesterday, sending again]

Hello all,

I've spent the past couple weeks organizing various bits of code into a
proper package, called Gnorb, which I'm billing as "Glue code between
Gnus, Org, and BBDB". The main point is to reduce friction between these
three packages, making it easier to sling around emails, TODOs,
attachments, and the like, and providing multiple views on information.

https://github.com/girzel/gnorb

Most of these bits fall under the category of "things you could have
written yourself", but taken together I've found that they really smooth
out my daily work flow. Some features:

- Whang attachments from Gnus messages onto Org headings, using org-attach.
- Automate the above as part of the org capture process
- Email contents of org subtree under point (prompt for export routine)
- Single-keystroke Org links or email citations of BBDB contacts
- Initiate search of emails from contacts in open BBDB buffer
- Initiate Org agenda tag search from BBDB buffer
- Inverse of the above: pop up a BBDB buffer alongside an Org tags search
- Treat headings as email-related TODOs, and handle them DWIM-style

See the README.org for more. Most of these are single-use small
snippets, but the last I've found particularly useful. A typical flow
would go like this: you have a capture template that looks like:

("r" "Reply" entry (file+headline "~/org/notes.org" "Emails")
"** REPLY %a %?" :gnus-attachments t)

Use this template to capture from an email in the Gnus summary buffer.
You're prompted to attach the message attachments to the new heading,
and while you're there you decide to add BBDB links to people who should
also be in on the reply. You end up with this:

** REPLY [[gnus:link]] and also send to [[bbdb:bob]] and [[bbdb:jane]] :ATTACH:
:PROPERTIES: (attachments and all that)

Then call `gnorb-org-handle-mail' on this headline in an Org or Agenda
buffer. A reply is started to the Gnus message, Bob and Jane are added
to the To header, and you're prompted to attach the attachments to the
outgoing message (presumably you've edited them). When the message is
sent you're returned to the original Org buffer and prompted to mark the
TODO as done. Next email!

The current version of this thing is "Works on My Computer (Beta)". I
would love bug reports, but would love feature requests even more! I'm
currently working on getting BBDB to store links to the last N messages
from any given contact. Also, how best to model email conversations
using TODO state-changes, log entries, and links.

I'm sure there's plenty more fun to be had, though.

Eric
Sivaram Neelakantan
2014-05-07 16:52:10 UTC
Permalink
Post by Eric Abrahamsen
[this didn't seem to make it through the list hiccup yesterday, sending again]
[snipped 8 lines]
Post by Eric Abrahamsen
https://github.com/girzel/gnorb
[snipped 45 lines]

Nice, you should probably post this on gnu.emacs.sources NG too?

sivaram
--
Eric Abrahamsen
2014-05-08 01:55:17 UTC
Permalink
Post by Sivaram Neelakantan
Post by Eric Abrahamsen
[this didn't seem to make it through the list hiccup yesterday, sending again]
[snipped 8 lines]
Post by Eric Abrahamsen
https://github.com/girzel/gnorb
[snipped 45 lines]
Nice, you should probably post this on gnu.emacs.sources NG too?
Huh, I wasn't even aware of that group -- thanks for the tip!
Lars Ingebrigtsen
2015-01-28 06:02:54 UTC
Permalink
Post by Eric Abrahamsen
I've spent the past couple weeks organizing various bits of code into a
proper package, called Gnorb, which I'm billing as "Glue code between
Gnus, Org, and BBDB". The main point is to reduce friction between these
three packages, making it easier to sling around emails, TODOs,
attachments, and the like, and providing multiple views on information.
https://github.com/girzel/gnorb
Perhaps this is something that would be appropriate for GNU ELPA?
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog http://lars.ingebrigtsen.no/
Eric Abrahamsen
2015-01-28 06:22:21 UTC
Permalink
Post by Lars Ingebrigtsen
Post by Eric Abrahamsen
I've spent the past couple weeks organizing various bits of code into a
proper package, called Gnorb, which I'm billing as "Glue code between
Gnus, Org, and BBDB". The main point is to reduce friction between these
three packages, making it easier to sling around emails, TODOs,
attachments, and the like, and providing multiple views on information.
https://github.com/girzel/gnorb
Perhaps this is something that would be appropriate for GNU ELPA?
It's already there! :)
Lars Ingebrigtsen
2015-01-28 06:19:39 UTC
Permalink
Post by Eric Abrahamsen
It's already there! :)
:-)
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog http://lars.ingebrigtsen.no/
Loading...