Skip to content

Instantly share code, notes, and snippets.

View kirkegaard's full-sized avatar

Christian Kirkegaard kirkegaard

View GitHub Profile
@kirkegaard
kirkegaard / imgur.sh
Created December 30, 2020 02:58
Upload images to imgur from cli and save it in paste buffer
imgur() {
res=$(curl -sSF image=@$1 https://api.imgur.com/3/upload |jq -r '.data.link')
echo $res |pbcopy
echo $res
}
// Canvas things
const canvas = document.querySelector("#snow");
const ctx = canvas.getContext("2d");
let ctxLayers = [];
let ctxHeight = 0;
let ctxWidth = 0;
// FPS things
const FPS = 60;
const FPS_TIME = (1000 / 60) * (60 / FPS) - (1000 / 60) * 0.5;
const getWeekNumber = (date) => {
const pd = new Date(date);
const sj = new Date(pd.getFullYear(), 0, 1);
const wk = Math.ceil((((pd - sj) / 86400000) + sj.getDay() + 1) / 7);
return wk;
}
console.log(
getWeekNumber('2020-01-01'),
getWeekNumber('2020-01-14'),
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hader georgehale</title>
<style>
tr:nth-last-child(9) { opacity: 0.9; }
tr:nth-last-child(8) { opacity: 0.8; }
tr:nth-last-child(7) { opacity: 0.7; }
tr:nth-last-child(6) { opacity: 0.6; }
@kirkegaard
kirkegaard / news.ycombinator.com.css
Last active May 31, 2020 21:51
hackernews dark mode
::selection {
background-color: #111;
color: #eee;
}
body {
background-color: #222;
}
#hnmain {
import math
import struct
import wave
import sys
w = wave.open(sys.argv[1], 'rb')
sum = 0
value = 0;
delta = 0;
amps = []
import argparse
import os
import re
import string
import subprocess
import sys
from shutil import which, copyfileobj
from urllib import request
from html.parser import HTMLParser
#!/bin/bash
json=$(curl -s "http://ws.audioscrobbler.com/2.0/?method=user.getRecentTracks&api_key=$LASTFM_APIKEY&user=$LASTFM_USERNAME&format=json")
artist=$(echo $json | jq -r '.recenttracks.track[0].artist["#text"]')
song=$(echo $json | jq -r '.recenttracks.track[0].name')
echo "♫ $artist - $song"
@kirkegaard
kirkegaard / plex-streams.sh
Last active July 30, 2019 13:21
Displays the current streams on plex
#!/bin/sh
PLEX_TOKEN=$(curl -H "Content-Length: 0" -H "X-Plex-Client-Identifier: my-app" -u $PLEX_USERNAME:$PLEX_PASSWORD -X POST https://my.plexapp.com/users/sign_in.xml --silent | xmllint --xpath "/user/authentication-token/text()" -)
XML=$(curl --silent http://$PLEX_HOST:32400/status/sessions -H "X-Plex-Token: $PLEX_TOKEN")
STREAMS=$(echo $XML | xmllint --xpath 'string(//MediaContainer/@size)' -)
echo "Current streams: ${STREAMS}"
for (( i=1; i <= $STREAMS; i++ )); do
USER=$(echo $XML | xmllint --xpath 'string(//Video['$i']/User/@title)' -)
@kirkegaard
kirkegaard / m2embed.php
Last active January 31, 2019 10:38
m2embed
<?php
$title = (isset($_GET['t'])) ? $_GET['t'] : false;
$content = (isset($_GET['s'])) ? $_GET['s'] : false;
$providers = [
'drop' => [
'regex' => '/https?:\/\/files\.m2film\.dk\/(.*)/',
'embed' => '<video controls src="https://files.m2film.dk/{code}&video=true"></video>',
],