From dd78d7c7724e4da4b6f44f0483f0d28792c8f13c Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Fri, 24 Jul 2009 22:41:51 -0400 Subject: 0.7.0 -- refactor to make core a pluggin (not done) --- src/rvs.sh | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'src/rvs.sh') diff --git a/src/rvs.sh b/src/rvs.sh index a44570d..f47659f 100644 --- a/src/rvs.sh +++ b/src/rvs.sh @@ -1,8 +1,6 @@ #!$$SHELL$$ -# abomination module:rvs name='rvs' -ver='0.6.3' -usage='COMMAND [OPTIONS]' +ver='0.7.0' # Copyright (C) 2009 Luke Shumaker # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -11,9 +9,13 @@ usage='COMMAND [OPTIONS]' # # Originally written by Luke Shumaker . -export RVSDIR='$$libdir$$' -source "$RVSDIR/lib/stdio" -#source "$RVSDIR/lib/rvsdb" +RVSDIR='$$libdir$$' +REPO=`$RVSDIR/repo` + +error() { + echo "$name: $1" >> /dev/stderr + exit 1 +} # START OPTION HANDLING # com=$1; @@ -22,8 +24,20 @@ case "$com" in '') error 'no command specified';; *) if [ -f "$RVSDIR/$com" ]; then + export RVSDIR $RVSDIR/$@ + done='yes' else + while read plugin; do + if [ -f "$RVSDIR/$plugin/$com" ]; then + export RVSDIR=$RVSDIR/$plugin + $RVSDIR/$@ + done='yes' + break + fi + done < $REPO/plugins + fi + if [ "$done" != 'yes' ]; then error "unrecognized command \`$com'" fi :;; -- cgit v1.2.3-54-g00ecf