diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/functions.zsh | 23 | 
1 files changed, 12 insertions, 11 deletions
| diff --git a/lib/functions.zsh b/lib/functions.zsh index 24b7254fb..73b491a59 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -41,26 +41,27 @@ function mkcd takedir() {  }  function takeurl() { -  data=$(mktemp) -  curl -L $1 > $data -  tar xf $data -  thedir=$(tar tf $data | head -1) -  rm $data -  cd $thedir +  local data thedir +  data="$(mktemp)" +  curl -L "$1" > "$data" +  tar xf "$data" +  thedir="$(tar tf "$data" | head -1)" +  rm "$data" +  cd "$thedir"  }  function takegit() { -  git clone $1 -  cd $(basename ${1%%.git}) +  git clone "$1" +  cd "$(basename ${1%%.git})"  }  function take() {    if [[ $1 =~ ^(https?|ftp).*\.tar\.(gz|bz2|xz)$ ]]; then -    takeurl $1 +    takeurl "$1"    elif [[ $1 =~ ^([A-Za-z0-9]\+@|https?|git|ssh|ftps?|rsync).*\.git/?$ ]]; then -    takegit $1 +    takegit "$1"    else -    takedir $1 +    takedir "$@"    fi  } | 
