about summary refs log tree commit diff stats
path: root/modules/by-name/lf/lf/commands/scripts/stripspace.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xmodules/by-name/lf/lf/commands/scripts/stripspace.sh36
1 files changed, 9 insertions, 27 deletions
diff --git a/modules/by-name/lf/lf/commands/scripts/stripspace.sh b/modules/by-name/lf/lf/commands/scripts/stripspace.sh
index 33b1cbcf..95f8f742 100755
--- a/modules/by-name/lf/lf/commands/scripts/stripspace.sh
+++ b/modules/by-name/lf/lf/commands/scripts/stripspace.sh
@@ -1,7 +1,4 @@
-#! /usr/bin/env dash
-
-# shellcheck source=/dev/null
-SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH
+# shellcheck shell=sh
 
 # shellcheck disable=SC2269
 f="$f"
@@ -12,29 +9,14 @@ fs="$fs"
 # shellcheck disable=SC2269
 id="$id"
 
-files=$(mktmp)
-echo "$fx" >"$files"
-
-awk_source=$(mktmp)
-cat <<OFT >"$awk_source"
-BEGIN {FS=" "}
-{for (i=1; i != NF + 1; i++)
-    if (i == NF) {
-        parts[i]=tolower(\$i);
-    } else {
-        parts[i]=tolower(\$i"_");
-    }
-}
-END {for (i in parts) printf parts[i]}
-OFT
+echo "$fx" | while read -r file; do
+    dirty_name=$(basename "$file")
+    clean_name=$(echo "$dirty_name" | sed 's/[[:blank:]]\+/_/g' | sed 's/\(.*\)/\L\1/')
 
-while read -r file; do
-    dirty_name=$(mktmp)
-    basename "$file" >"$dirty_name"
-    clean_name=$(awk -f "$awk_source" "$dirty_name")
+    [ -e "$clean_name" ] && die "file '$clean_name' already exists!"
+    mv "$dirty_name" "$clean_name" || die "Move failed"
 
-    [ -e "$clean_name" ] && die "file \"$clean_name\" already exists!"
-    mv "$(cat "$dirty_name")" "$clean_name" || die "Move failed"
-    lf -remote 'send reload'
-done <"$files"
+    lf_cmd reload
+    lf_cmd select "$clean_name"
+done
 # vim: ft=sh