Files
godot-docs-l10n/list-authors.sh
2019-12-03 08:35:35 +01:00

35 lines
997 B
Bash

#!/bin/bash
if [ -z $1 ]; then
echo "Pass a commit hash as argument to list authors between that commit and HEAD."
exit 1
fi
commit=$1
rm -f authors.txt langs.txt
for file in weblate/*.po; do
authors=$(git log $commit..HEAD --date=format:"%Y" --format="%aN <%aE>, %ad." $file | grep -v 'anonymous' | sort -u)
if [ ! -z "$authors" ]; then
new_authors=""
while read -r author; do
author_name=$(echo "$author" | sed 's/20[0-9][0-9].//')
author_year=$(echo "$author" | sed 's/.*\(20[0-9][0-9]\).*/\1/')
found_name=$(grep "$author_name" $file)
found_year=
if [ ! -z "$found_name" ]; then
found_year=$(grep "$author_year" <<< "$found_name")
fi
if [ -z "$found_name" -o -z "$found_year" ]; then
new_authors+="# "$author$'\n'
fi
done <<< "$authors"
if [ ! -z "$new_authors" ]; then
echo "$file" >> langs.txt
echo -e "\n* $file:\n" >> authors.txt
echo "$new_authors" >> authors.txt
fi
fi
done