You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
552 B
28 lines
552 B
# |
|
# Shortens GitHub URLs. |
|
# |
|
# Authors: |
|
# Sorin Ionescu <sorin.ionescu@gmail.com> |
|
# |
|
|
|
# function git-hub-shorten-url { |
|
|
|
local url="$1" code="$2" |
|
|
|
if [[ "$url" == '-' ]]; then |
|
read url <&0 |
|
fi |
|
|
|
if [[ -z "$url" || ! "$url" =~ ^https?:\/\/.*github.com\/ ]]; then |
|
print "usage: $0 [ url | - ] [code] ; url must be a github.com URL" >&2 |
|
return 1 |
|
fi |
|
|
|
if (( $+commands[curl] )); then |
|
curl -s -i 'https://git.io' -F "url=$url" ${(s: :)code:+ -F "code=$code"} | sed -n 's/^Location: //p' |
|
else |
|
print "$0: command not found: curl" >&2 |
|
return 1 |
|
fi |
|
|
|
# }
|
|
|