diff options
| author | danix <danix@danix.xyz> | 2023-04-10 18:15:36 +0200 |
|---|---|---|
| committer | danix <danix@danix.xyz> | 2023-04-10 18:15:36 +0200 |
| commit | 6a1930959e1cb0ec8739254bedc6b8de2bcc20fd (patch) | |
| tree | f674b2102b038eaeec30a03da45ff965ede540e2 /notes.sh | |
| parent | f1343f207a71b79c69474bd0205fa09b46a6a876 (diff) | |
| download | bash-notes-6a1930959e1cb0ec8739254bedc6b8de2bcc20fd.tar.gz bash-notes-6a1930959e1cb0ec8739254bedc6b8de2bcc20fd.zip | |
when creating a note, if the title is not specified, two random words will be assigned as title.
Diffstat (limited to 'notes.sh')
| -rwxr-xr-x | notes.sh | 25 |
1 files changed, 24 insertions, 1 deletions
@@ -199,13 +199,36 @@ __NOWCONF__ } +# this function returns a random 2 words title +function 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 +} + function addnote() { # remove eventually existing temp DB file if [[ -f $TMPDB ]]; then rm $TMPDB fi - NOTETITLE="$1" + RTITLE=$(random_title) + [[ -z "$1" ]] && NOTETITLE="$RTITLE" || NOTETITLE="$1" echo "adding new note - \"$NOTETITLE\"" # shellcheck disable=SC2086 LASTID=$($JQ '.notes[-1].id // 0 | tonumber' $DB) |
