Tested in Mac OS X: super == command
Open/Goto
- super+t: go to file
- super+ctrl+p: go to project
- super+r: go to methods
{ | |
"AL": "Alabama", | |
"AK": "Alaska", | |
"AS": "American Samoa", | |
"AZ": "Arizona", | |
"AR": "Arkansas", | |
"CA": "California", | |
"CO": "Colorado", | |
"CT": "Connecticut", | |
"DE": "Delaware", |
#!/usr/bin/env node | |
var cmds = []; | |
if (process.argv.length < 3) { | |
console.log('You need to provide a commit message!'); | |
process.exit(-1); | |
} | |
cmds.push('git add -A'); | |
cmds.push('git add -u'); |
Homebrew (https://github.com/mxcl/homebrew/wiki/installation) | |
brew install postgres | |
brew install gdal --with-postgres (EDIT THE FORMULA FIRST, see https://github.com/mxcl/homebrew/issues/8301) | |
brew install postgis | |
edit /etc/paths to put /usr/local/bin on top, so that lion's psql doesnt win | |
PostGIS templates (based on https://wiki.archlinux.org/index.php/PostGIS) | |
createdb template_postgis -E UTF8 | |
createlang plpgsql template_postgis | |
psql -d template_postgis -f /usr/local/share/postgis/postgis.sql |
umd(function(require, exports, module) { | |
//... | |
},'my-module');function umd(fn,n){ | |
if(typeof define=='function')return define(fn); // AMD | |
if(typeof module=='object')return fn(require,exports,module); // CommonJS | |
var m={exports:{}};window[n]=fn(function(n){return window[n];},m.exports,m)||m.exports; // window | |
} |
#!/bin/bash | |
# Bash script to install latest version of ffmpeg and its dependencies on Ubuntu 12.04 or 14.04 | |
# Inspired from https://gist.github.com/faleev/3435377 | |
# Remove any existing packages: | |
sudo apt-get -y remove ffmpeg x264 libav-tools libvpx-dev libx264-dev | |
# Get the dependencies (Ubuntu Server or headless users): | |
sudo apt-get update |
You don't really need a framework or fancy cutting-edge JavaScript features to do two-way data binding. Let's start basic - first and foremost, you need a way to tell when data changes. Traditionally, this is done via an Observer pattern, but a full-blown implementation of that is a little clunky for nice, lightweight JavaScript. So, if native getters/setters are out, the only mechanism we have are accessors:
var n = 5;
function getN() { return n; }
function setN(newN) { n = newN; }
console.log(getN()); // 5
setN(10);
const isAutoplaySupported = function (callback) { | |
var timeout; | |
var waitTime = 200; | |
var retries = 5; | |
var currentTry = 0; | |
var elem = document.createElement('video'); | |
var elemStyle = elem.style; | |
function testAutoplay(arg) { | |
currentTry++; |