Skip to content

Instantly share code, notes, and snippets.

View zaius's full-sized avatar

David Kelso zaius

  • Beyond @1024inc
  • San Francisco
  • 02:49 (UTC -07:00)
View GitHub Profile
@zaius
zaius / unbundled_require.rb
Created May 9, 2012 08:48
Allow requiring of global gems from outside of the Gemfile
# Include this in your .irbrc
def unbundled_require(gem)
if defined?(::Bundler)
spec_path = Dir.glob("#{Gem.dir}/specifications/#{gem}-*.gemspec").last
if spec_path.nil?
warn "Couldn't find #{gem}"
return
end
spec = Gem::Specification.load spec_path
@zaius
zaius / .tmux.conf
Last active December 17, 2015 22:38
basic zshrc
# Remap prefix to ctrl-s - keeps ctrl-a free for start of line
set -g prefix C-s
unbind C-b
# Keep consistent with screen behavior
bind C-s last-window
bind C-d detach
bind C-c new-window
bind C-r source-file $HOME/.tmux.conf
@zaius
zaius / hostcheck.rb
Created July 1, 2013 21:10
Website monitoring with SMS notifications
#!/usr/bin/env ruby
require 'curb'
require 'yaml'
hosts = %w(
example.com
google.com
)
@zaius
zaius / handlebars.rb
Created November 20, 2013 21:51
Serving ember templates from rails
# Put in config/initializers/handlebars.rb
# Add templates to app/assets/javascripts/templates/whatever.js.handlebars
# Then require from applicaiton.js (or any manifest) as usual. e.g.
# //= require_tree templates
class EmberHandlebars < Tilt::Template
def self.default_mime_type
'application/javascript'
end
@zaius
zaius / post.js.coffee
Created December 3, 2013 22:16
Relationship mixin factory
App.Post = App.Model.extend App.RelationshipMixinFactory('comments'),
comments: DS.hasMany('comment', async: true)
@zaius
zaius / runner.js.coffee
Created March 10, 2014 05:21
Broccoli runner
fs = require 'fs'
util = require 'util'
{spawn} = require 'child_process'
steps = []
# NOTE: can't use console to output as it's buffered.
log = (args...) ->
out = process.stdout.write args.join(' ') + '\n'
@zaius
zaius / rage.txt
Created April 19, 2014 02:39
ruby and newlines
zaius@pro:~$ irb
irb(main):001:0> (2 +
irb(main):002:1* 3)
=> 5
irb(main):003:0> (2
irb(main):004:1> +3)
=> 3
@zaius
zaius / deep.js.coffee
Created April 28, 2014 08:40
Deep hard link / copy
fs = require 'fs'
path = require 'path'
RSVP = require 'rsvp'
rimraf = require 'rimraf'
mkdirp = require 'mkdirp'
walkSync = require 'walk-sync'
# Passing in a srcDir allow us to know where the path should be relative to.
# This means we can autocreate subdirectories for all files.
exports.linkFiles = (files, srcDir, destDir) ->
@zaius
zaius / keybase.md
Created July 2, 2014 04:22
Keybase

Keybase proof

I hereby claim:

  • I am zaius on github.
  • I am davidkelso (https://keybase.io/davidkelso) on keybase.
  • I have a public key whose fingerprint is 2B2C 209F BCC0 BF21 4234 7292 7427 8BD5 9B48 8C48

To claim this, I am signing this object:

@zaius
zaius / var is weird.js
Created December 10, 2014 01:41
Javascript var
var foo = 1;
var bar = 1;
(function() {
console.log(foo, bar)
var bar = 2
foo = 2
console.log(foo, bar)
})()