mikehardy / thunderlink

Link to your Thunderbird emails!
Mozilla Public License 2.0
42 stars 14 forks source link

Compatibility with version 78 (next release) #64

Closed nbeaver closed 3 years ago

nbeaver commented 4 years ago

While testing out the OAuth2 support in the current beta version (77.0b3), I noticed that Thunderlink was no longer working. It looks like legacy webextensions are going away in the next release, based on other addon bug reports:

https://github.com/RealRaven2000/FiltaQuilla/issues/58

so making the jump to this next release might be challenging. I got console messages like this:

addons.webextension. WARN Loading extension 'null': Reading manifest: Warning processing legacy: An unexpected property was found in the WebExtension manifest.

It looks like the next Firefox ESR release won't be until 2020-09-22. However, the update page for Thunderbird 78 says the next major release of Thunderbird will be in June 2020 (i.e. now), so I'm uncertain as to how urgent this is.

Warning: If you want to try out the new beta version, either make a new profile to use it with or make a backup of your profile (or both). Merely running the beta version will make the profile incompatible with Thunderbird version 68.

mikehardy commented 4 years ago

Oh my, that looks dire 😱 - we weren't even fully working with the current Thunderbird haha. Would be nice if it was just like a couple APIs moving, but it always seems to be structural

I'm pretty swamped right now so if you or anyone has any takes on forward-porting, I'm more than happy to merge work / delegate commit power etc etc

nbeaver commented 4 years ago

