i find it annoying to have to manually change urls to subscribe to a community outside lemmy.world, so i wrote a bookmarklet to quickly switch to the lemmy.world instance
to use, just drag the following code to your bookmarks bar (name it whatever you like), then click it when you want to use it
javascript:(function() {const myInst="lemmy.world";let currUrl=window.location.toString().split("/");let currInst=currUrl[2];currUrl[2]=myInst;let newUrl=currUrl.join("/")+"@"+currInst;window.location=newUrl;})();
readable version:
javascript:(
function() {
// make sure to change this if using on a different instance
const myInst="lemmy.world";
let currUrl=window.location.toString().split("/");
let currInst=currUrl[2];
currUrl[2]=myInst;
let newUrl=currUrl.join("/")+"@"+currInst;
window.location=newUrl;
})
()
Hello, I just made a new bookmarklet where it automatically transfers all of your subscribed communities to another instance, can be found here
i’ll be honest, i’m not sure what that’s for? is it moving to another account if you want to change your home instance? if so, that’s a good idea, i could add it to the post if you want in case this comment gets buried
spoiler
although i’m not entirely certain using https://github.com/Rob--W/cors-anywhere/issues/301 is a great idea…
I didn’t want to use it but I didn’t see any other way to tackle the cors issue
Tried this with a throwaway, but it’s broken.
Subscription location has changed.
When corrected, it asks to visit https://cors-anywhere.herokuapp.com/corsdemo to request access. Despite doing so, it never gets past that point.
When/if you fix it, you might give some context about how you’re handling user credentials.
also, you should replace
const myInst="lemmy.world";
withconst myInst = window.location.hostname;
, it automatically fetches what instance you’re on.that (unless i’m misunderstanding) isn’t the point of it. it’s made for quickly taking you from e.g.
https://lemmy.ml/c/jerboa
tohttps://lemmy.world/c/jerboa@lemmy.ml
, so it needs a const to know which instance to take you toedit: i guess i could replace
let currInst=currUrl[2];
withlet currInst=window.location.hostname;
but i can’t see a practical difference and so i chose the shorter one
Thanks that super useful, especially in places like /c/newcommunities where people (including me) are still unsure how to properly link communities.
Do you know if the process works differently in FireFox? (Note that technically I use Ghostery but it’s based in Firefox). I copied the script to a new bookmark URL and changed lemmy.world to lemmy.one since thats the instance I’m registered on. However, when clicked nothing happens. Is there something I’m missing?
do you know of any way to switch not a community but a post to another instance? afaik they’re numeric so the number identifier is different on each instance which makes it hard.
i’m afraid i don’t. i did fiddle around a bit trying to find a relationship between url’s, but I couldn’t see one
if anyone more familiar with lemmy/activitypub can tell me, I’ll update / add to the bookmarklet
Staying on your home instance is currently an issue on the repo. Implementing it yourself would need using the search, which is complicated because it only works through a websocket connection.
i’m glad that’s being tracked, as a bookmarklet is not really a great solution; but it’s still not a complete solution. if i visit a lemmy post from outside lemmy.world (e.g. search engine), then there’s no way to go to the l.w version (to my knowledge)
You probably understood me the first time but I’m editing because I made a mistake in how I phrased it.
to another
community→ instancethe number identifier is different on each
community→ instancefor clarity, i’m presuming you’re talking about redirecting from e.g. this [https://lemmy.ml/post/1190997] to this [https://lemmy.world/post/38761]
but yeah, i’m afraid i can’t help [yet?]