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
#pragma once | |
#include <glm/glm.hpp> | |
template<typename T> | |
class Tween { | |
public: | |
Tween(float speed = 1.0) | |
: _value(T()), | |
_target(T()), |
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
#!/bin/bash | |
prettier=$(npm bin)/prettier | |
git diff --cached --name-status src/ | while read -r status filename; do | |
# skip deleted files | |
if [[ "$status" == "D" ]]; then continue; fi | |
if [[ "$filename" =~ \.jsx?$ ]]; then | |
"$prettier" --single-quote --no-bracket-spacing --write "$filename" || exit 1 |
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 lerp(a, b, t) { | |
return a + t * (b - a); | |
} | |
function mix(a, b, t) { | |
return a.map((v, i) => lerp(v, b[i], t)); | |
} | |
function clamp(x, min, max) { | |
if (x < min) { return min; } |
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
require 'io/console' | |
require 'pp' | |
files = Dir["*"].sort | |
MAX_COLUMNS = 9 | |
MAX_COLUMNS.downto(1) do |i| | |
columns = files.each_slice(i).map { |x| Array.new(i) { |n| x[n] } } | |
rows = columns.transpose |
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/bin/env ruby | |
require 'shellwords' | |
FIELDS = %w(artist album name duration spotify\ url).map { |x| "#{x} of current track" }.join(' & "\\n" & ') | |
SCRIPT =<<EOF | |
tell application "Spotify" | |
#{FIELDS} | |
end tell |
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
'use strict'; | |
const fs = require("fs"); | |
function leftPad(str, length, chr) { | |
str = str.toString(); | |
if (str.length >= length) { | |
return str; | |
} |
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
# Put this in your project root and create a symlink from ~/.tmuxinator/projectname.yml | |
name: <%= File.basename(path, '.*') %> | |
root: <%= | |
begin | |
File.dirname(File.readlink(path)) | |
rescue | |
puts "#{path} should be symlinked from your project root." | |
exit 1 | |
end |
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/bin/env ruby | |
filename = ARGV[0] | |
branch_name = `git rev-parse --abbrev-ref HEAD` | |
issue = branch_name[/^[A-Z]+-\d+/] | |
if issue | |
contents = File.read(filename) | |
File.write(filename, "#{ issue }:\n#{ contents }") | |
end |
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
var debugArgsPatch = (object, property) => { | |
if (typeof object[property] !== 'function') { | |
throw `Object does not have the function ${property}`; | |
} | |
var origFunc = object[property]; | |
object[property] = (...args) => { | |
console.log(`Call ${property}:`, args); | |
var ret = origFunc.apply(object, args); |
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
require 'shellwords' | |
class Blamify | |
PORCELAIN_COMMIT_HASH_RE = /^(?<hash>\h{40})\s/ | |
PORCELAIN_LINE_RE = /^\t(?<line>.*)$/ | |
COLORS = (237..255).to_a # Greyscale gradient | |
def initialize(filename) | |
@filename = filename | |
end |
NewerOlder