about summary refs log tree commit diff stats
path: root/home-manager/config/lf/commands/scripts/stripspace
blob: 65dabc4cba34adf4f025245e68eb2198172f52da (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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