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; }