Small Tampermonkey script to truly ignore users

Discourse offers an option to ignore a user:

image

That’s great and all. But the problem is, when the undesirable posts something, you can still see a notification in the thread.

Here for instance, if I ignore Pilgrimsmaster (just a test case, I don’t really want to ignore him), I can still see a stub that tells me he’s said something and wastes my screen’s real estate:

image

Annoying…

Here’s a little Tampermonkey script that’ll truly silence ignored users:

// ==UserScript==
// @name     Really hide hidden replies on DT
// @include  https://*.dangerousthings.com/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @version  1
// @grant    None
// @run-at   document-start
// ==/UserScript==

console.log("DT view hidden replies killer started")

waitForKeyElements("div", zapHiddenReplies);

function zapHiddenReplies(jNode) {
  if (jNode.attr("class") == "gap" && jNode.text().match(/view [0-9]+ hidden repl[y|ies]/)) {
    jNode.attr("class", "hidden");
    console.log("killed " + jNode.text());
  }
}

With this script, your screen is truly wiped clean of any unwanted content:

image

Not sure why Discourse doesn’t do that by default…

3 Likes

i feel like straight up deleting conflicting viewpoints to yours is a toxic mindset to live in but im decently impressed by your quickness of generating the tampermonkey script so well done on that, i guess

5 Likes

I mean that’s kinda cool but you could definitely miss viewpoints in discussions as well as completely get the wrong idea of a conversation because you can only see half of it.

2 Likes

It’s an option. Feel free not to use it.

1 Like

I’m guessing they give you the option to show hidden messages for context when you see people replying. To me it seems like a nice balance of hiding the things you don’t want to see but still giving you the option of joining the discussion in a more in depth way should you wish.

Maybe ‘hide’ isn’t the right word, but it certainly makes someone’s posts ‘Opt In’ instead of just presenting them.

That said, you do what works for you, very clean solution.

3 Likes

That doesn’t make much sense: either you ignore or you don’t. If you leave the option to check in case you might be missing something, you might as well not ignore, because you’ll end up checking the hidden replies all the time. And if you don’t, it’s just an annoyance on the screen. The script addresses the latter.

1 Like

i mean… it is kinda important to include other sides of a discussion it wont really get you anywhere if you just “i disagree and now you no longer exist” seems a bit childish doesnt it

No worries, I don’t block people who disagree with me.

Prove: You’re still talking with me :stuck_out_tongue:

I could not block you even if someone paid me to.

kisses

(I love those stickers, simply because they are incredibly inappropriate for anyone who knows me :smile:)

isnt that why you ignore people? lol

Nope. I have other criteria. Opposing opinions isn’t one of them.

Clever little script @anon3825968
Questions:
What happens if the person(s) you block are quoted by somebody else in the thread?

Have you got it running on both your computer and phone?
I know there is a tampermonkey app for android, but not sure about iOS

I still use @leumas95 Tampermonkey script for Amals Avatar change (can be modded for anybodys) Also clever and I love it

1 Like

It just hides mentions of hidden posts in threads opened by someone other than the hidden poster. It doesn’t hide quotes (but Discourse does hide the content) and it doesn’t hide the original post if they opened the thread (Discourse takes care of that too). I only tried it in a desktop browser. Firefox to be precise. It’s just a quick-and-dirty thing I made for myself to increase S/N really.

I don’t use my phone for anything other than placing phone calls, unless I have to. It may or may not work in a mobile browser, I wouldn’t know. Sorry. Probably doesn’t - mobile browsers aren’t terribly good at being compatible with their desktop brethren.

Ah, cool. Makes sense, thanks for the reply.

I’m pretty sure we all know why you made it I think I know why you made it.
I love the fact you have the ability to see a “problem” and make something to fix it, and most of all, to share it, So thanks for that. :+1:

1 Like

Here’s an updated version that also hides in-reply quotes from ignored users, as well as any likes they might have given, so you can truly expunge them from your forum viewing experience and reclaim more wasted display real-estate :slight_smile:

// ==UserScript==
// @name     Really ignore ignored users on DT
// @include  https://*.dangerousthings.com/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @version  1
// @grant    None
// @run-at   document-start
// ==/UserScript==

console.log("DT forum ignored users killer started")

waitForKeyElements("div", zapIgnoredUsers1);
waitForKeyElements("aside", zapIgnoredUsers2);

function zapIgnoredUsers1(jNode) {
  if ((jNode.attr("class") == "gap" && jNode.text().match(/view [0-9]+ hidden repl[y|ies]/)) || jNode.attr("class") == "unknown") {
      jNode.attr("class", "hidden");
    console.log("killed " + jNode.text());
  }
}

function zapIgnoredUsers2(jNode) {
  if (jNode.attr("class").match(/ignored-user/)) {
      jNode.attr("class", "hidden");
    console.log("killed " + jNode.text());
  }
}

That seems like a lot of work for something that can be accomplished with a scroll wheel, but, to each their own.

The real added value of course is that those people are fully disappeared. Out of screen and out of mind. It’s like they never existed. Discourse won’t let you ignore that you ignored someone. This script completes the job.

Also, I’m known to do whatever it takes to solve whatever pointless problem I latch onto :slight_smile:

If you fully and completely banish someone from your life you can’t see what they’re saying about you in the interstitial space they now inhabit :joy: it might seem like your exerting your power over them but you’re giving them power over you

1 Like