Here's how you could create custom error classes in Node.js using latest ES6 / ES2015 syntax.
I've tried to make it as lean and unobtrusive as possible.
errors/AppError.js
# GIT heart FZF | |
# ------------- | |
is_in_git_repo() { | |
git rev-parse HEAD > /dev/null 2>&1 | |
} | |
fzf-down() { | |
fzf --height 50% --min-height 20 --border --bind ctrl-/:toggle-preview "$@" | |
} |
No need for homebrew or anything like that. Works with https://www.git-tower.com and the command line.
gpg --list-secret-keys
and look for sec
, use the key ID for the next stepgit
to use GPG -- replace the key with the one from gpg --list-secret-keys
require 'net/http' | |
require 'json' | |
require 'uri' | |
@token = '' | |
def list_files | |
ts_to = (Time.now - 30 * 24 * 60 * 60).to_i # 30 days ago | |
params = { | |
token: @token, |
# Fix agent forwarding | |
# https://gist.github.com/martijnvermaat/8070533 | |
# http://techblog.appnexus.com/2011/managing-ssh-sockets-in-gnu-screen/ | |
# See .ssh/rc for socket linking | |
unsetenv SSH_AUTH_SOCK | |
setenv SSH_AUTH_SOCK $HOME/.ssh/ssh_auth_sock.$HOSTNAME |
#!/usr/bin/env bash | |
# -r 60: 60 FPS | |
# -y: rewrite output file | |
# -start_number 11555: first frame number | |
# -i 'G%07d.JPG': file format | |
# -vf "crop=h=2250": video filter to crop input frame height from 3000 to 2250 (which will be eventually downscaled to 720) | |
# -c:v libx264: video codec x264 | |
# -crf 20: x264 encoding quality (less = better) | |
# -s 1280x720: output size |
#!/usr/bin/env bash | |
source tc-props.bash | |
echo "Running on $agent_name" | |
echo "Deploying $org_app_version to $org_deploy_server..." | |
# ... |
var isTimeStamp = (function(MAX_INT) { | |
return function(number) { | |
return parseInt(number, 10) > MAX_INT; | |
}; | |
})(Math.pow(2, 31) - 1); |
// [B](f: (A) ⇒ [B]): [B] ; Although the types in the arrays aren't strict (: | |
Array.prototype.flatMap = function(lambda) { | |
return Array.prototype.concat.apply([], this.map(lambda)); | |
}; |
console.highlight = function(text, sample) { | |
var escapedSample = sample.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); | |
var reSample = new RegExp(escapedSample, 'g'); | |
var args = ['']; | |
var highlightedText = text.replace(reSample, function(match) { | |
args.push('background-color: #ffc', 'background-color: none'); | |
return '%c' + match + '%c'; | |
}); | |
args[0] = highlightedText; | |
console.log.apply(console, args); |