Skip to content

Instantly share code, notes, and snippets.

😔

Arno oelna

😔
Block or report user

Report or block oelna

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@oelna
oelna / svg-imagemap.html
Last active Nov 29, 2019
A simple example of responsive image maps with HTML and SVG
View svg-imagemap.html
<!DOCTYPE html>
<html>
<head>
<title>SVG image maps</title>
</head>
<body>
<!-- https://wiki.selfhtml.org/wiki/SVG/Tutorials/responsive_Imagemaps -->
<!-- https://n-peugnet.github.io/image-map-creator/ -->
@oelna
oelna / titles-v1.js
Last active Nov 29, 2019
A simple script to generate pseudo-random titles for an adventure game, a la One Page Dungeon
View titles-v1.js
/* outputs a simple string comprised of strings from a dictionary */
var game = window.game || {};
// inspired by https://watabou.itch.io/one-page-dungeon
game.titles = {
'typ': ['Temple', 'Prison', 'House', 'Mansion', 'Dungeon', 'World', 'Castle', 'Graveyard', 'Library', 'Water World'],
'adjektiv': ['Void', 'Blood', 'Burnt', 'Undead', 'Frozen', 'Night'],
'name': ['Queen', 'Prince', 'King', 'Delila']
}
@oelna
oelna / ha.sh
Created Nov 9, 2019
Ways to generate hashes on macOS (BSD)
View ha.sh
# shasum
## value of algorithm can be 1, 224, 256, 384, 512
## hash of string
echo -n "foobar" | shasum -a 256
## hash of file content
shasum -a 256 filename.ext
shasum --algorithm 256 /path/filename.ext
@oelna
oelna / hs_decode.py
Created Jun 11, 2019
Hearthstone decklist decode
View hs_decode.py
#!/usr/bin/python
# modified for brevity from https://github.com/HearthSim/python-hearthstone/blob/master/hearthstone/deckstrings.py
import base64
from io import BytesIO
from typing import IO, List, Tuple
DECKSTRING_VERSION = 1
@oelna
oelna / resize_images.sh
Created Sep 3, 2018
A bash script to batch resize images on macOS, possibly through an Automator Service (uses sips, ImageOptim)
View resize_images.sh
for f in "$@"
do
dir=$(dirname "${f}")
filename=$(basename -- "$f")
extension="${filename##*.}"
filename="${filename%.*}"
# array of pixel sizes (widths) to generate
sizes=(600 1200)
@oelna
oelna / applescript.scpt
Created Jun 21, 2018
macOS Automator Action to calculate file hashes
View applescript.scpt
on run {input, parameters}
with timeout of 360 seconds
tell application "System Events"
activate
display dialog input buttons {"OK"} default button 1 with title "File Hashes" giving up after 300 --seconds
end tell
end timeout
end run
@oelna
oelna / polychromie-architecturale.json
Created Apr 11, 2017
Le Corbusier's "Polychromie Architecturale" – all 63 colors as hex values, with their original name, ID and lightness coefficient (HBW) in a neat JSON array
View polychromie-architecturale.json
[
{
"hex":"fff1ce",
"name":"blanc",
"hbw":72,
"id":"32001",
"collection":1931
},{
"hex":"585d5e",
"name":"gris foncé 31",
@oelna
oelna / bingo.php
Last active Oct 28, 2019
A generator for unique Bingo cards in PHP. See in action https://bingo.arnorichter.de/ (generates cards printable on A4 paper size)
View bingo.php
<?php
/*
Generate however many unique bingo cards you require (should be fewer than 10k though).
This is not meant to compute ALL possible bingo cards, obviously, but to help set up a
nice amount of cards for play.
If you require a free space somewhere on the board, you should probably tweak the output,
not the generator.
I wrote this because existing solutions on stackoverflow were in languages I could not
test as easily and many existing generator websites generate crap cards that do not
adhere to the bingo number distribution in the 5 rows, so you spend an eternity looking
@oelna
oelna / Readme.md
Last active Jan 19, 2017
Clean an iTunes M4A audio track from all identifying/personal information with AtomicParsley and Python
View Readme.md

What is this

This python script is a radical attempt to remove all personal information from iTunes M4A audio tracks. All ID3 information will be lost in the process, sadly. You need to figure out a special offset in one of your audio files in a hex editor for this to work. If you are looking for a very simple solution, this is not your script.

If this helps you, please consider tipping to make up for the ridiculous amount of time I lost putting this together:
Gittip Flattr

Instructions for macOS (was OS X)

@oelna
oelna / closest.js
Created Nov 8, 2016
A vanilla javascript method that returns the closest DOM ancestor that matches a selector, or null.
View closest.js
var closest = function(selector, ele) {
if(!selector || !ele) return null;
//polyfill .matches()
if(Element && !Element.prototype.matches) {
Element.prototype.matches = Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if(ele.matches(selector)) return ele; //return self if it matches
You can’t perform that action at this time.