Opening a fediverse post from a URL with toot (or another tool other than a web browser)
Does anyone know how to open a fediverse post from a URL without using a web browser, which never works without putting a libreJS exception (which I don't want to do)?
Using toot or toot tui, I did not find how to do.
Maybe this would help you Avron ^^
The URLs contain the Message ID. I can imagine a program that uses the Mastodon API to print the message out, given a Message ID. It would have to be a message that you have access to, following the usual rules of visibility for who can see what. That means not private, unless it's to you, and not followers-only unless you're a follower & have access that way, and etc.
> The URLs contain the Message ID.
One message I was trying to see was https://mastodon.social/users/framaka/statuses/113511710282403610. Do you know how to extract this "Message ID"?
In the documentation of toot, there is no reference to a "Message ID", rather to "Status ID".
> It would have to be a message that you have access to, following the usual rules of visibility for who can see what.
I am not a follower of who posted the message, does that mean I should not be able to see it using toot?
With Parabola, I found Tuba, which has a graphical interface, and in there, if I paste the URL in the search box, the message is displayed. Apparently, Tuba is not in Trisquel repositories.
EDIT: Just found that Tuba can be installed on Trisquel using Guix.
The message ID is in the URL already. Just by looking at the URL I can tell that the message ID 113511710282403610.
"I am not a follower of who posted the message, does that mean I should not be able to see it using toot?"
That depends on the visibility set to the toot. Toots can be public, followers only, private only to those mentioned, etc.
By opening the link in a web browser, I can see the message but if I try "toot status" and put the ID, it says it is not found.
Is it because the status ID is specific to an instance and "toot status" only can find status from an ID of the instance I am logged in, while the ID here is for the instance of the person who posted the message?
I tried with several messages for which people provide a URL and that I can see in a web browser, for all of them "toot status" cannot find the message.
"toot status" is not a valid command. You want "toot thread".
And so, toot thread 113511710282403610
You'll get the entire conversation.
I did further testing.
When I get a status ID from "toot timeline --public", "toot status" and "toot thread" are successful. When I get a status ID from "toot timeline -i some_other_instance --public", the response to "toot status" and "toot thread" is "Error: Record not found".
So it seems that "toot status" (which exists) and "toot thread" can only find a message/thread if the status ID is a status ID of the instance one is logged in, but it cannot show any message with a status ID of another instance.
Brutaldon works without JS:
https://brutaldon.org/
More useful links here:
Escaping the Javascript Trap:
https://trisquel.info/en/wiki/escaping-javascript-trap