Skip to content

Instantly share code, notes, and snippets.

View matyasfodor's full-sized avatar
🦕

Mátyás Fodor matyasfodor

🦕
  • BenevolentAI
  • London
View GitHub Profile
function detectWebkitRequestFileSystem(e, t) {
return new Promise(function(e) {
if (!window.webkitRequestFileSystem)
return e(null);
window.webkitRequestFileSystem(window.TEMPORARY, 1, e.bind(null, !1), e.bind(null, !0))
}
)
}
MIT License
Copyright (c) 2017 Mátyás Fodor
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
@matyasfodor
matyasfodor / perfTest_forEach_vs_Map.js
Created January 31, 2018 15:08
Comparison of forEach and map
function arr(n) {
return Array(n+1).join(1).split('');
}
const a = arr(1000000)
a[100] = 2
a[1000] = 2
a[10000] = 2
// ==UserScript==
// @name Trello TODO list
// @namespace Trello
// @version 0.1
// @description Fit 5 columns into a 13" Macbook screen
// @author Matyas Fodor
// @match https://trello.com/*
// @grant none
// ==/UserScript==
@matyasfodor
matyasfodor / sortSoAnswers.js
Created March 22, 2018 08:10
Tampermonkey script that sorts SO answers in descending order by vote count. The accepted answer is the first one.
// ==UserScript==
// @name Sort Answers
// @namespace TBD
// @version 1.0.0.1
// @description sorts SO answers in descending order by vote count. The accepted answer is the first one.
// @author matyasfodor
// @include /https?:\/\/(meta\.)?stackoverflow\.com/questions/.*/
// @grant none
// ==/UserScript==
/* jshint -W097 */
@matyasfodor
matyasfodor / fb-apps-remover.js
Created April 6, 2018 07:11
These are the commands I used to remove the apps added to my facebook. I didn't have time to wrap it up, so use it as an inspiration, but It's likely that it won't work as it is.
var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
script.src = "//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js";
head.appendChild(script);
var a = $('span.rfloat');
const sizedArray = (n) => Array(n).fill();
const times = (n, cb) => {
while (0 < n--) {
cb();
}
}
const fillWithCb = (n, cb) => sizedArray(n).map(cb);
// ==UserScript==
// @name Netflix Subtitles On Top
// @namespace https://www.netflix.com/
// @version 0.1
// @description places the subs to the top of the screen
// @author @matyasfodor
// @match https://www.netflix.com/*
// @grant GM_addStyle
// ==/UserScript==
@matyasfodor
matyasfodor / assign_vs_reduce.js
Created October 9, 2018 11:31
Performance test for assign vs reduce
const randString = () => Math.random().toString(36).substring(7);
const gen = (n) =>
new Array(n).fill(1).map(() => ({key: randString(), value: Math.random()}));
const array1 = gen(100);
const array2 = gen(1000);
const array3 = gen(100000);
const assign = (arr) =>
@matyasfodor
matyasfodor / incognitoTrick.js
Created December 27, 2017 04:43
Tampermonkey script to fake incognito check
// ==UserScript==
// @name Incognito trick
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Prevent sites detecting if you're in incognito by calling the success callback of webkitRequestFileSystem even if it's failing.
// @author You
// @run-at document-start
// @match *://*/*
// @grant none
// ==/UserScript==