From cb021c46ddb6616c33fa874a553f555893c8a22b Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sun, 20 Jun 2010 20:20:16 -0300 Subject: Adding system of preferences --- keyringer | 43 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) (limited to 'keyringer') diff --git a/keyringer b/keyringer index 2529a85..cbb02a8 100755 --- a/keyringer +++ b/keyringer @@ -95,25 +95,50 @@ function keyringer_dispatch { fi } +function keyringer_preferences { + COMMAND="$3" + + if [ -z "$COMMAND" ]; then + echo "Usage: keyringer `basename $0` [arguments]" + exit 1 + fi + + # Create options file if old repository + if [ ! -e "$PREFERENCES" ]; then + echo "Creating preferences file..." + touch $PREFERENCES + fi + + if [ "$COMMAND" == "ls" ]; then + cat $PREFERENCES + elif [ "$COMMAND" == "edit" ]; then + $EDITOR $PREFERENCES + elif [ "$COMMAND" == "add" ]; then + shift 3 + echo $* >> $PREFERENCES + else + echo "$BASENAME: No such command $COMMAND" + exit 1 + fi +} + # Config NAME="keyringer" -CONFIG="$HOME/.$NAME" +CONFIG="$HOME/.$NAME/config" BASENAME="`basename $0`" KEYRING="$1" ACTION="$2" ACTIONS="`dirname $0`/share/$NAME" +# Export preferences for other scripts +export PREFERENCES="`dirname $CONFIG`/$KEYRING" + # Load functions LIB="`dirname $0`/lib/$NAME/functions" source $LIB -if [ ! -e "$CONFIG" ]; then - echo "Creating $CONFIG..." - touch $CONFIG - chmod 600 $CONFIG - echo "# Keyringer config file." > $CONFIG - echo "" >> $CONFIG -fi +# Setup main configuration and load preferences +keyringer_config_load if [ -z "$ACTION" ]; then echo "Usage: $BASENAME [arguments]" @@ -122,6 +147,8 @@ fi if [ "$ACTION" == "init" ]; then keyringer_init $* +elif [ "$ACTION" == "preferences" ]; then + keyringer_preferences $* elif keyringer_has_action $ACTION; then keyringer_dispatch $* else -- cgit v1.2.3