Skip to content

Instantly share code, notes, and snippets.

fabb

Block or report user

Report or block fabb

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@fabb
fabb / failure_test.hs
Created Apr 19, 2011
Some failure catching with the failure package
View failure_test.hs
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE DeriveDataTypeable #-}
import Control.Exception (Exception)
import Data.Typeable (Typeable)
import Control.Failure
@fabb
fabb / gource-multiple-repositories.sh
Created Sep 7, 2012 — forked from anonymous/gource-multiple-repositories.sh
Generates gource video out of multiple repositories.
View gource-multiple-repositories.sh
#!/usr/bin/env bash
# Generates gource video (h.264) out of multiple repositories.
# Pass the repositories in command line arguments.
# Example:
# <this.sh> /path/to/repo1 /path/to/repo2
i=0
for repo in $*; do
# 1. Generate a Gource custom log files for each repo. This can be facilitated by the --output-custom-log FILE option of Gource as of 0.29:
logfile="$(mktemp /tmp/gource.XXXXXX)"
View MFetchedResultsController.swift
//some time, frc section may be need section offset
@objc public protocol MFetchedResultsControllerOffsetSectionDelegate{
func offsetSection() -> Int
}
class MFetchedResultsController: NSFetchedResultsController, NSFetchedResultsControllerDelegate {
weak var viewController: UIViewController? //UITableViewController UICollectionViewController
weak var scrollView: UIScrollView? //TableView CollectionView
weak var offsetSectionDelegate: MFetchedResultsControllerOffsetSectionDelegate?
@fabb
fabb / gist:5014867
Last active Dec 14, 2015
Seemingly buggy behavior with PySCXML: the second event "f" is not received in most executions
View gist:5014867
import time
from scxml.pyscxml import StateMachine
import logging
logging.basicConfig(level=logging.NOTSET) # show detailed debug info
xml = '''
<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" datamodel="python" initial="S1">
<state id="S1">
<onentry>
@fabb
fabb / gist:5019653
Created Feb 23, 2013
Issue #4 in PySCXML: transition also exits & enters again unaffected states
View gist:5019653
import time
from scxml.pyscxml import StateMachine
import logging
logging.basicConfig(level=logging.NOTSET) # show detailed debug info
xml = '''
<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0">
<state id="main">
<onentry>
View SongPoll4.swift
import Foundation
struct Song {
let title: String
let length: Float
func withAddedAdvertisement() -> Song {
return Song(title: self.title + " plus commercial", length: self.length + 10)
}
}
View SongPoll3.swift
import Foundation
struct Song {
var title: String
var length: Float
mutating func addAdvertisement() {
self.title += " plus commercial"
self.length += 10
}
@fabb
fabb / gist:5908388
Created Jul 2, 2013
format current NSDate as ISO8601 string despite user's Calendar or 24-Hour-Format setting
View gist:5908388
- (NSString *)currentGregorianISO8601Date {
NSDate *requestDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
// WORKAROUND http://openradar.appspot.com/radar?id=1110403
[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"US"]];
// translate to Gregorian calendar if other calendar is selected
@fabb
fabb / archive_ipa.sh
Created Nov 1, 2014
Script to archive an ipa from commandline - depends on xctool
View archive_ipa.sh
#!/bin/bash
set -x
cd ${0%/*}/..
# codesigning and choosing of provisioning profile is configured via project settings and is dependent of build config
: ${BUILD_NUMBER:?"Need to set BUILD_NUMBER"}
WORKSPACE=<yourworkspace>.xcworkspace
View TheAbyss.h
// TheAbyss.h
+ (NSString *)greetingMessageFromTheOtherworld;
// TheAbyss.m
+ (NSString *)greetingMessageFromTheOtherworld {
return nil;
}
// LonesomeWanderer.swift
TheAbyss.greetingMessageFromTheOtherworld().isEmpty
You can’t perform that action at this time.