.. 2>/dev/null names () { echo -e "\n exit;\n**Contributors (sorted by number of commits):**\n"; git log --all --format='%aN:%aE' | sed 's/@users.github.com/@users.noreply.github.com/g' | awk 'BEGIN{FS=":"}{ct[$2]+=1;if (length($1) > length(e[$2])) {e[$2]=$1}}END{for (i in e) { n[e[i]]=i;c[e[i]]+=ct[i] }; for (a in n) print c[a]"\t* "a" <"n[a]">";}' | sort -n -r | cut -f 2- } quine () { { echo ".. 2>/dev/null"; declare -f names | sed -e 's/^[[:space:]]*/ /'; declare -f quine | sed -e 's/^[[:space:]]*/ /'; echo -e " quine\n"; names; echo -e "\nAnd all the Transifex translators, which I cannot automatically list, at the moment.\n\n*To update the contributors list just run this file with bash*" } > CONTRIBUTORS.rst; exit } quine exit; **Contributors (sorted by number of commits):** * Andreas Shimokawa * Carsten Pfeiffer * Daniele Gobbetti * Julien Pivotto * Steffen Liebergeld * Lem Dulfo * Sergey Trofimov * JohnnySun * Uwe Hermann * Gergely Peidl * 0nse <0nse@users.noreply.github.com> * Christian Fischer * Normano64 * Ⲇⲁⲛⲓ Φi * xzovy * xphnx * Tarik Sekmen * Szymon Tomasz Stefanek * Roman Plevka * rober * Nicolò Balzarotti * Natanael Arndt * Marc Schlaich * kevlarcade * Kevin Richter * Kasha * Ivan * Gilles MOREL * Gilles Émilien MOREL * Chris Perelstein * Carlos Ferreira * atkyritsis * andre * Alexey Afanasev * 6arms1leg And all the Transifex translators, which I cannot automatically list, at the moment. *To update the contributors list just run this file with bash*