mirror of
https://github.com/dcarrillo/prezto.git
synced 2024-12-22 11:38:00 +00:00
archive: fix unrar-free and add support for unar (#1383)
* archive: fix unrar check when using unrar-free unrar-free returns the error code 1 when run without arguments, thus failing the presence check. Replacing the current presence check with (( $+commands[unrar] )) fixes the problem. * archive: add unar support for lsarchive and unarchive No `archive` support with unar.
This commit is contained in:
parent
cd703d3c3c
commit
9520f1be6f
@ -27,7 +27,7 @@ installed:
|
||||
- *.lzma* requires `unlzma`.
|
||||
- *.Z* requires `uncompress`.
|
||||
- *.zip*, *.jar* requires `unzip`.
|
||||
- *.rar* requires `unrar` or `rar`.
|
||||
- *.rar* requires `rar` (needed for `archive` support), `unrar` or `lsar` and `unar`.
|
||||
- *.7z* requires `7za`.
|
||||
- *.deb* requires `ar`, `tar`.
|
||||
|
||||
|
@ -43,9 +43,11 @@ while (( $# > 0 )); do
|
||||
|| lzcat "$1" | tar x${verbose:+v}f - ;;
|
||||
(*.tar) tar t${verbose:+v}f "$1" ;;
|
||||
(*.zip|*.jar) unzip -l${verbose:+v} "$1" ;;
|
||||
(*.rar) unrar &> /dev/null \
|
||||
&& unrar ${${verbose:+v}:-l} "$1" \
|
||||
|| rar ${${verbose:+v}:-l} "$1" ;;
|
||||
(*.rar) ( (( $+commands[unrar] )) \
|
||||
&& unrar ${${verbose:+v}:-l} "$1" ) \
|
||||
|| ( (( $+commands[rar] )) \
|
||||
&& rar ${${verbose:+v}:-l} "$1" ) \
|
||||
|| lsar ${verbose:+-l} "$1" ;;
|
||||
(*.7z) 7za l "$1" ;;
|
||||
(*)
|
||||
print "$0: cannot list: $1" >&2
|
||||
|
@ -57,9 +57,11 @@ while (( $# > 0 )); do
|
||||
(*.lzma) unlzma "$1" ;;
|
||||
(*.Z) uncompress "$1" ;;
|
||||
(*.zip|*.jar) unzip "$1" -d $extract_dir ;;
|
||||
(*.rar) unrar &> /dev/null \
|
||||
&& unrar x -ad "$1" \
|
||||
|| rar x -ad "$1" ;;
|
||||
(*.rar) ( (( $+commands[unrar] )) \
|
||||
&& unrar x -ad "$1" ) \
|
||||
|| ( (( $+commands[rar] )) \
|
||||
&& rar x -ad "$1" ) \
|
||||
|| unar -d "$1" ;;
|
||||
(*.7z) 7za x "$1" ;;
|
||||
(*.deb)
|
||||
mkdir -p "$extract_dir/control"
|
||||
|
Loading…
Reference in New Issue
Block a user