diff options
Diffstat (limited to '.config/vis/plugins/vis-lspc/tools/find-upwards')
| -rwxr-xr-x | .config/vis/plugins/vis-lspc/tools/find-upwards | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/.config/vis/plugins/vis-lspc/tools/find-upwards b/.config/vis/plugins/vis-lspc/tools/find-upwards new file mode 100755 index 0000000..85dc722 --- /dev/null +++ b/.config/vis/plugins/vis-lspc/tools/find-upwards @@ -0,0 +1,26 @@ +#!/bin/sh + +set -eu + +if [ ! "${1:-}" ]; then + exit 1 +fi + +BASEDIR="$(dirname "$1")" + +while read -r glob; do + cd "$BASEDIR" + + while [ "$PWD" != "/" ]; do + set -- "$glob" + + if [ -e "$1" ]; then + echo "$PWD" + exit 0 + fi + + cd .. + done +done + +exit 1 |
