this post was submitted on 12 Sep 2022
14 points (100.0% liked)
Lemmy Support
4720 readers
9 users here now
Support / questions about Lemmy.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
If you are writing a client, there is really no reason to browse instances using browser/lemmy-ui. Instead you can directly connect with your client to the api of any instance. Then when you want to interact with any object (eg vote, write a post, subscribe), you take the value of
ap_id
field (on post, comment) oractor_id
field (user, community, site), and pass that to resolve_object.What resolve_object does is essentially the command below, and then transform the data to store it in Lemmy db. Note that each fetchable object has an
id
, and that is where you can resolve it.curl -H 'Accept: application/activity+json' https://lemmy.ml/post/472799 | jq
This fails because it was posted on lemmygrad.ml, which is blocked on perthchat.
To fetch comments, the url should look like this:
https://sopuli.xyz/comment/104283
Oh, title got munched, heh. I'll fix that... So basically you're saying that before resolve_object I should transform it on given instance and load from there, pull ap_id from it and then resolve on that. How annoying, now I have to figure out if I can easily and reliably transform any valid lemmy URL to an API link. Probably yes, regex something like
https://[a-zA-Z0-9\.\-\_]+/(.*/?)\w+/\d+
and replace the capture with api/v3. So much for simplicity.That sounds overly complicated. Why do you open Lemmy in your browser, when you can directly connect with your client to the API of any instance?
And if you do use the browser, theres the fedilink icon which has the link you need. If that isnt rendered properly in your browser, send me the details and i can open an issue for you.
Thinking about this more, I realised it's impossible: The link might not even be a lemmy link at all! How am I meant to guess the other node's API? I'd use federation API, I guess, which I still haven't found nice docs for.
You are wrong, it uses the title attribute which is valid html, and not the title element. Maybe Lynx doesnt support that attribute on
a
elements, I dont know.Btw you need to add a newline after each quote so that its rendered correctly as markdown.
yun-wuxin:[wisknort]:~$ curl https://beehaw.org/post/125367/comment/32382 -s | grep -Eo '.{10}fedilink.{10}' id="icon-fedilink" viewBox= ef="#icon-fedilink"><d y">fedilink</
Do you mean a blank line? Because I added newlines. Frankly I consider this to be markdown's fault, because the behaviour is, put simply, removed. If I want to quote two lines, I will quote two lines. (Worse is the part where a single newline is ignored, but two newlines is two newlines. I just want one newline, thanks.)
Hmm i was inspecting the HTML in Firefox, but if i curl the source and look at it directly, it looks quite different, with a
<title>
element in the<body>
as you say. @[email protected] can you look into this?@[email protected] open up an issue on the github because its not clear to me what you're trying to do.
He browses lemmy-ui in Lynx, and it doesnt render the fedilink icon correctly because of that invalid tag. Also doesnt use github.
The title tag is correct, its for screen reader support for icons.
citation needed
https://css-tricks.com/accessible-svg-icons/
Pretty much all the comments there are pointing out that it's not a good idea.