Skip to content

Instantly share code, notes, and snippets.

@stevenhuey
stevenhuey / cocoapod64bit
Created March 11, 2014 17:27
Remove 64-bit build architecture from Pods targets
# Remove 64-bit build architecture from Pods targets
# http://cameronspickert.com/2014/01/20/remove-the-arm64-architecture-from-cocoapods-targets.html
post_install do |installer|
installer.project.targets.each do |target|
target.build_configurations.each do |configuration|
target.build_settings(configuration.name)['ARCHS'] = '$(ARCHS_STANDARD_32_BIT)'
end
end
end
on alfred_script(q)
tell application "Mail"
activate
-- Accounts
set AnL to account "A&L"
set GMail to account "GMail"
set FastMail to account "FastMail"
-- Personal Email
@stevenhuey
stevenhuey / dweet
Created August 12, 2014 18:31
Sample dweet
{
"this": "succeeded",
"by": "dweeting",
"the": "dweet",
"with": {
"thing": "{thing_name}",
"created": "2014-01-15T17:28:42.556Z",
"content": {
"hello": "world",
"foo": "bar"
@stevenhuey
stevenhuey / gist:3023783
Created June 30, 2012 13:41
AVPlayer KVO
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if ([keyPath isEqualToString:@"status"])
{
if (AVPlayerItemStatusReadyToPlay == _player.currentItem.status)
{
[_player play];
}
}
}
@stevenhuey
stevenhuey / gist:3023786
Created June 30, 2012 13:42
Slider Action
// Action for our 4 sliders
- (IBAction)mix:(id)sender
{
UISlider* slider = (UISlider*)sender;
[self setVolume:slider.value
forTrack:[NSString stringWithFormat:@"track%d", slider.tag]];
[self applyAudioMix];
}
@stevenhuey
stevenhuey / gist:3023789
Created June 30, 2012 13:43
Set the volume
// Set the volumne (0.0 - 1.0) for the given track
- (void)setVolume:(float)volume forTrack:(NSString*)audioTrackName
{
[_audioMixValues setValue:[NSNumber numberWithFloat:volume] forKey:audioTrackName];
}
@stevenhuey
stevenhuey / gist:3023792
Created June 30, 2012 13:44
Set the audio mix
// Build and apply an audio mix using our volume values
- (void)applyAudioMix
{
AVMutableAudioMix* mix = [AVMutableAudioMix audioMix];
NSMutableArray* inputParameters = [[NSMutableArray alloc] initWithCapacity:0];
[_audioMixTrackIDs enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL*stop) {
AVAssetTrack* track = [self trackWithId:(CMPersistentTrackID)[(NSNumber*)obj integerValue]];
@stevenhuey
stevenhuey / CBCosmDatastream.m
Created October 25, 2012 14:58
After Mantle
@implementation CBCosmDatastream
#pragma mark - Mantle
+ (NSDictionary *)externalRepresentationKeyPathsByPropertyKey
{
return [super.externalRepresentationKeyPathsByPropertyKey mtl_dictionaryByAddingEntriesFromDictionary:@{
@"datastreamId": @"id",
@"updated": @"at",
@"value": @"current_value",
@stevenhuey
stevenhuey / CBCosmDatastream.m
Created October 25, 2012 14:57
Before Mantle
@implementation CBCosmDatastream
- (id)initWithAttributes:(NSDictionary*)attributes
{
self = [super init];
if (self)
{
if (!attributes)
{
@stevenhuey
stevenhuey / sugar2.m
Created December 7, 2012 19:29
ObjectiveSugar2
NSArray *cars = [@"Testarossa", @"F50", @"F458 Italia"];
// or NSSet *cars = [NSSet setWithObjects:@"Testarossa", @"F50", @"F458 Italia", nil];
[cars map:^id(id car){
return @([[car substringToIndex:1] isEqualToString:@"F"]);
}];
// NO (Testarossa)
// YES (F50)
// YES (F458 Italia)