# # Shortens GitHub URLs. # # Authors: # Joel Kuzmarski # Sorin Ionescu # local url="$1" if [[ -z "$url" ]]; then print "usage: $0 [ url | - ] [slug]" >&2 return 1 elif [[ "$url" == '-' ]]; then read url <&0 elif [[ "$url" != *github.com* ]]; then url="https://github.com/$url" fi if (( $+commands[curl] )); then local result="$(curl -s -i 'http://git.io' -F "url=$url" -F "code=$2")" if [[ $result == *Unprocessable* ]]; then print "$0: the slug '$2' is already taken!" >&2 else print $result | grep 'Location:' | sed 's/Location: //' fi else print "$0: command not found: curl" >&2 fi