diff --git a/.config/vifm/vifmrc b/.config/vifm/vifmrc index 85d1085..630d0fb 100644 --- a/.config/vifm/vifmrc +++ b/.config/vifm/vifmrc @@ -477,6 +477,9 @@ nnoremap I cw nnoremap cc cw nnoremap A cw +" Mapping for extraction +nnoremap x :!extract %f + " Open console in current directory nnoremap ,t :!xterm & diff --git a/.local/bin/etc/vifm/extract b/.local/bin/etc/vifm/extract new file mode 100755 index 0000000..29e2889 --- /dev/null +++ b/.local/bin/etc/vifm/extract @@ -0,0 +1,21 @@ +#!/bin/sh + +if [ -f $1 ] ; then + case $1 in + *.tar.bz2) tar xvjf $1 ;; + *.tar.gz) tar xvzf $1 ;; + *.tar.xz) tar xf $1 ;; + *.bz2) bunzip2 $1 ;; + *.rar) unrar x $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 "don't know how to extract '$1'..." ;; + esac +else + echo "'$1' is not a valid file!" +fi