diff options
author | Fredrik Appelberg <fredrik.appelberg@gmail.com> | 2011-02-11 09:02:13 +0100 |
---|---|---|
committer | Fredrik Appelberg <fredrik.appelberg@gmail.com> | 2011-02-11 09:02:13 +0100 |
commit | 63de788425d1d92e24f0214ceb21e35e277cc50f (patch) | |
tree | 83e8187c79acf8ea880c74e07425d4144f52d15f /lib | |
parent | d02a3912cfd52636ad547fe0b1357303b77584a8 (diff) | |
parent | 01b0366f3e27cf30f3882870100f14625fc267d1 (diff) | |
download | zsh-63de788425d1d92e24f0214ceb21e35e277cc50f.tar.gz zsh-63de788425d1d92e24f0214ceb21e35e277cc50f.tar.bz2 zsh-63de788425d1d92e24f0214ceb21e35e277cc50f.zip |
Merge branch 'master' of github.com:fred-o/oh-my-zsh
Diffstat (limited to 'lib')
-rw-r--r-- | lib/aliases.zsh | 2 | ||||
-rw-r--r-- | lib/appearance.zsh | 2 | ||||
-rw-r--r-- | lib/directories.zsh | 6 | ||||
-rw-r--r-- | lib/functions.zsh | 36 |
4 files changed, 43 insertions, 3 deletions
diff --git a/lib/aliases.zsh b/lib/aliases.zsh index d2d3aed81..b47de5bde 100644 --- a/lib/aliases.zsh +++ b/lib/aliases.zsh @@ -21,3 +21,5 @@ alias ll='ls -l' alias sl=ls # often screw this up alias afind='ack-grep -il' + +alias x=extract diff --git a/lib/appearance.zsh b/lib/appearance.zsh index ffee52b5e..aec67721a 100644 --- a/lib/appearance.zsh +++ b/lib/appearance.zsh @@ -34,5 +34,3 @@ ZSH_THEME_GIT_PROMPT_CLEAN="" # Text to display if the branch is c # Setup the prompt with pretty colors setopt prompt_subst -# Load the theme -source "$ZSH/themes/$ZSH_THEME.zsh-theme"
\ No newline at end of file diff --git a/lib/directories.zsh b/lib/directories.zsh index 56d7a2316..bb114f615 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -36,5 +36,9 @@ cd () { alias md='mkdir -p' alias rd=rmdir +alias d='dirs -v' -alias d='dirs -v'
\ No newline at end of file +# mkdir & cd to it +function mcd() { + mkdir -p "$1" && cd "$1"; +}
\ No newline at end of file diff --git a/lib/functions.zsh b/lib/functions.zsh index e3c0de43e..914f2ef25 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -37,3 +37,39 @@ function take() { mkdir -p $1 cd $1 } + +function extract() { + unset REMOVE_ARCHIVE + + if test "$1" = "-r"; then + REMOVE=1 + shift + fi + if [[ -f $1 ]]; then + case $1 in + *.tar.bz2) tar xvjf $1;; + *.tar.gz) tar xvzf $1;; + *.tar.xz) tar xvJf $1;; + *.tar.lzma) tar --lzma -xvf $1;; + *.bz2) bunzip $1;; + *.rar) unrar $1;; + *.gz) gunzip $1;; + *.tar) tar xvf $1;; + *.tbz2) tar xvjf $1;; + *.tgz) tar xvzf $1;; + *.zip) unzip $1;; + *.Z) uncompress $1;; + *.7z) 7z x $1;; + *) echo "'$1' cannot be extracted via >extract<";; + esac + + if [[ $REMOVE_ARCHIVE -eq 1 ]]; then + echo removing "$1"; + /bin/rm "$1"; + fi + + else + echo "'$1' is not a valid file" + fi +} + |