Skip to content

Instantly share code, notes, and snippets.

View AprilSylph's full-sized avatar

April Sylph AprilSylph

View GitHub Profile
@AprilSylph
AprilSylph / findClass.js
Created November 6, 2020 17:32
Reverse-lookup for Tumblr's CSS map
const findClass = classname => tumblr.getCssMap()
.then(Object.entries)
.then(entries => entries.filter(([name, classes]) => classes.includes(classname)))
.then(Object.fromEntries);
@AprilSylph
AprilSylph / no_twitter_trends.user.css
Created September 13, 2020 18:51
Hide the "What's happening" sidebar section on EN Twitter
@AprilSylph
AprilSylph / cartesian.js
Created August 4, 2020 14:20
Cartesian product without recursion
/**
* @param {...Object[]} arrays - one or more arrays
* @return {Object[]} The Cartesian product of the arrays
*/
const cartesian = (...arrays) => {
let product = arrays.shift().map(x => [x]);
for (const currentArray of arrays) {
const newProduct = [];
const getResponseText = response => {
if (response.ok) {
return response.text();
} else {
throw Object.assign(new Error(response.status), {response});
}
};
const getTumblrFormKey = () => fetch('/neue_web/iframe/new/text')
.then(getResponseText)
@AprilSylph
AprilSylph / markdownify.css
Last active May 17, 2020 16:46
make HTML display as markdown syntax
h1, h2, h3, h4, h5, h6 {
font-size: 1em !important;
font-weight: normal !important;
}
h1::before { content: "# " !important; }
h2::before { content: "## " !important; }
h3::before { content: "### " !important; }
h4::before { content: "#### " !important; }
h5::before { content: "##### " !important; }
@AprilSylph
AprilSylph / redirect.html
Created April 6, 2019 01:53
simulate "Redirect"-type page layout on Tumblr
<!DOCTYPE html>
<html>
<head>
<title>Redirecting...</title>
<script>
if (location.pathname !== "/customize_preview_receiver.html") {
location.replace("{TARGETURL}");
}
</script>
<meta name="description" content="This is a redirect to {TARGETURL}."/>
@AprilSylph
AprilSylph / console.icon.js
Last active August 6, 2019 11:55
XKit Extension
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAOSCAYAAACMcrQWAAAgAElEQVR4nO3dbayu6VnW8WN2GQcoVKpCpDUqLQo12Jr4WkCoVokGFHyJSY2xUWJCjBWipdU00WXFSqJGCk1rjaVQhaZtKiFVDMRETRSSWiOtYMDYBkK0xFHTlplxOjPs8cPaa7pnZu+118vznNd5n/fvn/y+X/f9XNmZY9Ze+0kkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZKkjferk3xlklcn+ZYkr0/yxiR/P8nbk/xgkvcCAEBj78npf7v+wyRvyul/0/6lJN+c5JVJfl1U3o0kvy3Jty
@AprilSylph
AprilSylph / skeleton.html
Last active January 4, 2019 06:26
Blank/Example/Reference Tumblr Theme
<!DOCTYPE html>
{block:Options}
<meta name="image:Image" content="https://static.tumblr.com/2wliono/hy7pfab69/aurora.png">
<meta name="color:Colour" content="#36465d">
<meta name="font:Font" content="Helvetica, Arial, sans-serif">
<meta name="select:Dropdown" content="Example Option 1">
<meta name="select:Dropdown" content="Example Option 2">
<meta name="select:Dropdown" content="Example Option 3">
<meta name="if:Boolean" content="1">
<meta name="text:Text" content="Example Input">
@AprilSylph
AprilSylph / dsiware.icon.js
Last active July 12, 2018 10:05
XKit Extension
https://78.media.tumblr.com/tumblr_pb84wkYuTo1rtgc6mo1_1530509782_cover.png
@AprilSylph
AprilSylph / banned.js
Last active August 6, 2021 16:17
XKit Extension
//* TITLE Banned! **//
//* VERSION 2.0.1 **//
//* DESCRIPTION Changes "Deactivated" labels to 4chan ban labels where appropriate **//
//* DEVELOPER AprilSylph **//
//* FRAME false **//
//* BETA false **//
XKit.extensions.banned = new Object({
running: false,