From 6e3fd021588c87a0743dbc1ec5b3f5aba900f839 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Sat, 20 Aug 2016 16:26:06 +1200 Subject: Port vr(1) to POSIX sh --- bash/bashrc.d/vr.bash | 59 --------------------------------------------------- 1 file changed, 59 deletions(-) delete mode 100644 bash/bashrc.d/vr.bash (limited to 'bash') diff --git a/bash/bashrc.d/vr.bash b/bash/bashrc.d/vr.bash deleted file mode 100644 index adabb395..00000000 --- a/bash/bashrc.d/vr.bash +++ /dev/null @@ -1,59 +0,0 @@ -# Move to the root directory of a VCS working copy -vr() { - local path - path=${1:-"$PWD"} - path=${path%/} - - # Raise some helpful errors - if [[ ! -e $path ]] ; then - printf 'bash: %s: %s: No such file or directory\n' \ - "$FUNCNAME" "$path" - return 1 - fi - if [[ ! -d $path ]] ; then - printf 'bash: %s: %s: Not a directory\n' \ - "$FUNCNAME" "$path" - return 1 - fi - if [[ ! -x $path ]] ; then - printf 'bash: %s: %s: Permission denied\n' \ - "$FUNCNAME" "$path" - return 1 - fi - - # Ask Git the top level - local git_root - git_root=$(cd -- "$path" && git rev-parse --show-toplevel 2>/dev/null) - if [[ -n $git_root ]] ; then - cd -- "$git_root" - return - fi - - # Ask Mercurial the top level - local hg_root - hg_root=$(cd -- "$path" && hg root 2>/dev/null) - if [[ -n $hg_root ]] ; then - cd -- "$hg_root" - return - fi - - # If we have a .svn directory, iterate upwards until we find an ancestor - # that doesn't; hopefully that's the root - if [[ -d $path/.svn ]] ; then - local search - search=$path - while [[ -n $search ]] ; do - if [[ -d ${search%/*}/.svn ]] ; then - search=${search%/*} - else - cd -- "$search" - return - fi - done - fi - - # Couldn't find repository root, say so - printf 'bash: %s: Failed to find repository root\n' \ - "$FUNCNAME" >&2 - return 1 -} -- cgit v1.2.3