This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
window.addEventListener("DOMContentLoaded", () => { | |
const listener = e => e.stopPropagation(); | |
const query = () => document.querySelectorAll('a[target=_blank]').forEach(a => { | |
a.removeEventListener('click', listener); | |
a.addEventListener('click', listener, true); | |
}); | |
setInterval(query, 400); // wait time between DOM queries, in milliseconds | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/local/bin/python3 | |
import urllib.request as urllib2 | |
import sys | |
import simplejson | |
from datetime import datetime | |
import time | |
# Get a token from buxfer: | |
# https://www.buxfer.com/api/login?userid={your user ID}&password={your password} | |
# Optionally, https://www.buymeacoffee.com/dzeevg |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function saveAllItemsForLater() { | |
var query = document.querySelectorAll("input[data-action='save-for-later']"); | |
var last = query[query.length-1] | |
if (query.length) { last.click(); } | |
if (query.length > 1) { setTimeout(saveAllItemsForLater, 100); } | |
else { console.log('Finished'); } | |
} | |
saveAllItemsForLater(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* 0129 */ | |
#timer { position: absolute; top: 0px; left: 0%; height: 6px; } | |
#hud { font-family: system-ui; position: fixed; top: 10px; color: white; font-size: 18px; width: calc(100vw - 370px); left: 230px; text-align: center; line-height: 1; display: flex; } | |
#hud .hudItem:first-child {float: left;text-align: left;} | |
#hud .hudItem:last-child { float: right; text-align: right; } | |
.hudItem { display: inline-grid; padding: 0px 10px; width: 100%; } | |
.hudItem .t1 { font-size: 14px; text-transform: uppercase} | |
.hudItem .t2 { font-size: 34px; } | |
#hudNextPunch { cursor: pointer; } | |
#hudNextPunch:hover { color: red; } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Save to... /Applications/Adobe Illustrator CC/Presets.localized/<LOCALE>/Scripts/ | |
// Polyfill for forEach | |
function forEach(array, fn, scope) { | |
scope = scope || array; | |
// array is cloned in order to allow mutations | |
// in `fn` but not suffer from them, so iteration | |
// keeps normally. | |
array = Array.prototype.slice.call(array,0); | |
for(var i = 0, len = array.length; i < len; i++) { |