Recently, especially with feddit.de, there are a lot of posts in languages that are not English. This is great for adoption!, but unfortunately I have no idea what the posts are about because I don't speak German. I couldn't find a setting to hide posts in other languages either!
To make my feed better for myself, I wrote a simple user script which removes any posts that are tagged anything other than EN/ES (the two languages I can speak.
Update the script to your preferences (make sure to @match your instance), and load it up in TamperMonkey!
Here you go:
// ==UserScript==
// @name Kbin: delete articles in other languages
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Auto-delete posts in languages you do not speak.
// @author luphoria (https://kbin.social/u/trent)
// @match https://kbin.social/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=kbin.social
// @grant none
// ==/UserScript==
(function() {
'use strict';
const allowedLangs = ["en"]; // <-- Edit this to all of the languages you can speak / want to see in your feed. Format: ["lang", "lang", "lang"]
let deleteUnwantedPosts = () => {
const postTags = document.getElementsByClassName("kbin-bg");
for (let i = 0; i < postTags.length; i++) {
let postTag = postTags[i];
if (postTag && postTag.textContent && postTag.textContent !== "OC" && !allowedLangs.includes(postTag.textContent)) { // OC tags are the only elements (i know of) with the same class.
// Delete element's parent's parent's parent
if (postTag.parentElement.children[0].textContent) {
console.log(`Removing post labeled \`${postTag.textContent}\`: "${postTag.parentElement.children[0].textContent}"`);
postTag.parentElement.parentElement.parentElement.remove();
}
}
}
}
deleteUnwantedPosts(); // on load
// for continuous feeds
let observeDOMChanges = () => {
const observer = new MutationObserver(function(mutationsList) {
deleteUnwantedPosts();
});
observer.observe(document.body, { childList: true, subtree: true });
}
observeDOMChanges();
})();
25 Comments
10A@kbin.social · 29 pts · 3y
So disappointing. I clicked on this hoping your userscript would teach me German.
dreadgoat@kbin.social · 7 pts · 3y
If you use Chrome, the world is your oyster at this point. Translation tools are getting amazing.
Text post, or title? Highlight, right click, translate. Done.
Oh no, but it's a meme/image/screenshot. Guess you're screwed, right? Gotta pull out your phone and use google lens, way too annoying, right? Wrong! Go to chrome://flags and enable "Translate text in images with Google Lens". Now you can right click anywhere to translate the page to English, and then just right-click any image and get a translated version.
Now go meme on some Germans. It is Wednesday, after all.
pikameiser@kbin.social · 2 pts · 3y
I appreciate you!
trent@kbin.social · 2 pts · 3y
This is great, and true too, but I hate google man. Gonna wait to see when translation tools like this become FOSS. I think AI might get us there. In the meantime, LibreTranslate does good for translation and Tesseract works for OCR.
Xeelee@kbin.social · 1 pts · 3y
Irgendwas irgendwas ... Mittwochsfrosch
DrNeurohax@kbin.social · 5 pts · 3y
Must be a bug. I tried it and now my dog speaks German, but I can only speak to bacteria. You wouldn't believe what assholes they are!
Xeelee@kbin.social · 1 pts · 3y
Repeat after me:
"Bier her, aber zackig!"
"Wo gibt's hier die beste Schweinshaxe, Du Hurensohn?"
"Nein, ich habe keine Fahrkarte, Du Möchtegern-Blockwart!"
"Ich rede nicht mit Subalternen. Bringen Sie mir sofort den Geschäftsführer!"
You are now fully prepared for your holiday in Germany,
aussiematt@kbin.social · 1 pts · 3y
"How to Win Friends and Influence People" in one short lesson :-)
chibi-totoro@kbin.social · 1 pts · 3y
I assume a setting for this would already be in the dev backlog? Does anyone know if there is an issue logged for this?
trent@kbin.social · 1 pts · 3y
I didn't check and didn't make one, but there certainly should be I agree. Take this as a hotfix
BaroqueInMind@kbin.social · 1 pts · 3y
Thank you for developing this!
ImplyingImplications@lemmy.ca · 1 pts · 3y
I've just made it a fun game to read the post and try to guess what it could mean!
trent@kbin.social · 4 pts · 3y
Ist Donald Trump ein Sexmonster?
ImplyingImplications@lemmy.ca · 5 pts · 3y
German is such a beautiful language
Setarkus@lemmy.world · 4 pts · 3y
"Wtf is that title?!... Oh, it's 'Bild', makes sense."
marcf@kbin.social · 1 pts · 3y
Might be user error, but still seeing non-English articles (de, es). Script appears to be installed correctly.
trent@kbin.social · 1 pts · 3y
hmm
marcf@kbin.social · 2 pts · 3y
Wasn't running! Added an * to the
@matchurl and that seems to have fixed it. I default to /sub as my home, so perhaps that was the problem?Thanks for the script!
trent@kbin.social · 1 pts · 3y
glad you got it working for you (and I should probably update it to wildcard kbin.social, with that in mind)! I think your observation is right on the mark because my homepage is all, or /
marcf@kbin.social · 1 pts · 3y
Aha! Does not appear to be running. Will investigate…
noughtnaut@kbin.social · 1 pts · 3y
Edit: Disregard this comment; I see you've solved your problem elsehow.
How did you modify your script?
const allowedLangs = ["de", "es"]; // This should workor
const allowedLangs = ["de, es"]; // This will not workGood luck friend.