my userscripts

on this page you can download some of the userscripts that i've written and i use. cool cool, but what's a userscript anyway?

okay, there's this language called javascript that's used on most of the web. it's a scripting language, so it can do many things. you could use it to add 1+1, or you could embed a talking pelican that follows the mouse around the screen and gives tax advice.

besides from the heretofore mentioned applications, javascript can also do useful things. you could, for example, write code to add your own features to a website. such code is called a userscript, because it's provided by the user of a website (and not by the owners of the website).

i've written a handful userscripts of my own. you can find them below, read what they do, and if you think they could be useful—even install them.

the Scriptures

wiki quickswitcher

this script adds a lil discord-style quick switcher to wikis you visit. just press ctrl-k to access it or edit the script to change the keybind

it comes with support for breezewiki, an alt frontend for fandom dot com which i can't recommend enough.

the best part is that it's super easy to add supported websites! just open up the script, and you'll find a wikiList object. its format should be fairly self-explanatory even if you don't know javascript. and if it's not self-explanatory, please let me know…

view code / download (v0.0)

bandcamp better <title>

the title of a website (named after the <title> element which contains it) usually contains a short description of what is on it. (or sometimes, it's just an undertale reference...)

i thought the title of bandcamp album pages wasn't very informative, so i wrote a script to replace it. said script can display much more information (like album name or song length), and it can display it in any order. so it's more like something you'd find in a proper music player.

again, this script's behavior can be customized—open it up and have a look at the OPTIONS object!

view code / download (v0.0)

newgrounds miscellanea

this script does 2 mostly unrelated things to improve your Newgrounds Audio Portal listening experience:

  1. it makes the volume slider appear/disappear on its own. you need to click less now!
  2. it uses the current song's name and id to generate its direct download link. (todo: describe the algorithm in detail?) this link is then made available using a fancy recolored download button:
the newgrounds audio player. next to the (orange) share/download buttons is another download button, which is colored green
the song in question is purple skies by qshunt

you can use this to download songs you couldn't download normally!

note: audio files' names are generated when the song is uploaded and are based on the song's name. so if the song later changes names, the magic won't work.

view code / download (v0.0)

nitter

nitter is a sort of proxy for twitter, so you can use twitter without having to use twitter. the nitter instance you're using talks to twitter and sends the data back to you. from twitter's point of view, all the instance's requests come from the same source, so the instance's individual users become anonymous in the crowd.

this script contains a few quality of-life things useful to me personally:

view code / download (v0.0)

a hyper­specific change to how tumblr works

warning: this script is currently broken and i'm too lazy to fix it

okay. let me explain.

on tumblr, posts and blogs can be viewed in two different modes: the blog view and the dashboard. the blog view is a lot fancier, letting the user customize the entire layout of the page using html and css. the dashboard, on the other hand, is more uniform, with little customization beyond changing the background color and adding a banner image.

when viewing a blog or post in blog view, there's this button that sends you to the same thing in the dashboard view:

a row of user interface icons. a mouse cursor is hovering over one of them; it looks like an eye and is labeled 'open in dashboard'

the dashboard has this equivalent button or rather, link to send you to blog view…

the card that shows up to the right of posts on tumblr. between the poster's profile picture on the top and various buttons at the bottom is the blog's username and a link to their blog

eeexcept it doesn't. even when you're viewing a post, this link always sends you to the blog's frontpage, not the post you were viewing.

i guess it's supposed to be more of a "check out this person's blog!" kinda thing, but with the power of userscripts, i make my own rules!

view code / download (v0.0)


cheats

these are cheats i made for online games that other people made. they're not exactly useful, moreso just fun to create.

BadUIHax™

after discovering r/baduibattles colon tried making his own terrible ui. apologies in advance. you ever tried rolling dice to enter your phone number? good luck!

...eeexcept you no longer have to because this script rolls all the dice for you.

view code / download (v0.0)

THE MORE WE CHEAT THE GUILTIER WE FEEL

THE HIGHER WE CLIMB THE HARDER WE FALL is a game about adding numbers. continually adding 1 to the same number is framed as climbing a…mountain? a ladder? it's not really clear. doing the math wrong is like falling down i guess. once again, totally something you can get a computer to do for you.

view code / download (v0.0)

installing those suckers

it is expected by the previous scripts that their code will be run whenever an affected website is visited. in theory, this could be done manually, by pasting the script into your browser's console on every page visit. this is, however, the javascript equivalent to writing html with a pen and paper. instead, i use a browser extension known as tampermonkey, which does the job for you.

tl;dr,

  1. download your script with one of the download buttons on this page
  2. install the tampermonkey extension/add‑on/whatever for your local browser
  3. open the extension's interface and click "create a new script…"
  4. remove all pre‑filled code (including the metadata section at the top)
  5. paste in the downloaded script & save