dots/scripts/check-fmt-git-pre-commit.bash

25 lines
483 B
Bash
Raw Normal View History

#!/usr/bin/env -S nix --extra-experimental-features "flakes nix-command" shell nixpkgs#bash nixpkgs#git --command bash
# vim: ft=sh
set -euo pipefail
main() {
local root
root="$(git rev-parse --show-toplevel)"
local files=()
while IFS= read -r file; do
local fpath="${root}/${file}"
if [[ -r "${fpath}" ]]; then
files+=("${fpath}")
fi
done < <(git diff --name-only --staged --diff-filter=d)
if ((${#files[@]} > 0)); then
Fmt -- "${files[@]}"
fi
}
main "${@}"