Need to let loose a primal scream without collecting footnotes first? Have a sneer percolating in your system but not enough time/energy to make a whole post about it? Go forth and be mid: Welcome to the Stubsack, your first port of call for learning fresh Awful youāll near-instantly regret.
Any awful.systems sub may be subsneered in this subthread, techtakes or no.
If your sneer seems higher quality than you thought, feel free to cutānāpaste it into its own post ā thereās no quota for posting and the bar really isnāt that high.
The post Xitter web has spawned soo many āesotericā right wing freaks, but thereās no appropriate sneer-space for them. Iām talking redscare-ish, reality challenged āculture criticsā who write about everything but understand nothing. Iām talking about reply-guys who make the same 6 tweets about the same 3 subjects. Theyāre inescapable at this point, yet I donāt see them mocked (as much as they should be)
Like, there was one dude a while back who insisted that women couldnāt be surgeons because they didnāt believe in the moon or in stars? I think each and every one of these guys is uniquely fucked up and if I canāt escape them, I would love to sneer at them.
Hereās a quick and dirty vanilla js script that highlights all posts in a thread according to how recent they are, the brighter the newer, and alse separately highlights new posts, to make long running threads easier to follow. Iām posting it in the stubsack because itās the thread I had in mind when writing it.
Pasting it in the browserās console and pressing enter should be enough for the page you have open, not that Iāve cross tested it anyā¦ Worst case scenario it does nothing or it colors the posts wrong and you just reload the page, I swear it wonāt steal your crypto, or mine any new.
In Firefox you can find the console by pressing F12 and selecting the console tab.
edit: Also if you prepend javascript: to the code and store it as a bookmark you can just invoke it by calling the bookmark, like a macro, see https://awful.systems/comment/4173451
Note: longer threads donāt load all comments at once, so youāll have to rerun the script if you scroll down far enough.
edit: fixed for Edge, because why wouldnāt it show dates differently there.
edit: updated it to check if thereās a (xx New) notice in the post count in the OP and use the number to highlight the latest xx posts, i.e. all post made since the last time you were here. Change the value of variable newPostColor if you donāt like the lovely shade of lavender I picked. Depending on if edited posts are counted as new or not the count might be off, and like, what if thereās a new post thatās also been edited? Solving that seems to mean moving away from the warmth and comfort of the quick and dirty territory, and also is there a public philthy repository somewhere?
edit: hereās how it looks in the SAP thread:
edit: NEW: added some legibility changes and also consecutive executions now toggle old post highlights.
Code now in spoiler:
spoiler
(() => { function getHighlightedColor(min, max, value) { const percentage = (value - min) / (max - min); return `rgba(0,0,255,${percentage})` } const newPostCount = (() => { const text = document.querySelector("span.fst-italic").textContent; return text.includes("New") ? parseInt(text.match(/\d+/)[0]) : 0; })(); const newPostColor = "#783AFF"; const timestampNodes = [...document.querySelectorAll("span.moment-time")] .map(x => { return { Node: x, PostBox: x.closest('.ms-2'), Date: Date.parse( x.dataset.tippyContent .split('\n').at(-1) .replace(/Modified |at /g, "") .replace(/(?<=\d+)(st|nd|rd|th)/g, "")) }; }) .filter(x => x.PostBox != null) .sort((x1, x2) => x2.Date - x1.Date); const minDate = timestampNodes.at(-1).Date; const maxDate = timestampNodes.at(0).Date; const hl = (dt) => getHighlightedColor(minDate, maxDate, dt); timestampNodes .forEach((x, i) => { if (i < newPostCount) { x.PostBox.style.backgroundColor = newPostColor; x.PostBox.querySelector('.person-listing').style.textShadow = '1px 1px 0.75px #FFFFFF'; x.PostBox.querySelector('.comment-content').style.paddingLeft = ".5em"; } else if (x.PostBox.style.backgroundColor == "") { x.PostBox.style.backgroundColor = hl(x.Date); x.PostBox.querySelector('.comment-content').style.paddingLeft = ".5em"; } else { x.PostBox.style.backgroundColor = ""; x.PostBox.querySelector('.comment-content').style.paddingLeft = ""; } }); })()
other handy thing you can do: make a bookmark that has the URL be
javascript:(function() { function bits go here} )();
, and stick it in your bookmark barYes, do this if your browser allows it, itās way better. Just paste the code in the OP prepended by ājavascript:ā without quotes in place of the url and as far as i can tell it works.
I only now saw how badly the syntax on my post is fucked, thatās what I get for trying to snip things in a dodgy textentry rather than a real editor š
leaving it up for posterity tho.
In the spirit of āworse is betterā, here is a ublock filter I just threw together to highlight all the comments less than a day old:
! Jul 31, 2024 https://awful.systems awful.systems##.comment article.comment-node :has-text("hours ago"):style(background-color:#7700AA)
EDIT: fix bug with 1 hour and 20 minutes ago. regex is even worse is better.
! Jul 31, 2024 https://awful.systems awful.systems##.comment article.comment-node :has-text(/(hour|minute)s? ago/):style(background-color:#7700AA)
I love this but I donāt know if I have the same royal Grape Fanta energy in me. I think Iām on one of the alternate themes but I like #333333
the way you made it, it works only for awful.systems users
This is really cool!
I was just thinking it would be cool to have something like RESās āPreviously Readā feature that only shows the new comments, and everything else is darkened or collapsed. This does a similar thing though and itās great for these weekly threads