From e24fdf517619e84fbba268b0d90627b185665cd6 Mon Sep 17 00:00:00 2001 From: Soispha Date: Sat, 6 May 2023 22:10:50 +0200 Subject: Refactor(hm/conf/lf): Separate keybindings and commands --- home-manager/config/lf/commands/scripts/stripspace | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 home-manager/config/lf/commands/scripts/stripspace (limited to 'home-manager/config/lf/commands/scripts/stripspace') diff --git a/home-manager/config/lf/commands/scripts/stripspace b/home-manager/config/lf/commands/scripts/stripspace new file mode 100755 index 00000000..65dabc4c --- /dev/null +++ b/home-manager/config/lf/commands/scripts/stripspace @@ -0,0 +1,32 @@ +#! /usr/bin/env dash +# shellcheck disable=SC2086 +# shellcheck source=/dev/null +# . ~/.local/lib/shell/lib +. %SHELL_LIBRARY_PATH + +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 + +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 "$(cat $dirty_name)" "$clean_name" || die "Move failed"; + lf -remote 'send reload' +done < "$files"; +# vim: ft=sh -- cgit 1.4.1