Add support for the official GitHub URL shortener
This commit is contained in:
parent
d4a5bedb48
commit
5aed9da1a4
12
plugins/git/completions/_git-hub-short-url
Normal file
12
plugins/git/completions/_git-hub-short-url
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
#compdef git-hub-short-url
|
||||||
|
#autoload
|
||||||
|
|
||||||
|
#
|
||||||
|
# Completes git-hub-short-url.
|
||||||
|
#
|
||||||
|
# Authors:
|
||||||
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
_arguments '1:url:' && return 0
|
||||||
|
|
23
plugins/git/functions/git-hub-short-url
Normal file
23
plugins/git/functions/git-hub-short-url
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
#
|
||||||
|
# Shortens GitHub URLs.
|
||||||
|
#
|
||||||
|
# Authors:
|
||||||
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
local url="$1"
|
||||||
|
|
||||||
|
if [[ "$url" == '-' ]]; then
|
||||||
|
read url <&0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$url" ]]; then
|
||||||
|
print "usage: $0 [ url | - ]" >&2
|
||||||
|
fi
|
||||||
|
|
||||||
|
if (( $+commands[curl] )); then
|
||||||
|
curl -s -i 'http://git.io' -F "url=$url" | grep 'Location:' | sed 's/Location: //'
|
||||||
|
else
|
||||||
|
print "$0: command not found: curl" >&2
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in a new issue