Skip to content

Instantly share code, notes, and snippets.

@ryanemmm
ryanemmm / pimp_prompt.sh
Created September 15, 2019 18:31 — forked from jamiew/pimp_prompt.sh
put this in your .bashrc/.bash_profile... works with both git and svn
parse_git_branch() {
ref=$(git symbolic-ref -q HEAD 2> /dev/null) || return
printf "${1:-(%s)}" "${ref#refs/heads/}"
}
parse_svn_revision() {
local DIRTY REV=$(svn info 2>/dev/null | grep Revision | sed -e 's/Revision: //')
[ "$REV" ] || return
[ "$(svn st)" ] && DIRTY=' *'
echo "(r$REV$DIRTY)"
@ryanemmm
ryanemmm / git-retag.bash
Last active May 22, 2023 17:34
move a git tag to HEAD
# bash/zsh
##
# git-retag.bash
# ** you're proabably not supposed to do this **
# move an existing tag from <old commit> to HEAD
#
# use it like this: `retag <tagname>`
#
@ryanemmm
ryanemmm / stuff-i-forget
Last active April 17, 2019 21:41
stuff i always forget and have to google for
# git: delete local + remote tag
git tag -d TagName && git push origin :refs/tags/TagName
# git: checkout file from a different branch
git checkout <branch_name> -- <paths>
http://nicolasgallagher.com/git-checkout-specific-files-from-another-branch/
# vim: find instances of uncommented out console statements
search mode / then \(\/\/.*\)\@<!console
@ryanemmm
ryanemmm / toggle-vpn
Created April 29, 2017 18:02
toggle vpn connection from spotlight/launcher cuz I'm lazy
# adapted from: https://gist.github.com/adgedenkers/3874427
# VPN_NAME is the name of your vpn
-- adapted from https://gist.github.com/adgedenkers/3874427
tell application "System Events"
-- start playing with the VPN
tell current location of network preferences
-- set the name of the VPN service from your Network Settings
set VPNService to service "VPN_NAME"
-- determine current VPN connection status
# from: http://blog.pivotal.io/labs/labs/a-simple-way-to-detect-unused-files-in-a-project-using-git
# `git ls-files` -> get a list of files from a directory
# `git grep` + loop -> check for reference to file in repo
# list or remove the file
# dry run: just list the unused files
for FILE in $(git ls-files ./img); do
git grep $(basename "$FILE") > /dev/null || echo "would remove $FILE"
done
@ryanemmm
ryanemmm / bouncebluetooth
Created November 21, 2014 20:34
bounce bluetooth (trying to reconnect mouse)
#bounce bluetooth
set unload to "kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport"
set load to "kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport"
do shell script unload with administrator privileges
do shell script load with administrator privileges
@ryanemmm
ryanemmm / atm_to_psi
Created September 14, 2014 09:38
atmospheres to psi conversion
atm = psi
============
1.0 = 14.696
1.1 = 16.166
1.2 = 17.635
1.3 = 19.105
1.4 = 20.574
1.5 = 22.044
1.6 = 23.514
1.7 = 24.983
@ryanemmm
ryanemmm / digicert_chat
Created July 29, 2014 22:42
os x 10.9.4 ssl problems...
/*
I ran into a problem trying to go to https://github.com using Google Chrome
where I'd get an ssl/security warning saying the certificate is not trusted.
I tracked this down to an expired Digicert Certificate.
After chasing around the web, one solution I saw was to reinstall the os x
10.9.2 update. But that won't work, cuz I'm on 10.9.4.
TL;DR: I chat w/ Logan over at Digicert... Boom. Fixed. Thanks Logan!
@ryanemmm
ryanemmm / example
Last active August 29, 2015 13:57
angular directive data binding
/*
I have a directive (errorhandler, see below) that is restricted to Element and Attribute
Currently, I've got two separate two way bindings, and two separate watchers:
one for the element case, one for the attribute case
** Is there a way to conditionally set the directives isolate scope?
scope : {
errors : "=????" //use errorhandler value if available, else use @error value
@ryanemmm
ryanemmm / angularjs_coinbase_button
Last active February 27, 2018 02:05
Implement coinbase button (html + js tag) in Angularjs view
# Used a directive to inject a 'hook' element
# + javascript tag that consumes/acts on said
# 'hook' via an anon, self-exececuting fn that
# fires when the script loads.
#
# The problem this solves is a race condition
# where the javascript executes prematurely
# and throws a SAMEORIGIN error.
<!-- html/directive call -->