From 68425c266a5107e50a2897b7d7cfc0ccb9fb753c Mon Sep 17 00:00:00 2001
From: Marc Cornellà <marc.cornella@live.com>
Date: Thu, 29 Sep 2016 13:26:50 +0200
Subject: extract: replace basename&sed w/ zsh variable expansion syntax

`${var:t:h}` uses:

- `${var:t}` which acts as `basename`.

- `${var:r}` which removes the extension.

See http://zsh.sourceforge.net/Doc/Release/Expansion.html#Modifiers
---
 plugins/extract/extract.plugin.zsh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

(limited to 'plugins/extract')

diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh
index 24b16517b..c524bf8f5 100644
--- a/plugins/extract/extract.plugin.zsh
+++ b/plugins/extract/extract.plugin.zsh
@@ -3,7 +3,6 @@ alias x=extract
 extract() {
 	local remove_archive
 	local success
-	local file_name
 	local extract_dir
 
 	if (( $# == 0 )); then
@@ -29,8 +28,7 @@ extract() {
 		fi
 
 		success=0
-		file_name="$( basename "$1" )"
-		extract_dir="$( echo "$file_name" | sed "s/\.${1##*.}//g" )"
+		extract_dir="${1:t:r}"
 		case "$1" in
 			(*.tar.gz|*.tgz) (( $+commands[pigz] )) && { pigz -dc "$1" | tar xv } || tar zxvf "$1" ;;
 			(*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$1" ;;
-- 
cgit v1.2.3-70-g09d2