From d4e6648afd61205136c98fdc56cf151eb437a078 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sat, 22 Dec 2018 18:19:29 -0200 Subject: Move external scripts to bin/. --- bin/git-blame-someone-else | 21 +++++++++++++++++++++ bin/sl | 13 +++++++++++++ bin/sleepsort | 20 ++++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100755 bin/git-blame-someone-else create mode 100755 bin/sl create mode 100755 bin/sleepsort (limited to 'bin') diff --git a/bin/git-blame-someone-else b/bin/git-blame-someone-else new file mode 100755 index 0000000..dd71826 --- /dev/null +++ b/bin/git-blame-someone-else @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +# Taken from https://github.com/jayphelps/git-blame-someone-else/ + +if [ $# -ne 2 ]; then + >&2 echo "Usage: $0 " + exit 1 +fi + +AUTHOR=$1 +AUTHOR_NAME=$(echo $AUTHOR | perl -wlne '/^(.*?)\s*<.*>$/ and print $1') +AUTHOR_EMAIL=$(echo $AUTHOR | perl -wlne '/^.*\s*<(.*)>$/ and print $1') +COMMIT=$(git rev-parse --short $2) + +{ + GIT_SEQUENCE_EDITOR="sed -i -e 's/^pick $COMMIT/edit $COMMIT/'" git rebase -i $COMMIT~1^^ + GIT_COMMITTER_NAME="$AUTHOR_NAME" GIT_COMMITTER_EMAIL="$AUTHOR_EMAIL" git commit --amend --no-edit --author="$AUTHOR" + # git rebase --continue +} &> /dev/null + +echo "$AUTHOR_NAME is now the author of $COMMIT. You're officially an asshole."; diff --git a/bin/sl b/bin/sl new file mode 100755 index 0000000..2333462 --- /dev/null +++ b/bin/sl @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +# Taken from: +# https://gir.st/blog/sl-alt.htm + +# sl - prints a mirror image of ls. (C) 2017 Tobias Girstmair, https://gir.st/, GPLv3 + +LEN=$(ls "$@" |wc -L) # get the length of the longest line + +ls "$@" | rev | while read -r line +do + printf "%${LEN}.${LEN}s\\n" "$line" | sed 's/^\(\s\+\)\(\S\+\)/\2\1/' +done \ No newline at end of file diff --git a/bin/sleepsort b/bin/sleepsort new file mode 100755 index 0000000..ea20fcb --- /dev/null +++ b/bin/sleepsort @@ -0,0 +1,20 @@ +#!/usr/bin/env bash + +# Taken from: +# https://www.quora.com/What-is-the-strangest-sorting-algorithm/answer/Nipun-Ramakrishnan + +function f() { + sleep "$1" + echo "$1" +} + +while [ -n "$1" ] +do + f "$1" & + shift +done + +wait + +# example usage: +# sleepsort 5 3 6 3 6 3 1 4 7 -- cgit v1.2.3