removed the 'function' keyword before declaring a function as is not needed.
[bash-notes.git] / SOURCE / CORE / helpers.sh
index a8f0981..b7b9180 100644 (file)
@@ -1,5 +1,5 @@
 # check if input is a number, returns false or the number itself
-function check_noteID() {
+check_noteID() {
        IN=$1
        case $IN in
                ''|*[!0-9]*)
@@ -11,36 +11,65 @@ function check_noteID() {
        esac
 }
 
-function helptext() {
+helptext() {
     echo "Usage:"
-    echo "  $0 [PARAMS] ..."
+    echo "  $0 [PARAMS] [note ID]..."
+       echo ""
+    echo "${BASENAME} parameters are:"
+    echo -e "  -h | --help\t\t\t: This help text"
+    echo -e "  -p | --plain\t\t\t: Output is in plain text"
+    echo -e "\t\t\t\t  (without this option the output is formatted)"
+    echo -e "\t\t\t\t  (this option must precede all others)"
+    echo -e "  -l | --list\t\t\t: List existing notes"
+    echo -e "  -a | --add=[\"<title>\"]\t: Add new note"
+    echo -e "  -e | --edit=[<note>]\t\t: Edit note"
+    echo -e "  -d | --delete=[<note> | all]    : Delete single note or all notes at once"
+    echo -e "  -s | --show=[<note>]\t\t: Display note using your favourite PAGER"
+    echo -e "  -r | --restore=[<dir>]\t: Restore a previous backup from dir"
+    echo -e "  -v | --version\t\t: Print version"
+    echo -e "  --userconf\t\t\t: Export User config file"
+    echo -e "  --backup [<dest>]\t\t: Backup your data in your destination folder"
     echo ""
-       cat << __NOWCONF__ 
+    echo -e "if a non option is passed and is a valid note ID, the note will be displayed."
+}
+
+configtext() {
+    cat << __NOWCONF__ 
 ${BASENAME} configuration is:
 
-base directory:                ${BASEDIR}/
-notes archive:         ${NOTESDIR}/
-notes database:                ${DB}
-rc file:               $RCFILE
-debug file:            /tmp/debug_bash-note.log
+base directory:     ${BASEDIR}/
+notes archive:      ${NOTESDIR}/
+notes database:     ${DB}
+rc file:        $RCFILE
+debug file:     /tmp/debug_bash-note.log
 
-text editor:           ${EDITOR}
-terminal:              ${TERMINAL}
-jq executable:         ${JQ}
+text editor:        ${EDITOR}
+terminal:       ${TERMINAL}
+jq executable:      ${JQ}
+PAGER:                  ${PAGER}
 __NOWCONF__
 
-       echo ""
-    echo "${BASENAME} parameters are:"
-    echo "  -h | --help                        : This help text"
-    echo "  -p | --plain                       : Output is in plain text"
-    echo "                               (without this option the output is formatted)"
-    echo "                               (this option must precede all others)"
-    echo "  -l | --list                        : List existing notes"
-    echo "  -a | --add [\"<title>\"]   : Add new note"
-    echo "  -e | --edit [<note>]               : Edit note"
-    echo "  -d | --delete [<note> | all]       : Delete single note or all notes at once"
-    echo "     -s | --show [<note>]            : Display note using your favourite PAGER"
-    echo "  -v | --version             : Print version"
-    echo "  --userconf                 : Export User config file"
-    echo ""
 }
+
+# this function returns a random 2 words title
+random_title() {
+    # Constants 
+    X=0
+    DICT=/usr/share/dict/words
+    OUTPUT=""
+     
+    # total number of non-random words available 
+    COUNT=$(cat $DICT | wc -l)
+     
+    # while loop to generate random words  
+    while [ "$X" -lt 2 ] 
+    do 
+        RAND=$(od -N3 -An -i /dev/urandom | awk -v f=0 -v r="$COUNT" '{printf "%i\n", f + r * $1 / 16777216}')
+        OUTPUT+="$(sed `echo $RAND`"q;d" $DICT)"
+        (("X = X + 1"))
+        [[ $X -eq 1 ]] && OUTPUT+=" "
+    done
+
+    echo $OUTPUT
+}
+