#!/usr/bin/env sh
set -eu
if [ "$#" -eq 0 ]; then
set -- $(find . \( -path '*/.git' -o -path '*/node_modules' -o -path '*/.next' -o -path '*/_site' \) -prune -o -type f \( -name '*.md' -o -name '*.mdx' -o -name '*.org' -o -name '*.html' -o -name '*.txt' \) -print)
fi
for f in "$@"; do
[ -f "$f" ] || continue
rg -o 'https?://[^\]\[()<>"'\''[:space:]]+' "$f" 2>/dev/null |
sed -e 's/[),.;]*$//' -e 's/#.*$//' |
awk -v file="$f" '{print $0 "\t" file}'
done