From 5b0f13dde1131ed9475a5ba795e570e56a3c7176 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Fri, 21 Apr 2017 11:16:47 +0400 Subject: [PATCH] =?UTF-8?q?ufile:=20changer=20la=20s=C3=A9mantique=20de=20?= =?UTF-8?q?renamef?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/default/ufile | 6 +++--- ufile | 9 ++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/default/ufile b/lib/default/ufile index ffce6e4..270a425 100644 --- a/lib/default/ufile +++ b/lib/default/ufile @@ -5,7 +5,7 @@ # renamef est une fonction qui permet de supporter le renommage d'un fichier # lors de son classement. Sa signature est 'renamef filename pf destdir' où # filename est le nom du fichier source, pf son chemin complet et destdir la -# valeur de destdir mentionnée dans la règle. La fonction doit afficher le -# nouveau nom. Si le nouveau nom contient un chemin, destdir est ignoré et le -# fichier est déplacé dans le répertoire spécifié. +# valeur de destdir mentionnée dans la règle. La fonction doit définir la +# variable newname qui est le nouveau nom. Si le nouveau nom contient un chemin, +# destdir est ignoré et le fichier est déplacé dans le répertoire spécifié. RULES=() diff --git a/ufile b/ufile index 685f21a..28fd190 100755 --- a/ufile +++ b/ufile @@ -78,14 +78,17 @@ for file in "$@"; do fi if eval "[[ \"\$filename\" == $(qwc "$pattern") ]]"; then if [ -n "$renamef" ]; then - setx newname="$renamef" "$filename" "$pf" "$destdir" - if [[ "$newname" == */* ]]; then + newname= + "$renamef" "$filename" "$pf" "$destdir" + if [ -z "$newname" ]; then + destname="$filename" + elif [[ "$newname" == */* ]]; then splitpath "$newname" destdir destname else destname="$newname" fi else - newname="$filename" + destname="$filename" fi estep "$filename --> $destdir/$destname" ask_yesno -i "Voulez-vous continuer?" O || { found=x; break; }