Skip to content

Instantly share code, notes, and snippets.

View samkaufman's full-sized avatar

Sam Kaufman samkaufman

View GitHub Profile
@samkaufman
samkaufman / syncbg2.sh
Created March 21, 2015 06:16
A little shell script for syncing Baldur's Gate II save games between my iPad and Mac
#!/bin/sh
# mount
#IPADMOUNTPATH=$(mktemp -d 2>/dev/null || mktemp -d -t bg2mnt)
IPADMOUNTPATH=~/syncbg2mnt # use a constant directory so Unison achive files aren't confused
mkdir "$IPADMOUNTPATH" || exit 1
ifuse "$IPADMOUNTPATH" --container com.overhaulgames.baldursgateIIenhancededition || exit 2
# sync
IPADSAVEPATH=${IPADMOUNTPATH%%/}/Library/save
@samkaufman
samkaufman / assockey-snippet.mm
Created February 12, 2013 17:10
An Xcode snippet implementing a category property that wraps an associated object. (Instance variables in categories, basically.)
static const void *<#Capitalized name#>AssociationKey;
- (<#Type#> *)<#Name#> {
return objc_getAssociatedObject(self, &<#Capitalized name#>AssociationKey);
}
- (void)set<#Name#>:(<#Type#> *)newObject {
objc_setAssociatedObject(self, &<#Capitalized name#>AssociationKey, newObject, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
@samkaufman
samkaufman / gist:4108681
Created November 19, 2012 02:40
Hack to record web.py exceptions for New Relic Agent
# Record handler exceptions for New Relic
def _new_internalerror(orig_internalerror):
def inner():
e = orig_internalerror()
if isinstance(e, web.webapi._InternalError):
e.orig_exc_info = sys.exc_info()
return e
return inner
def catch_and_report_exceptions(handler):
try: