I enjoy making and playing with little DSL-ish extensions for Cocoa types in Swift. For instance, the code below allows me to write cool
storyboard.VC["foo_bar"]
storyboard.VC.initial
instead of:
tell application "System Events" | |
tell application process "Safari" | |
click menu item 2 of menu 1 of menu item 4 of menu 1 of menu bar item "Develop" of menu bar 1 | |
end tell | |
end tell | |
tell application "Safari" | |
activate | |
end tell |
tell application "Xcode" | |
activate | |
end tell | |
tell application "System Events" | |
tell application process "Xcode" | |
click menu item "Stop" of menu 1 of menu bar item "Product" of menu bar 1 | |
click menu item "Run" of menu 1 of menu bar item "Product" of menu bar 1 | |
end tell | |
end tell |
# Usage: | |
# `yt http://www.youtube.com/watch?v=...` | |
# Downloads a video from youtube, extracts audio out of it and saves as a 256kbps mp3 in Downloads | |
# | |
# Requires youtube-dl and ffmpeg | |
# (OSX: just `brew install youtube-dl ffmpeg`) | |
yt () { | |
youtube-dl $1 -o ~/Downloads/%\(title\)s.%\(ext\)s -x --audio-format mp3 --audio-quality 256 | |
} |
pl: | |
viewer: | |
comment_on_twitter: 'Skomentuj na Twitterze' | |
older: 'Starsze' | |
newer: 'Nowsze' | |
feed: 'Kanał' | |
share: 'Udostępnij' | |
close: 'Zamknij' | |
next_post: 'Następny wpis' | |
previous_post: 'Poprzedni wpis' |
require 'csv' | |
tweets = CSV.read('tweets.csv') | |
tweets.shift | |
stats = tweets | |
.reject { |t| t[5] =~ /^RT/ } | |
.group_by { |t| | |
date = Date.parse t[3] | |
"#{date.year}-#{date.month}" |
I enjoy making and playing with little DSL-ish extensions for Cocoa types in Swift. For instance, the code below allows me to write cool
storyboard.VC["foo_bar"]
storyboard.VC.initial
instead of:
NSTimer
is a great example of an over-verbose, outdated Objective-C API. To run a simple line of code after a delay, you need to write a lot of boilerplate crap.
How about this:
NSTimer.schedule(5.seconds) {
println("Hello world!")
}
// This will work: | |
var url: String | |
if condition { | |
url = "http://example.com" | |
} else { | |
url = "http://example.org" | |
} |
{ | |
"name": "MASShortcut", | |
"version": "1.2.3", | |
"summary": "Modern framework for managing global keyboard shortcuts compatible with Mac App Store.", | |
"description": " Some time ago Cocoa developers used a brilliant framework ShortcutRecorder for managing keyboard shortcuts in application preferences. However, it became incompatible with a new plugin architecture of Xcode 4. \n\n The project MASShortcut introduces modern API and user interface for recording, storing and using global keyboard shortcuts. All code is compatible with Xcode 4.3, Mac OS X 10.7 and the sandboxed environment.\n", | |
"homepage": "http://blog.shpakovski.com/2012/07/global-keyboard-shortcuts-in-cocoa.html", | |
"license": "BSD", | |
"authors": { | |
"Vadim Shpakovski": "[email protected]" | |
}, |
I hereby claim:
To claim this, I am signing this object: