#! /usr/bin/env dash

# shellcheck source=/dev/null
SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH

# shellcheck disable=SC2269
f="$f"
# shellcheck disable=SC2269
fx="$fx"
# shellcheck disable=SC2269
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

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