diff options
Diffstat (limited to 'uristart')
-rwxr-xr-x | uristart | 23 |
1 files changed, 15 insertions, 8 deletions
@@ -12,7 +12,7 @@ check=dont eval "$(printf "%s\n" "$1" | uricut | sed 's/^/export URI/;s/'\''/'\''\\'\'''\''/;s/: /='\''/g;s/$/'\''/')" -uristart_config=~/.config/uristart.conf +uristart_config="auto" usage() { printf "usage: uristart [-v|--verbose|-h|--help|-c|--check] [-f|--config file] URI\n" @@ -50,18 +50,25 @@ if [ ! "$*" ];then exit 1 fi -if [ ! -e "$uristart_config" ];then - printf "uristart: missing config file: %s\n" "$uristart_config" >&2 - exit 1 -fi +#if [ ! -e "$uristart_config" ];then +# printf "uristart: missing config file: %s\n" "$uristart_config" >&2 +# exit 1 +#fi uri="${1}" scheme="$(printf "%s\n" "$uri" | uricut -s)" +### TODO: make this respect the --config|-f flag ### original: line="$(urigetline "$uri" < ~/.config/uristart.conf)" -line="$(urigetline "$uri" < ~/.config/uristart.conf)" -if [ "$(urigetline -a "$uri" < ~/.config/uristart.conf)" != "$line" ];then - line="$(urigetline -a "$uri" < ~/.config/uristart.conf | choose 'which handler')" +if [ "$uristart_config" = "auto" ];then + line="$(urigetline "$uri" < <(uristart.conf))" + allline="$(urigetline -a "$uri" < <(uristart.conf))" +else + line="$(urigetline "$uri" < "$uristart_config")" + allline="$(urigetline -a "$uri" < "$uristart_config")" +fi +if [ "$allline" != "$line" ];then + line="$(printf "%s\n" "$allline" | choose 'which handler')" fi if [ ! "$line" ];then exit 0 |