diff options
Diffstat (limited to 'SOURCE/CORE')
| -rw-r--r-- | SOURCE/CORE/core-add.sh | 2 | ||||
| -rw-r--r-- | SOURCE/CORE/git.sh | 27 | ||||
| -rw-r--r-- | SOURCE/CORE/helpers.sh | 27 |
3 files changed, 34 insertions, 22 deletions
diff --git a/SOURCE/CORE/core-add.sh b/SOURCE/CORE/core-add.sh index c6dee8a..58831e4 100644 --- a/SOURCE/CORE/core-add.sh +++ b/SOURCE/CORE/core-add.sh @@ -1,6 +1,6 @@ addnote() { # attempt syncing before adding a note - gitsync + gitsync -f # remove eventually existing temp DB file if [[ -f $TMPDB ]]; then rm $TMPDB diff --git a/SOURCE/CORE/git.sh b/SOURCE/CORE/git.sh index 8841521..bb51dc7 100644 --- a/SOURCE/CORE/git.sh +++ b/SOURCE/CORE/git.sh @@ -1,5 +1,5 @@ # check if GITCLIENT has been set or set it to the output of hostname -if [ -z $GITCLIENT ]; then +if [ -z "$GITCLIENT" ]; then GITCLIENT=$( hostname ) fi # returns true if the argument provided directory is a git repository @@ -16,22 +16,31 @@ is_git_repo() { } # sync local repository to remote +# accepts -f parameter to skip last sync check gitsync() { + FORCE=$1 if [[ $USEGIT && -n $GITREMOTE ]]; then - NOWSYNC=$(date +%s) - # LASTSYNC is the last time we synced to the remote, or 0 if it's the first time. - LASTSYNC=$($JQ -r '.git["lastpull"] // 0' "$DB") [ $PLAIN == false ] && echo "Syncing notes with git on remote \"$GITREMOTE\"" - SYNCDIFF=$(( ${NOWSYNC} - ${LASTSYNC} )) - if (( $SYNCDIFF > $GITSYNCDELAY )); then - #more than our delay time has passed. We can sync again. + NOWSYNC=$(date +%s) + if [[ $FORCE == "-f" ]]; then $JQ --arg n "$NOWSYNC" '.git["lastpull"] = $n' "$DB" > $TMPDB mv $TMPDB $DB cd $BASEDIR $GIT pull else - # Last synced less than $GITSYNCDELAY seconds ago. We shall wait - [ $PLAIN == false ] && echo "Last synced less than $GITSYNCDELAY seconds ago. We shall wait" + # LASTSYNC is the last time we synced to the remote, or 0 if it's the first time. + LASTSYNC=$($JQ -r '.git["lastpull"] // 0' "$DB") + SYNCDIFF=$(( ${NOWSYNC} - ${LASTSYNC} )) + if (( $SYNCDIFF > $GITSYNCDELAY )); then + #more than our delay time has passed. We can sync again. + $JQ --arg n "$NOWSYNC" '.git["lastpull"] = $n' "$DB" > $TMPDB + mv $TMPDB $DB + cd $BASEDIR + $GIT pull + else + # Last synced less than $GITSYNCDELAY seconds ago. We shall wait + [ $PLAIN == false ] && echo "Last synced less than $GITSYNCDELAY seconds ago. We shall wait" + fi fi else # no git, so we just keep going diff --git a/SOURCE/CORE/helpers.sh b/SOURCE/CORE/helpers.sh index b7b9180..38da28c 100644 --- a/SOURCE/CORE/helpers.sh +++ b/SOURCE/CORE/helpers.sh @@ -34,21 +34,24 @@ helptext() { } configtext() { - cat << __NOWCONF__ -${BASENAME} configuration is: + [ $USEGIT ] && GITUSE="enabled" || GITUSE="disabled" + clear + echo -e "${BASENAME} configuration is:" -base directory: ${BASEDIR}/ -notes archive: ${NOTESDIR}/ -notes database: ${DB} -rc file: $RCFILE -debug file: /tmp/debug_bash-note.log + echo -e "base directory: ${BASEDIR}/" + echo -e "notes archive: ${NOTESDIR}/" + echo -e "notes database: ${DB}" + echo -e "rc file: $RCFILE" + echo -e "debug file: /tmp/debug_bash-note.log" -text editor: ${EDITOR} -terminal: ${TERMINAL} -jq executable: ${JQ} -PAGER: ${PAGER} -__NOWCONF__ + echo -e "text editor: ${EDITOR}" + echo -e "terminal: ${TERMINAL}" + echo -e "jq executable: ${JQ}" + echo -e "PAGER: ${PAGER}" + echo -e "GIT use: ${GITUSE}" + echo -e "GIT remote: ${GITREMOTE}" + echo -e "GIT sync delay: ${GITSYNCDELAY}" } # this function returns a random 2 words title |
