fperson

joined 2 years ago
MODERATOR OF
[โ€“] fperson@lemmy.world 2 points 2 years ago

can i use the cup with the emo kids?

[โ€“] fperson@lemmy.world 1 points 2 years ago
 

This looks super-cool, maybe could be useful to some :)

[โ€“] fperson@lemmy.world 1 points 2 years ago (1 children)

Why are these bot operators going through the hassle of joining existing instances

I wonder if there's already a "the bots are from Reddit" conspiracy :D

I really see no point in these actions. I mean, seriously, why would you want to just harm something open?

 

Hey folks! I hope you're having a lovely day. I was using the "Lemmings fix" by @soy@lemmy.world for a while now and have been improving it to tailor my needs.

This one

  • works even when browsing remote instances on remote instances
  • adds the redirect button to the "sidebar"/community card
  • works on mobile, too

Here are a couple of screenshots:

Here's the code (modify localLemmy before using):

// ==UserScript==
// @name         Lemmings Fix
// @version      1.1
// @description  Redirect to your local Lemmy instance
// @author       @lemmy.world/u/soy, @lemmy.world/u/fperson
// @match        https://*/c/*
// @icon         https://join-lemmy.org/static/assets/icons/favicon.svg
// ==/UserScript==

(function () {
  'use strict';

  const localLemmy = 'lemmy.world';
  const isLemmy = document.head.querySelector('[name~=Description][content]').content === 'Lemmy';

  if (!isLemmy) {
    return;
  }

  // Get URL info
  const splitUrl = location.href.split('/');
  const instanceUrl = splitUrl[2];
  const community = splitUrl[4];
  let localizedUrl = `https://${localLemmy}/c/${community}`;
  if (!community.includes('@')) {
    localizedUrl = `${localizedUrl}@${instanceUrl}`;
  }

  // Create redirect button if not on local
  if (instanceUrl !== localLemmy) {
    var zNode = document.createElement('a'); // create anchor tag
    zNode.href = localizedUrl; // set the href
    zNode.textContent = `Open in ${localLemmy}`; // set the text
    zNode.id = 'localizeContainer'; // set the id
    // update styles for a more modern look
    zNode.style = `
          display: inline-block;
          cursor: pointer;
          padding: 5px 20px;
          background-color: #007BFF;
          color: #FFF;
          text-decoration: none;
          border-radius: 5px;
          border: none;
          box-shadow: 0 2px 5px rgba(0,0,0,0.15);
          font-size: 1rem;
          font-weight: bold;
          transition: background-color 0.3s ease;
          top: 5rem;
          right: 1rem;
          z-index: 1000;
          `;
    zNode.addEventListener('mouseenter', function () {
      this.style.backgroundColor = '#0056b3';
    });
    zNode.addEventListener('mouseleave', function () {
      this.style.backgroundColor = '#007BFF';
    });

    function addButtonIfNotPresent(node) {
      const link = node.querySelector('a[href*="/create_post"]');
      if (link && !link.parentNode.querySelector('#localizeContainer')) {
        var zNode = document.createElement('a');
        zNode.href = localizedUrl;
        zNode.textContent = `Open in ${localLemmy}`;
        zNode.id = 'localizeContainer';
        zNode.style = `
    display: inline-block;
    cursor: pointer;
    padding: 5px 20px;
    background-color: #007BFF;
    color: #FFF;
    text-decoration: none;
    border-radius: 5px;
    border: none;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
    font-size: 1rem;
    font-weight: bold;
    transition: background-color 0.3s ease;
    top: 5rem;
    right: 1rem;
    z-index: 1000;
  `;
        zNode.addEventListener('mouseenter', function () {
          this.style.backgroundColor = '#0056b3';
        });
        zNode.addEventListener('mouseleave', function () {
          this.style.backgroundColor = '#007BFF';
        });

        link.parentNode.appendChild(zNode);
      }
    }

    const observer = new MutationObserver(function (mutationsList, observer) {
      for (let mutation of mutationsList) {
        if (mutation.type === 'childList') {
          mutation.addedNodes.forEach((node) => {
            if (node.nodeType === 1) {
              addButtonIfNotPresent(node);
            }
          });
        }
      }
    });

    // Options for the observer (which mutations to observe)
    const config = { childList: true, subtree: true };

    // Target node to observe
    const targetNode = document.body;

    // Start observing the target node for configured mutations
    observer.observe(targetNode, config);

    // Run initial check
    document.querySelectorAll('.card-body').forEach(addButtonIfNotPresent);
  }
})();
 

Yup, I agree with him. However, I'm still happy that all the Reddit stuff happened. That may naturally sound weird, but at least now there are enough people on Lemmy to be a viable replacement for me personally

 

This song is amongst the most influential in my life. Especially nowadays when I can't visit my hometown due to political/war issues.

I remember listening to it and feeling like this outcast of society as a kid. And having lots of late nights, following my curiosity, talking to my internet pals, and trying to figure out what this life thingie is.

Things have changed now, but the music is still unbelievably beautiful.

[โ€“] fperson@lemmy.world 0 points 2 years ago (1 children)

I wonder if it provides better completions than Copilot currently does

 

Hey, folks! I hope you're having a lovely day! I'm a big fan of John Frusciante and created !frusciante@lemmy.world for people who want to discuss John's music, thoughts, interviews, etc., on Lemmy! Feel free to join!

<3

 

I published this picture several months ago in the r/John_Frusciante subreddit, but I think this can be a fitting first post here!

Welcome to !frusciante@lemmy.world, a sublemmy around the happening of John Frusciante! I hope we'll eventually get to the point where decentralized communities are the thing.

 

!electropunk@lemmy.world - a community for all-things electropunk ๐Ÿ’ฅ

like a new breath

like a new desire

2
submitted 2 years ago* (last edited 2 years ago) by fperson@lemmy.world to c/flutter@programming.dev
 

Hey folks! I hope you're having a lovely day. I created a sublemmy for Dart; feel free to join at !dartlang@lemmy.world!

Edit: Add relative link