Skip to content

Instantly share code, notes, and snippets.

View lilyball's full-sized avatar

Lily Ballard lilyball

View GitHub Profile
@JensAyton
JensAyton / ClassCrawler.m
Created November 28, 2010 20:24
Generate a GraphViz file showing the hierarchy of Objective-C classes in a given bundle, super- and subclasses of a given class, or all loaded classes. Requires GraphViz for viewing, http://www.pixelglow.com/graphviz/ Hack notice: this is one.
Moved to a repo: https://github.com/Ahruman/ClassCrawler
@incanus
incanus / GitTagBundleVersion.sh
Created December 22, 2010 02:23
This is an Xcode build script that will automatically change your app's Info.plist CFBundleVersion string to match the latest git tag for the working copy. If you have commits beyond the last tagged one, it will append a 'd' to the number.
#/bin/sh
INFO=$( echo $PWD )/MyApp-Info
TAG=$( git describe --tags `git rev-list --tags --max-count=1` )
COMMIT=
GITPATH=/usr/bin:/usr/local/bin:/usr/local/git/bin
PATH=$PATH:$GITPATH; export PATH
if [ -z $( which git ) ]; then
echo "Unable to find git binary in \$GITPATH"
@John07
John07 / HLS_to_mp4
Last active October 11, 2020 01:20
Save/record HTTP Live Stream (short HLS, the kind of live stream that can be played by iOS devices) to disk as mp4 file
ffmpeg -re -i http://url.com/playlist.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4
@lilyball
lilyball / !||.swift
Last active August 29, 2015 14:04
`x !|| y` operator to provide the equivalent of `x ? x! : y`
operator infix !|| {
associativity right
precedence 100
}
func !||<T>(left: T?, right: @auto_closure () -> T) -> T {
if let val = left {
return val
}
return right()
@mamiu
mamiu / .promptline.fish
Last active October 29, 2015 15:44
This is a fish script for a powerline like prompt in the fish shell. To use it, just source this script with ". /path/to/.promptline.fish" (without the quotation marks) in your ~/.config/fish/config.fish! Have fun :)
# to use this script you need the latest fish version (2.1.x)
begin
########## USER CONFIG ##########
# enable or disable the different parts of promptline with yes or no
set show_only_left_prompt no
set show_hostname no
set show_virtual_env yes
set show_username yes
set show_current_working_directory yes
set show_git_branch yes
@lilyball
lilyball / shuffle.swift
Last active August 29, 2015 14:27
Fisher-Yates Shuffle for Swift
import Darwin // for arc4random_uniform
extension SequenceType {
@warn_unused_result(mutable_variant="shuffleInPlace") func shuffle() -> [Generator.Element] {
// this is more efficient than building an array and shuffling it
// and it works on sequences too!
var ary: [Generator.Element] = []
ary.reserveCapacity(underestimateCount())
for var x in self {
let j = Int(arc4random_uniform(UInt32(ary.count+1)))
@zwaldowski
zwaldowski / Activity.swift
Last active February 15, 2024 18:49
os_activity_t for Swift 3
//
// Activity.swift
//
// Created by Zachary Waldowski on 8/21/16.
// Copyright © 2016 Zachary Waldowski. Licensed under MIT.
//
import os.activity
private final class LegacyActivityContext {
@zwaldowski
zwaldowski / Extra Logging for My Great App.mobileconfig
Last active January 19, 2024 00:35
Apple Configuration Profile for Logging in iOS 10 and macOS Sierra
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<!-- iOS 10, macOS Sierra, and friends bring a new logging subsystem that's
supposed to scale from the kernel, up to frameworks, and up to apps. It defaults
to a more regimented, privacy-focused approach that large apps and complex
systems need.
It, along with Activity Tracing introduced in iOS 8 and macOS Yosemite and the
Console app in macOS Sierra, hope to help you graduate from caveman debugging to
self: super:
{
# Install overlay:
# $ mkdir -p ~/.config/nixpkgs/overlays
# $ curl https://gist.githubusercontent.com/LnL7/570349866bb69467d0caf5cb175faa74/raw/3f3d53fe8e8713ee321ee894ecf76edbcb0b3711/lnl-overlay.nix -o ~/.config/nixpkgs/overlays/lnl.nix
userPackages = super.userPackages or {} // {
# Example:
hello = self.hello;
@liclac
liclac / hewwo.pl
Last active October 1, 2023 11:48
Hewwo? (Based on leafysweetsgarden's OWO extension)
#!/usr/bin/env -S perl -p
tr/rlRL/wwWW/; s/([nN])([aeiou])/\1y\2/g; s/(N)([AEIOU])/\1Y\2/g; s/ove/uv/g;
s/\!+/" ".("(・`ω´・)",";;w;;","owo","UwU",">w<","^w^")[rand(6)]." "/eg;