X-Git-Url: http://git.tuebingen.mpg.de/?p=gsu.git;a=blobdiff_plain;f=funcs%2Fgsu;fp=funcs%2Fgsu;h=448d551180ee0dee11896ac23746f7704186f9ad;hp=d78233ed3a8e2dab0fbaa092006f5ecc167391ff;hb=1c4294ef07f7bfed67bce248a7598fae3eaeb4e2;hpb=33ed4a27159aae243c71991fb71c2948cd1042e0 diff --git a/funcs/gsu b/funcs/gsu index d78233e..448d551 100644 --- a/funcs/gsu +++ b/funcs/gsu @@ -15,6 +15,7 @@ E_GSU_NEED_VALUE value required but not given E_GSU_BAD_BOOL bad value for boolian option E_GSU_BAD_OPTION_TYPE invalid option type E_GSU_BAD_ARG_COUNT invalid number of arguments +E_GSU_EDITOR failed to execute editor E_NO_DEFAULT missing default value $gsu_errors " @@ -171,13 +172,22 @@ export -f _gsu_print_available_commands export gsu_prefs_txt=" Print the current preferences. -Usage: prefs +Usage: prefs [-e] -Print out a list of all cmt config variables, together with their current value -and the default value." +If -e is given, the config file is opened with the default editor. Without +options, the command prints out a list of all cmt config variables, together +with their current value and the default value." _com_prefs() { - local i + local i conf="${gsu_config_file:=$HOME/.$gsu_name.rc}" + + if [[ "$1" = "-e" ]]; then + ret=-$E_GSU_EDITOR + result="${EDITOR:-vi}" + "$result" "$conf" + ret=$GSU_SUCCESS + return + fi for ((i=0; i < ${#gsu_options[@]}; i++)); do local name= option_type= default_value= required=