X-Git-Url: http://git.tuebingen.mpg.de/?p=gsu.git;a=blobdiff_plain;f=config;h=6b3be62f0eceabdf5551accfeddb3a9f3f690f6d;hp=59086ed4e526817449025041486cd5d6d1e2a13b;hb=78e27762f692e7896614450bbe9e06140c7694af;hpb=ed4541e12d830109204e66ac8c76750d3693eeff diff --git a/config b/config index 59086ed..6b3be62 100644 --- a/config +++ b/config @@ -1,10 +1,13 @@ #!/bin/bash +# Copyright (C) 2006 Andre Noll +# Licensed under the LGPL, version 3. See COPYING and COPYING.LESSER. # Syntactically check the gsu_options array for errors and parse the config # file. gsu_check_options() { - local i conf="${gsu_config_file:=${HOME:-}/.$gsu_name.rc}" val + local i conf="${gsu_config_file:=${HOME:-}/.$gsu_name.rc}" val orig_val + local name option_type default_value required description help_text for ((i=0; i < ${#gsu_options[@]}; i++)); do eval "${gsu_options[$i]}" @@ -15,14 +18,17 @@ gsu_check_options() [[ -r "$conf" ]] && source "$conf" for ((i=0; i < ${#gsu_options[@]}; i++)); do - local name= option_type= default_value= required= - local description= help_text= - local val orig_val + name= + option_type= + default_value= + required= + description= + help_text= eval "${gsu_options[$i]}" # Check name. It must be non-empty and consist of [a-zA-Z_0-9] - # only. Moreover it must not start with [a-zA-Z]. + # only. Moreover it must start with [a-zA-Z]. ret=-$E_GSU_BAD_CONFIG_VAR result="name: '$name'" # bash's =~ works only for 3.2 and newer, so use grep @@ -79,7 +85,7 @@ gsu_check_options_or_die() } if [[ "$(type -t _gsu_setup)" != "function" ]]; then - gsu_dir=${gsu_dir:=${HOME:-}/.gsu} + gsu_dir=${gsu_dir:-${BASH_SOURCE[0]%/*}} . $gsu_dir/common || exit 1 _gsu_setup fi