I'd hate to see this add-on lose compatibility with the next release, but unfortunately I can't commit to spending a lot of time right now either and frankly the work looks daunting. The MailExtension API appears to lack equivalents to crucial functions like [handleFlagWithParam()](https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsICommandLine#handleFlagWithParam()) and getMsgHdrForMessageID(). A cursory look at the documentation is not encouraging:

When the term messageId is used in these documents, it doesn’t refer to the Message-ID email header. It is an internal tracking number that does not remain after a restart. Nor does it follow an email that has been moved to a different folder.

There is a place to ask for WebExtension API support:

https://bugzilla.mozilla.org/buglist.cgi?product=Thunderbird&component=Add-Ons%3A%20Extensions%20API&resolution=---

but I doubt they would be implemented in time for the next release.

On the bright side, it looks like at one time there wasn't even an API for opening messages:

While you can query and manipulate emails quite well through the messages API, there is currently no way to just display/open an email returned by those APIs. There should be a WebExtension API to open a specific email, either in the current 3-pane page, in a new tab, or separate popup window [ . . . ] Since the messageId returned by browser.messages.query is internal and doesn't appear to relate to anything XUL or IMAP knows, there doesn't seem to be a way to work around this by using a custom Web Experiments API.

but it seems to be fixed now (maybe, I haven't checked):

A message can be displayed in either a 3-pane tab, a tab of its own, or in a window of its own.

https://thunderbird-webextensions.readthedocs.io/en/latest/messageDisplay.html

nbeaver commented 4 years ago

There's more information here:

The changes are for the general public only going to come into effect in the next ESR release, Thunderbird 78 in mid 2020. For developers, in beta and nightly support will start to disappear from core once we're ready do so, probably during 2019. Some notable things that will be removed are the custom overlay loader (Overlays.jsm), and support for add-ons requiring restart.

For add-on authors going forwards, there is of course also an option C (depending on what the add-on does): work with us to integrate the functionality into core. If the add-on is under the bug-fix category this is certainly the way to go as no API for a bug-fix would be in sight. In general we're happy to include functionality provided it's of general usefulness.

MailExtension Experiments is one way to go (and that's not deprecated), but should not be seen as a long term solution. It may be a short term solution though. It means you need to follow changes closely and things will often break. Sometimes in ways that could be hard to solve. They simply need to be understood to be seen as experiments, with no warranties.

https://mail.mozilla.org/pipermail/tb-planning/2019-October/007167.html

and here:

As earlier announced, the support for traditional add-ons has today been removed from Thunderbird nightly builds, going to beta soon.

Going forwards, add-ons need to be written as either MailExtensions, or MailExtension Experiments. The latter allows using XPCOM and other technologies used in traditional add-ons, but will be prone to breakage if you're not willing to keep up with what's happening in core development.

There are no changes for the 68.x series.

https://groups.google.com/forum/#!topic/tb-planning/f84qRnYgYLo

I've posted in the forum that seems to have the most active Thunderbird addon developers, and it looks like it will be possible to adapt the existing code:

this should be possible with experiments. I do think, the commandLine API would be a nice thing to have, so filing a bug would also be a good option.

Using an experiment would look like this: After you have created an experiment with some methods, you can call your own experiment in your background.js. Inside the experiment you have full "legacy" / privileged access.

https://thunderbird.topicbox.com/groups/addons/T6d368cd4148e8e4e/mailextension-equivalent-for-handleflagwithparam-or-mailextension-experiments

Still looks like a big job, though.

mikehardy commented 4 years ago

Seems like just building it into core might be easier. It's not the most complicated thing (find this message-id...) it's not a far-out idea (Mail.app implements it natively) and it's useful (installed base here at least).

What would it take for this to be in core just as "open thunderbird with the message-id and it'll open the message in your default view" ?

All the fancy "configure how your link looks" is neat but not the important bit really, it could be handled some other way maybe

nbeaver commented 4 years ago

It would be great to get this functionality integrated into the core Thunderbird code. However, a feature request for mid: and cid: URL support has been in the bug tracker since 2004:

https://bugzilla.mozilla.org/show_bug.cgi?id=264270

so it's been on the todo list for a while. There's also backwards compatibility to consider: mid: and cid: support alone wouldn't make the thunderlink:// URLs work, and might not be activated via a -thunderlink flag, which would break all the desktop integration. I've generated a lot of thunderlink:// URLs that I'd rather not have to convert, even if it would be a relatively mechanical process.

On the bright side, one of the lead developers has shown an interest in mid: URLs as recently as November 2019:

https://bugzilla.mozilla.org/show_bug.cgi?id=457177#c17

However, I'm guessing we wouldn't get direct assistance from the maintainers and the onus would be on us to come up with a pull request that the maintainers would be willing to merge. That said, it wouldn't hurt to ask. My general impression is that the maintainers are less focused on adding features and more focused on bug fixes to the existing code and keeping up with Firefox releases, but if you know anyone who has a friend-of-a-friend that's a core Thunderbird developer, they might be able to help this along somehow.

ericdanan commented 3 years ago

Hello, I am also hit by this issue after upgrading to TB78. I'm afraid I don't have any useful skill to help, I just saw the extension "Copy Message ID" (https://github.com/garoose/copy-message-id) that does work with TB78. But I suppose opening TB with a specific message is the hard part.

mikehardy commented 3 years ago

I believe that's correct - this extension goes both directions - generating the links, and using the links. Trivial to get the message id to generate the link but getting thunderbird to "know" about a message id and resolve it, that's apparently broken

ericdanan commented 3 years ago

There's also backwards compatibility to consider: mid: and cid: support alone wouldn't make the thunderlink:// URLs work, and might not be activated via a -thunderlink flag, which would break all the desktop integration. I've generated a lot of thunderlink:// URLs that I'd rather not have to convert, even if it would be a relatively mechanical process.

Perhaps this can be solved at the thunderlink:// protocol registration step?

crislar commented 3 years ago

I dropped thunderlink several months ago and because of that mostly now use mu in emacs/orgmode to manage links since T78 upgrade. I find everytime I try to downgrade it upgrades itself again annoyingly. In the end I came to conclusion I have other options and can live without thunderbird.

I found two problems after upgrading T. One was the settings window became black on black and unusable and the second is links are not working.

I did take a pop at editing the configs as in the helpful thread of advice at the time but I did not get links to emails from T78 usable in orgmode as before.

I've sort of assumed that thunderlink is now "legacy" and can't be fixed for the way mozilla is organising things. If that is wrong and I should try again I'd certainly give it a go as Thunderlink is a utility that outshines its host app.

Christian

Mike Hardy writes:

I believe that's correct - this extension goes both directions - generating the links, and using the links. Trivial to get the message id to generate the link but getting thunderbird to "know" about a message id and resolve it, that's apparently broken

-- Christian de Larrinaga https://firsthand.net mu4e tool

mikehardy commented 3 years ago

I am, sadly, of the same opinion. It's a great loss for me but now instead of linking to mails with a click I effectively "mentally link" them by leaving enough breadcrumbs to search when I reference email, and then doing the search. It's basically crap and only works if I'm not sharing the links but I'm working solo right now so it works for me.

I wish it weren't so, and am still open to anything that would revive it but I have no ideas at present

jamesquilty commented 3 years ago

Having only just discovered thunderlink, I'm reluctant to give it up. Is there a bug filed in bugzilla requesting the specific functionality required for thunderlinks? If not, that bug should be filed.

mikehardy commented 3 years ago

I'm not tracking anything, I haven't had time to be a good counterparty on an issue so didn't want to waste their time. If you do so that would be great though!

jdla commented 3 years ago

I am a very happy user of thunderlink for thunderbird. In fact it is a deeply embedded part of my day-to-day workflow. I am now on Thunderbird 68.12.0 but I will be forced very soon to 78.2.2 (due to OAuth2 authentication).

So I absolutely need this functionality in some form or shape.

Is there a way I can help? I have some overall program experience in C/C++/Python/Perl/javascript but nothing in the thunderbird add-on area.

Did somebody find out if there is any command line switch to open a specific message? (even if it is with an other identifier than the current one in thunderlink)

Any other ideas or ongoing actions to save this? Frankly spoken thunderlink is one of the major reasons sticking to thunderbird over the Outlook I am gently forced to.

mikehardy commented 3 years ago

I believe this issue contains everything we know. Which is sort of unfortunate because it means no one has found a way to open a specific message from the command line that I/we know of.

What's missing is the development effort (and coordination) to bring one of these home I think:

https://bugzilla.mozilla.org/show_bug.cgi?id=264270 https://bugzilla.mozilla.org/show_bug.cgi?id=457177#c17

Until thunderbird supports deep links to messages by id (somehow, anyhow...) we can generate all the links we want, but we can't open them

CamielBouchier commented 3 years ago

Has this been requested to the thunderbird team to address? I would need this thunderlink functionality as well!

ericdanan commented 3 years ago

I'm not sure this is of any help but this page:

https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Creating_a_Gloda_message_query

gives me the hope that it might be possible for an extension to trigger a global search using an id or headerMessageID attribute. I don't understand much of it though so I could clearly be wrong, but if this is indeed the case then a workaround could perhaps be to:

It wouldn't be as fast as having everything done at once when following the link, but perhaps good enough to be usable. The org-mode part shouldn't be very hard and I'd happily help with this.

CamielBouchier commented 3 years ago

This is just brainstorming ... I am not familiar with thunderbird add-ons

Suppose we know the 'Date' and 'Subject' (I suggest both to minimalize collisions), does the https://thunderbird-webextensions.readthedocs.io/en/latest/messages.html#query-queryinfo allow, along with https://thunderbird-webextensions.readthedocs.io/en/latest/messageDisplay.html allow to retrieve the message?

If so I can imagine building a db of ID=>(Date, Subject) to support such query+display.

Or isn't this the issue after all?

mikehardy commented 3 years ago

Very interesting, we're fixated on message-id's but abstractly stated what we need is "precise location of a specific message". message-id is obviously made for this, but I imagine if you use most of the query-able fields to generate a message fingerprint, it would serve just fine. You can pack a lot of textual data into a little gzip string that is then base64'd so you have the fingerprint as reversible ASCII for the link. They links would still be a little nasty in that form but they would work... in my workflow the link itself is the href behind an html A anchor so I wouldn't even mind the link nastiness.

I am open to any of these things, but I'll continue to be clear that I don't have to implement much at the moment, my apologies

CamielBouchier commented 3 years ago

I was playing around a bit with thunderbird and the webextensions. Locating messages on the basis of "date" and "sender".

I guess I only now fully appreciate the blocking issue : even if you do have the internals of a message through the webextensions interfaces, there seems to be no way to "go to the folder and display" the message.

You can dump it, you can get it in a pop-up, all fine, but just "going to it" seems to be blocking me.

Further hints, observations ?

ericdanan commented 3 years ago

@CamielBouchier if it's indeed possible to start a search that will display the message then wouldn't that be good enough?

Re my previous comment it had slipped out of my mind that using thunderlink with emacs' org-mode is not the only (or even the main) use case, sorry about that!

CamielBouchier commented 3 years ago

@ericdanan It would be already something, but not really good enough for my workflow. When it is displayed in the folder, you are seeing at once all the context (like when it is part of an email thread). Also, you can pick up the message immediately for forwarding, replying etc.... When just displaying it in a kind of popup this is all lost.

ericdanan commented 3 years ago

But when I start a global search it open a tab with the results like so:

image

Then I can click on the message to view it and it will display the conversation, allow to reply etc:

image

Perhaps your setup is different?

CamielBouchier commented 3 years ago

@ericdanan That is a different approach than I take. But assuming I can get the search result tab as you show it is some kind of an alternative. Currently I have nothing to show, just the internal structures (json) describing the message, the message-id, the folder etc ...

CamielBouchier commented 3 years ago

An update!

I have now a complete proof of concept working on my machine. It is still very rough, it is not as nice as 'thunderlink', but it does the job.

The principle is that I identify a message by the 'date', 'author' tuple. Both of which can be queried in the standard API. That tuple goes into a base64 string that is the identifier.

I have than a simple 'browser_action' (=button on thunderlink) that copies the identifier for the selected email-message to the clipboard. The implementation thereof is through an "experiment-api" (that name!) as such functionality is not in the API.

At the same time a python script is launched by the extension ('native messaging') that sits there listening to a socket and piping the message it might receive through to the web-extension. That message would be he above identifier. When the web-extension receives the message it navigates to the corresponding mail in thunderbird. This is again done through an "experiment api".

Finally that same script can be launched as command line (equivalent to thunderbird -thunderlink) with the identifier as argument. It then would send the identifier into the socket I mentioned above and that closes the loop.

At now it is preliminary and for sure not ready for showtime (neither does it have any configuration ... anyone knows how to do in the current API?).

If more interest and/or additional ideas, please let me know while I am working further on this.

The old 'thunderlinks' would not work, but I have a strong idea as how to script the conversion from old 'thunderlinks' to new 'cb_thunderlink'.

The biggest drawback against the old solution is for sure the additional need for Python. So it is not really a stand-alone add-on.

In any case, personally I am back in business with this functionality!

Camiel B.

ericdanan commented 3 years ago

Edit: I wrote this before seeing @CamielBouchier's last comment, which looks much more promising!

I see. There is a "sample extension" here:

https://github.com/thundernest/sample-extensions

that is able to open the search dialog, but it's the classic search not the global one, and I don't if it could be opened with a predefined search query, so may not be helpful.

Another idea perhaps could be to create a local folder folder and have the extension copy the message there when following a link. I suppose that would allow to reply etc, but not sure if it would break the conversation.

But feel of course free to disregard all of this, as I said I don't understand how things work internally at all.

CamielBouchier commented 3 years ago

Are you guys mostly Windows, Mac or Linux users? I am on Windows and now fixing some installer for Windows. Should my effort go into that, or into other OS'es? Linux I might manage somehow, Mac will be for someone else ;)

Camiel B.

ericdanan commented 3 years ago

@CamielBouchier thanks a lot for your effort! I am personally on Windows. If it can help that I test anything I'll be happy to do it.

CamielBouchier commented 3 years ago

@ericdanan (and other windows users).

In attachment you will find a zip file. Extract it to whatever place you want, I will call it /foo/cb_thunderlink.

Open a dos command window as administrator and change directory to /foo/cb_thunderlink and issue : > cb_thunderlink.exe register

This will update your registry to connect thunderbird extensions with the python application and enable links such as cbthunderlink://SomeStringWithManyChars

Then, go to thunderbird and add the cb_thunderlink.xpi file that is under /foo/cb_thunderlink.

You should now be all set ... Select a message, hit the cb_thunderlink button, paste the link to a wiki or whatever. Click the link to check it works.

If any issue or problem, just let me know. All sources are included as well, case you wouldn't trust or want to give feedback.

Camiel B

cb_thunderlink.zip

ericdanan commented 3 years ago

@CamielBouchier thanks! A couple of questions before I test:

CamielBouchier commented 3 years ago

@ericdanan

Camiel B

ericdanan commented 3 years ago

OK. I gave it a try and am unable to register. When I issue cb_thunderlink.exe register (your message says cb_thunderbird.exe but that's a typo I guess) from an admin command prompt I get a popup "This app can't run on your PC. To find a version for your PC, check with the software publisher." I'm on Windows 10 version 2004.

CamielBouchier commented 3 years ago

Indeed the cb_thunderbird was a typo.

The not starting is weird ... Any chance you are on a 32 bit windows? https://support.microsoft.com/en-us/help/15056/windows-32-64-bit-faq

ericdanan commented 3 years ago

No it's 64-bit.

CamielBouchier commented 3 years ago

That's puzzling. And the message clear as mud ;)

If you run as a normal user cb_thunderlink.exe register , does that work?

ericdanan commented 3 years ago

That made no difference but I then downloaded and extracted the zip file again and that solved the issue. I was able to register and install the extension from the xpi file. I can confirm that copying a link works for me. Opening a link also works if Thunderbird is already running, otherwise nothing happens. Also opening the link doesn't give focus to Thunderbird if it doesn't have it already. But definitely usable!

CamielBouchier commented 3 years ago

@ericdanan Thanks for the feedback. The two 'issues' you mention do not come as a surprise. Solving them might be way more complex than it is worth ... Personally I have thunderbird always open when starting to use those links. Getting the focus might be possible to solve.

Oh, yes, what I forgot to say : I am now concentrating in the first place on automating the conversion from thunderlink to cbthunderlink. That is more important to me.

Camiel B.

ericdanan commented 3 years ago

Sure these are not really issues. I also have TB always running. I wonder though, since opening the link won't automatically start / switch to TB, wouldn't it be almost as fast to copy the link (including the cbthunderlink:// prefix), switch to TB, and have a keyboard shortcut or button to trigger decoding the link and showing the message? That would allow to get rid of the python script if I understand correctly.

Other comments after experimenting a bit with the code:

Being able to convert thunderlinks to cbthunderlinks would be great (although I have no clue how this can be done if we are not able to retreive a message from its messageID). Again I am happy to help with testing if needed.

CamielBouchier commented 3 years ago

@ericdanan

Those are actually a bunch of interesting suggestions!

On the approach copy-the-link + shortcut : that more than likely would work and would get rid of the script. I am not going to work on it though:

On "Copy Message ID" : Thanks for the input, this is obviously the better approach to take.

On the link-string: Could be part of 'preference' settings, if and when I find out how to do ...

For converting the links I am taking following approach (which is nearly proof-of-concept ready): dumping all mailheaders (yes, that includes MessageID) in a sqlite database. Use that sqlite database in a Python script that runs over a file.

The latter has now priority for me as very soon I will be forced to a later TB version and I want to have a solution for my workflow by then. And time is limited ;)

Camiel B

CamielBouchier commented 3 years ago

@CamielBouchier @ericdanan

Actually, concerning the script, I think I could create an XPI that does your copy-paste approach ánd uses the script case it is there. Probably addresses all concerns. But meanwhile my todo-list around this little utility is growing faster than anticipated ...

Camiel B,

ericdanan commented 3 years ago

@CamielBouchier sure I understand your priorities. I could try to help with some easy bits if you want. For instance I can probably try implementing the copy-paste approach. Then I'm not sure how to test whether the script is there (I imagine perhaps checking whether the protocol is registered?) but if you have any idea on that I could again try to work it out. On options, I could again try to take inspiration from the "Copy Message ID" extension for instance. I can't promise I'll manage as I'm mostly imitating what I see without really understanding things, but happy to give it a go.

Are you thinking of distributing a separate "cb_thunderlink" extension, in which case you would perhaps put your code in another repo and I could send you PRs? Or do you see it more as a replacement for the current thunderlink that should perhaps live on another branch of this repo for the time being? Obviously that would also depend on what @mikehardy thinks.

Finally, I am still wondering whether now you have found a way to display the message once identified, it would be possible to keep identifying it by its Message-ID. As I posted above this page:

https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Creating_a_Gloda_message_query

suggests that it's possible to create a gloda search query for a Message-ID. But when I tried I couldn't even manage the preliminary step of importing gloda. I get an error "file does not exist" from:

Components.utils.import("resource:///modules/gloda/public.js");

I don't know if I'm doing something wrong or perhaps the information on that page doesn't apply anymore. I asked at https://github.com/thundernest/sample-extensions/issues/20 but I'm not sure if it's the right place.

ericdanan commented 3 years ago

@CamielBouchier sure I understand your priorities. I could try to help with some easy bits if you want. For instance I can probably try implementing the copy-paste approach. Then I'm not sure how to test whether the script is there (I imagine perhaps checking whether the protocol is registered?) but if you have any idea on that I could again try to work it out. On options, I could again try to take inspiration from the "Copy Message ID" extension for instance. I can't promise I'll manage as I'm mostly imitating what I see without really understanding things, but happy to give it a go.

Are you thinking of distributing a separate "cb_thunderlink" extension, in which case you would perhaps put your code in another repo and I could send you PRs? Or do you see it more as a replacement for the current thunderlink that should perhaps live on another branch of this repo for the time being? Obviously that would also depend on what @mikehardy thinks.

Finally, I am still wondering whether now you have found a way to display the message once identified, it would be possible to keep identifying it by its Message-ID. As I posted above this page:

https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Creating_a_Gloda_message_query

suggests that it's possible to create a gloda search query for a Message-ID. But when I tried I couldn't even manage the preliminary step of importing gloda. I get an error "file does not exist" from:

Components.utils.import("resource:///modules/gloda/public.js");

I don't know if I'm doing something wrong or perhaps the information on that page doesn't apply anymore. I asked at https://github.com/thundernest/sample-extensions/issues/20 but I'm not sure if it's the right place.

CamielBouchier commented 3 years ago

@ericdanan

Actually I do have the copy/paste approach ready over here in draft. Seems to work well. There is even no need to check the script. I just pretend it is there and if not it just gracefully fails on that part (and consequently it does not listen to incoming request for going to a link).

This one I can share by say tonight or latest tomorrow.

Subsequently I will look into configuration as well (particularly to address your [[link][blahblah]] thing. I have some ideas as how to do this a bit of generic. But if you would have working stuff on configuration that would be helpful!

On the distribution I have no idea yet. My last project I did really open-source was still on subversion ;-) But I guess I should set-up a public git repository indeed and learn a bit of git. Personally I am using mercurial on my PC, so that should be not too big of a leap.

On the Message-ID search I gave up and I am taking a different approach : convert message-id to cbthunderlink. So all my thunderlink://... will be replaced script-wise by cbthunderlink://... . I am now already able to generate a file with following entries: cbthunderlink_id;message-ID for all messages in thunderbird. Using that one the script for converting files is rather trivial.

CamielB

mikehardy commented 3 years ago

This is different enough from thunderlink that I think a separate repo would be best then I would subscribe to that one :-). I am listening either way, for my part I would focus as much as possible on not having external dependencies (e.g. python) as in my experience those turn into maintenance / user support generators, but that's just an opinion worth what you paid for it ($0 haha). Cheers

ericdanan commented 3 years ago

Well I think I have perhaps managed to make it work with a global search for the Message-ID (the one from the message header) so that there is no need to modify the link format and convert the old links. Here is my adaptation of @CamielBouchier's code:

mail_extension.zip

I don't know how to generate the xpi file so I just go to Add-on manager > Debug add-ons > Load temporary add-on and select the manifest.json file. If you copy one of your old thunderlinks to the clipboard and then click on the cb_thunderlink button, it should hopefully open it. @CamielBouchier I think it should work too when clicking an old thunderlink if you modify your script to simply send the thunderlink to TB.

CamielBouchier commented 3 years ago

@ericdanan

This is actually the way to go! (provided that this 'Gloda' is still some time around on the interfaces, someone knows?)

At first test it works with some minor tweaks to be done : thunderlink://messageid=xyz does not work due to messageid, but those are minor ones.

Also the ChromeUtils.import("resource:///modules/gloda/GlodaPublic.jsm") does not work on my 67.12.0. Some later version is needed, we need to find out the minimum therefore.

The xpi is just a renamed zip. No issue.

Finally, how are we going to organise this? Are you taking over? Do I continue with your approach (+ my optional launch script)? Just let me know what you prefer and which copyright notice I should include in case I am using yours.

Camiel B.

CamielBouchier commented 3 years ago

Generating links (with a context menu on selected message) as well for cbthunderlink as thunderlink should work. Also accepting cbthunderlink and thunderlink should work. XPI only at this moment, no integration with python script to 'follow the links' yet.

https://github.com/CamielBouchier/cb_thunderlink/releases/tag/Release_0_2_0

Camiel B,

ericdanan commented 3 years ago

@CamielBouchier that's great! Generating and opening both thunderlinks and cbthunderlinks works for me on TB 78.3.1. Many thanks!

I was actually trying to put things together to be able to generate the links as well but I don't know anything about javascript so it would probably have taken me quite some time to craft some code not nearly as neat as yours.

So I don't think it would have been reasonable for me to maintain the addon by myself, but I am definitely subscribing to yours and will be glad to help with anything I can.

The first thing I can try to do is to send you a PR to impelment a settings page. There would only be the open_mode at first but that would at least be a starting point to then add other settings (in particular customizing the copied link). Let me know if you'd like me to do that.

ericdanan commented 3 years ago

Oh well I see you already have a commit implementing the options page. I'll try to contribute in another way then.

CamielBouchier commented 3 years ago

@ericdanan

Thanks for your feedback!

Yes, I am locally done with the options page for the open_mode. Now working on configurable strings for your [[somelinke][some other stuff]] links. Release will be however for tomorrow ... ;)

Camiel B.

mikehardy commented 3 years ago

@CamielBouchier how do you feel about me making an update to the docs here pointing at what appears to be the future of thunderlink? I was just barely keeping the old implementation on life support and more than anything just want more people to get more stuff done - seems like cbthunderlink is the ticket and is already a completed version of the total re-think and re-write I feared :-)