Skip to content

Instantly share code, notes, and snippets.

Stephen Underwood sphvn

Block or report user

Report or block sphvn

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
@sphvn
sphvn / traverse.js
Last active Oct 1, 2019
Recursively traverse object javascript, recurse json js, loop and get key/value pair for JSON
View traverse.js
var traverse = function(o, fn) {
for (var i in o) {
fn.apply(this,[i,o[i]]);
if (o[i] !== null && typeof(o[i])=="object") {
traverse(o[i], fn);
}
}
}
// usage
@sphvn
sphvn / branch-switching.md
Last active Jun 19, 2018
branch switching
View branch-switching.md
View AdventOfCode-Day4.ls
# Day Four in Node for fun
# http://adventofcode.com/2017/day/4/
require! "fs"
require! 'prelude-ls': {lines, words, zip, map, filter, unique}
length = (.length)
sort = (.split('').sort().join(''))
input = map words, lines (fs.read-file-sync "input.txt", 'utf-8')
sorted = map ((x) -> map ((y) -> sort y), x), input
View prelude-browser-min.js
// Generated by LiveScript 1.4.0
// prelude.ls 1.1.2
// Copyright (c) George Zahariev
// Released under the MIT License
// https://raw.githubusercontent.com/gkz/prelude-ls/master/LICENSE
require=function n(r,t,e){function u(o,a){if(!t[o]){if(!r[o]){var c=typeof require=="function"&&require;if(!a&&c)return c(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=t[o]={exports:{}};r[o][0].call(f.exports,function(n){var t=r[o][1][n];return u(t?t:n)},f,f.exports,n,r,t,e)}return t[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<e.length;o++)u(e[o]);return u}({1:[function(n,r,t){
// Generated by LiveScript 1.4.0
var e,u,i,o,a,c,f=[].slice,l={}.toString;e=s(function(n,r){return n.apply(null,r)});u=function(n){return s(n)};i=s(function(n,r,t){return n(t,r)});o=function(n){return function(r){return function(){return n(r(r)).apply(null,arguments)}}(function(r){return function(){return n(r(r)).apply(null,arguments)}})};a=s(function(n,r,t,e){return n(r(t),r(e))});c=function(n){va
View fb-custom-audiences.js
// FB curl example
// curl \
// -F 'pixel_id=<PIXEL_ID>' \
// -F 'name=My New Website Custom Audience' \
// -F 'subtype=WEBSITE' \
// -F 'retention_days=15' \
// -F 'rule={"url":{"i_contains":"shoes"}}' \
// -F 'prefill=1' \
// -F 'access_token=<ACCESS_TOKEN>' \
// https://graph.facebook.com/v2.7/act_<AD_ACCOUNT_ID>/customaudiences
@sphvn
sphvn / Main.hs
Last active Feb 10, 2016
Example of using Haskell Snap for File / Directory Serving with Routes.
View Main.hs
{-# LANGUAGE OverloadedStrings #-}
module Main where
import qualified Data.HashMap.Strict as H
import qualified Data.ByteString.Char8 as C
import Control.Applicative ((<|>))
import Snap.Core
import Snap.Util.FileServe
import Snap.Http.Server (quickHttpServe)
import Snap.Util.GZip (withCompression)
@sphvn
sphvn / nyanicon.js
Created Nov 21, 2011
Animooted Nyan Favicon
View nyanicon.js
// *** First of all the Favicon.js, Favicon.js - [http://ajaxify.com/run/favicon] ***
var favicon = {
defaultPause: 500,
change: function(iconURL, optionalDocTitle) {
clearTimeout(this.loopTimer);
if (optionalDocTitle) {
document.title = optionalDocTitle;
}
this.addLink(iconURL, true);
},
@sphvn
sphvn / export modified files from git
Created Aug 7, 2014
git export changed files between hashes
View export modified files from git
sudo git checkout-index `git diff --name-only SHA1 SHA2` -f --prefix=/directory/
You can’t perform that action at this time.