Christoph <rho...@googlemail.com> writes:
> the thunderbird addons thunderlink and cb_thunderlink do not work
> anymore for thunderbird 138.

Thanks for reporting!

I hope you and other Thunderbird users can help update the FAQ 'Can I
create links to Thunderbirds emails' on Worg -- patches welcome:
https://orgmode.org/worg/org-faq.html#mid-url-handler

An earlier discussion on the mailing list started here:
https://list.orgmode.org/939b62c1-34ee-051e-405a-328b841d3...@gmail.com/

I'm copying Bruno Barbier and Max Nikulin, who contributed to that
discussion and the FAQ update about cb_thunderlink.

> There is, however, an alternative; cf.
> here:
>
> https://www.reddit.com/r/Thunderbird/comments/pb6sif/creating_a_link_to_an_email_in_thunderbird/
>
> It requires no thunderbird add-on which is an additional benefit but
> simply works by calling thunderbird with the commandline parameter
>
> mid:my_message_id
>
> where my_message_id is the unique id that thunderbird gives to each
> mail (without the angle brackets!).

This is discussed in the FAQ.

The FAQ says an add-on is needed to get the message-ID, otherwise the
`last resort' is opening the message source with CTRL+U. However, from
the Reddit thread I see that Message-ID can be added as a custom message
header in the Thunderbird view and simply copied by right-click, and
there's also an add-on (still working?) to add a button to easily copy
it.
https://addons.thunderbird.net/en-us/thunderbird/addon/copy-message-id/

The FAQ mentions cb_thunderlink's ability to generate Org bracket
links directly from a template. That's lost, then.

> So, a simple registration for following the link could look like this
> (sry for that, but my knowledge of Elisp is still very rudimentary,
> even for that much I needed AI help; I'd be grateful for any
> improvement of the code):
>
> (org-link-set-parameters "thunderblink"
>                        :follow #'thunderblink-open)
>
> (defun thunderblink-open (path _)
>   "Open thunderbird with mail-id indicated in path. Remove angle
>   brackets if present"
> (defun thunderblink-open (path _)
>   (let ((clean-path (replace-regexp-in-string "[<>]" "" path)))
>     (start-process "thunderbird" nil "thunderbird" (concat "mid:"
>     clean-path))))

At the end of the Reddit thread, someone has posted a fuller link
definition that also covers completion (with ido, from the kill ring)
and export:

https://github.com/lordnik22/ol-thunderbird/blob/main/ol-thunderbird.el

The Worg FAQ discusses a different approach: defining a `mid' link type
with a follow function that uses browse-url instead of invoking
thunderbird from the shell. There are further notes on making this work
by setting up scheme handlers depending on operating system.

https://orgmode.org/worg/org-faq.html#mid-url-handler
https://orgmode.org/worg/org-faq.html#mailto-links

The FAQ advice may feel overwhelming to a Thunderbird user who's new to
Org. It would be good if we could clearly outline one relatively simple
approach before getting too technical about other options.

Yours,
Christian

Reply via email to