For those that use Tampermonkey or GreaseMonkey, here’s a quick script I whipped up that creates a button that redirects communities from other instances to your local instance. If your instance isn’t lemmy.world
, then change the localLemmy
var at the top. Enjoy!
// ==UserScript==
// @name Lemmings Fix
// @version 1.0
// @description Redirect to your local Lemmy instance
// @author @lemmy.world/u/soy
// @match https://*/c/*
// @icon https://join-lemmy.org/static/assets/icons/favicon.svg
// @grant GM_addStyle
// ==/UserScript==
const localLemmy = 'lemmy.world';
var isLemmy = document.head.querySelector("[name~=Description][content]").content === 'Lemmy';
if (isLemmy) {
// Get URL info
var splitUrl = location.href.split('/');
var instanceUrl = splitUrl[2];
var community = splitUrl[4];
var localizedUrl = 'https://' + localLemmy + '/c/' + community + '@' + instanceUrl;
// Create redirect button if not on local
if (instanceUrl !== localLemmy) {
var zNode = document.createElement ('div');
zNode.innerHTML = '<button id="localize" type="button">Open in local instance</button>';
zNode.setAttribute('id', 'localizeContainer');
document.body.appendChild(zNode);
document.getElementById ("localize").addEventListener (
"click", onLocalize
);
}
}
function onLocalize (zEvent) {
window.location.replace(localizedUrl);
}
GM_addStyle ( `
#localizeContainer {
position: fixed;
right: 0px;
bottom: 0px;
}
#localize {
cursor: pointer;
padding: 16px;
}
` );
Hah, just came here to suggest an improvement, but the script has already transformed completely while I was gone :D
If someone wouldn’t mind throwing this up on, say, userforks or similar, that would be great.
Henlo buddy, your script didn’t work for me, so I fixed it. Works for me now. I also changed
lemmy.world
tosh.itjust.works
so beware.Here’s my final one:
// ==UserScript== // @name Lemmings Fix // @version 1.0 // @description Redirect to your local Lemmy instance // @author @lemmy.world/u/soy // @match https://*/c/* // @icon https://join-lemmy.org/static/assets/icons/favicon.svg // ==/UserScript== const localLemmy = "sh.itjust.works"; var isLemmy = document.head.querySelector("[name~=Description][content]").content === "Lemmy"; if (isLemmy) { // Get URL info var splitUrl = location.href.split("/"); var instanceUrl = splitUrl[2]; var community = splitUrl[4]; var localizedUrl = "https://" + localLemmy + "/c/" + community + "@" + instanceUrl; // Create redirect button if not on local if (instanceUrl !== localLemmy) { var zNode = document.createElement("div"); zNode.innerHTML = "Open in local instance"; zNode.setAttribute("id", "localizeContainer"); // add styles to the button embedded zNode.setAttribute( "style", "cursor: pointer; padding: 16px; background-color: red; border-radius: 10%; border-width: 3px; border-style: solid; padding: 3px; z-index: 10;max-width:200px;position:fixed;top:0;right:0;" ); zNode.addEventListener("click", onLocalize); document.body.appendChild(zNode); } } function onLocalize() { window.location.replace(localizedUrl); }
https://greasyfork.org/en/scripts/468521-lemmings-fix
Threw yours up on greasyfork so people can easily install it, just poke me if you’d like me to take it down so you can put your own up
if you’re willing could you tell me how to upload a script there?
First you need to sign in or up here:
https://greasyfork.org/en/users/sign_in
Then you need to visit this page and fill out the form, including with the script
ty, i’ll add a reminder to check this out 2moro when i’m more awake
i tried to upload it to tampermonkey and failed lol. if i knew how i’d do it. i’m always making userscripts and it’d be good to have them all somewhere.
deleted by creator