Skip to content

Instantly share code, notes, and snippets.

Bill Thornton thornbill

Block or report user

Report or block thornbill

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
@thornbill
thornbill / publishing.md
Created May 26, 2019
Jellyfin ApiClient.js publishing guide
View publishing.md
@thornbill
thornbill / Caddyfile
Last active Feb 15, 2019
Caddyfile for Jellyfin
View Caddyfile
jellyfin.thornton.lan,
jf.thornton.lan {
# proxy to the docker container
proxy / jellyfin:8096 {
websocket
}
}
@thornbill
thornbill / .gitlab-ci.yml
Created Nov 22, 2016
Example Node GitLab CI Yamlfile
View .gitlab-ci.yml
# Official framework image. Look for the different tagged releases at:
# https://hub.docker.com/r/library/node/tags/
image: node:6
before_script:
- npm install
# This folder is cached between builds
# http://docs.gitlab.com/ce/ci/yaml/README.html#cache
cache:
View keybase.md

Keybase proof

I hereby claim:

  • I am thornbill on github.
  • I am thornbill (https://keybase.io/thornbill) on keybase.
  • I have a public key whose fingerprint is 1C10 E633 38B3 11CE DB7E FBD0 A7B1 5071 CEF5 AB38

To claim this, I am signing this object:

@thornbill
thornbill / nvm_update.sh
Created Feb 10, 2016
Bash function to update installed node.js versions in nvm
View nvm_update.sh
nvm_update() {
for NVM_UPDATE_VER in 0.10 0.12 4 5
do
# Install the latest versions of node only if they are already installed
nvm which $NVM_UPDATE_VER &>/dev/null && nvm install $NVM_UPDATE_VER
done
# Switch back to the default version of node
echo "Switching to default version of node..."
nvm use default
}
View sudoku
% helper predicates
square_to_subgrid(Row, Col, Subgrid) :-
floor((Row - 1)/3, RowBase),
floor((Col - 1)/3, ColBase),
Subgrid is 3 * RowBase + ColBase + 1.
one_to_nine(X) :-
member( X, [1, 2, 3, 4, 5, 6, 7, 8, 9] ).
next_square( Puzzle, Row, Col ) :-
one_to_nine(Row),
one_to_nine(Col),
@thornbill
thornbill / to_data_uri.sh
Last active Aug 29, 2015
Convert a jpg, png or gif to a data-uri
View to_data_uri.sh
#!/bin/bash
for file;
do
echo -e "\033[0;32m>> $file\033[0m"
if [ -e $file ]; then
_ext=${file##*.}
if [[ "gif png jpg jpeg" =~ $_ext ]]; then
if [ $_ext == "jpg" ]; then _ext="jpeg"; fi
php -r "echo(\"data:image/$_ext;base64,\".base64_encode(file_get_contents(\"$file\")).\"\\n\");"
else
@thornbill
thornbill / find_tables.js
Created Nov 12, 2014
Bookmarklet that highlights any table elements on a page
View find_tables.js
javascript:(function(d){function h(e){if(typeof e!=='object')return;function o(e){var _x=0,_y=0;while(e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop)){_x+=e.offsetLeft;_y+=e.offsetTop;e=e.offsetParent;}return {top:_y,left:_x};}var p=o(e);c(p.left,p.top,e.clientWidth,e.clientHeight);}function c(x,y,w,h){var e=d.createElement('div');e.style.zIndex='999999';e.style.background='rgba(255,0,0,0.6)';e.style.position='absolute';e.style.left=x+'px';e.style.top=y+'px';e.style.width=w+'px';e.style.height=h+'px';d.body.appendChild(e);}var t=d.getElementsByTagName('table'),i,l=t.length;for(i=0;i<l;i++){h(t[i]);console.log(t[i]);}})(document);
@thornbill
thornbill / check_jquery_version.js
Created Sep 16, 2014
Bookmarklet to Check the Version of jQuery
View check_jquery_version.js
javascript:(function(w){alert((w.jQuery&&w.jQuery.fn.jquery)||'none');})(window);
@thornbill
thornbill / remove_rand_style.js
Created Sep 11, 2014
Remove a random rule from a random stylesheet
View remove_rand_style.js
(function(document) {
function getRandomInt(max) {
return Math.floor(Math.random() * max);
}
var sheets = document.styleSheets,
sheet = sheets[getRandomInt(sheets.length-1)],
rules = sheet.cssRules,
rule = getRandomInt(rules.length-1);
You can’t perform that action at this time.