diff --git a/notes.sh b/notes.sh index 9a88a4f..5d669db 100755 --- a/notes.sh +++ b/notes.sh @@ -1,15 +1,9 @@ #! /usr/bin/bash -## notes management - # Load config . ${HOME}/ayo.conf . ${scripts_dir}/functions.sh -# TODO: write log for echoes with >>> - -command=$1 - getopts "t" typora; #check if -t flag is given function editFile() { @@ -55,139 +49,144 @@ function createNote() { } } +function main() { -## DIFF -if [ "$1" = "diff" ] || [ "$1" = "d" ]; then - cd $notes_dir - git add . - git diff --staged . -## SYNC notes in directory -elif [ "$1" = "sync" ] || [ "$1" = "s" ]; then - notesSync + ## DIFF + if [ "$1" = "diff" ] || [ "$1" = "d" ]; then + cd $notes_dir + git add . + git diff --staged . + ## SYNC notes in directory + elif [ "$1" = "sync" ] || [ "$1" = "s" ]; then + notesSync -## LIST notes in directory -elif [ "$1" = "list" ] || [ "$1" = "l" ]; then - echo "ACTIVE NOTES: " - notesSync - if ! [ "$2" = "" ]; then - files=( $notes_dir/$2/*.md ) - else + ## LIST notes in directory + elif [ "$1" = "list" ] || [ "$1" = "l" ]; then + echo "ACTIVE NOTES: " + notesSync + if ! [ "$2" = "" ]; then + files=( $notes_dir/$2/*.md ) + else + files=( $notes_dir/*.md ) + fi + index=0 + for file in "${files[@]##*/}"; do + ((index++)) + echo "$index) $file" + done + + ## OPEN a note from a list + elif [ "$1" = "open" ] || [ "$1" = "o" ]; then + notesSync files=( $notes_dir/*.md ) - fi - index=0 - for file in "${files[@]##*/}"; do - ((index++)) - echo "$index) $file" - done -## OPEN a note from a list -elif [ "$1" = "open" ] || [ "$1" = "o" ]; then - notesSync - files=( $notes_dir/*.md ) + if ! [ "$2" = "" ]; then + index=($2-1) + open_file=${files[$index]} + editFile "$open_file" + else + PS3="Open file #: " + echo "Please select a file to OPEN." + select file in "${files[@]##*/}"; do + { + echo "Opening $file" + editFile "$file" + break + } || + { + echo "bad choice" + break + } + done + fi - if ! [ "$2" = "" ]; then - index=($2-1) - open_file=${files[$index]} - editFile "$open_file" - else - PS3="Open file #: " - echo "Please select a file to OPEN." - select file in "${files[@]##*/}"; do - { - echo "Opening $file" - editFile "$file" - break - } || - { - echo "bad choice" - break - } - done - fi - -## REMOVE a note from a list -elif [ "$1" = "remove" ] || [ "$1" = "rm" ]; then - notesSync - files=( $notes_dir/*.md ) - - if ! [ "$2" = "" ]; then - index=($2-1) - remove_file=${files[$index]} - echo "Removing $remove_file" - rm "$remove_file" + ## REMOVE a note from a list + elif [ "$1" = "remove" ] || [ "$1" = "rm" ]; then notesSync - else - PS3="Remove file #: " - echo "Please select a file to REMOVE." - select file in "${files[@]##*/}"; do - { - echo "Removing $file" - rm "${notes_dir}/${file}" - notesSync - break - } || - { - echo "bad choice" - break - } - done - fi + files=( $notes_dir/*.md ) -## ARCHIVE a note from a list -elif [ "$1" = "archive" ] || [ "$1" = "a" ]; then - notesSync - files=( $notes_dir/*.md ) + if ! [ "$2" = "" ]; then + index=($2-1) + remove_file=${files[$index]} + echo "Removing $remove_file" + rm "$remove_file" + notesSync + else + PS3="Remove file #: " + echo "Please select a file to REMOVE." + select file in "${files[@]##*/}"; do + { + echo "Removing $file" + rm "${notes_dir}/${file}" + notesSync + break + } || + { + echo "bad choice" + break + } + done + fi - if ! [ "$2" = "" ]; then - index=($2-1) - archive_file=${files[$index]} - echo "Archiving $archive_file" - mv "$archive_file" "${archive_dir}/" + ## ARCHIVE a note from a list + elif [ "$1" = "archive" ] || [ "$1" = "a" ]; then notesSync + files=( $notes_dir/*.md ) + + if ! [ "$2" = "" ]; then + index=($2-1) + archive_file=${files[$index]} + echo "Archiving $archive_file" + mv "$archive_file" "${archive_dir}/" + notesSync + else + PS3="Archive file #: " + echo "Move a note to ARCHIVE ($(ls ${archive_dir} | wc -l))." + select file in "${files[@]##*/}"; do + { + echo "Archiving $file" + mv "${notes_dir}/${file}" "${archive_dir}/" + notesSync + break + } || + { + echo "bad choice" + break + } + done + fi + + ## COPY content a note from a list + elif [ "$1" = "copy" ] || [ "$1" = "c" ]; then + files=( $notes_dir/*.md ) + + if ! [ "$2" = "" ]; then + index=($2-1) + copy_file=${files[$index]} + echo "Copied content of $copy_file" + xclip -sel c < "$copy_file" + else + PS3="Copy file content #: " + echo "Select a note to COPY Content." + select file in "${files[@]##*/}"; do + { + echo "Copied content of $file" + xclip -sel c < "${notes_dir}/${file}" + break + } || + { + echo "bad choice" + break + } + done + fi + + + ## CREATE a note (default) else - PS3="Archive file #: " - echo "Move a note to ARCHIVE ($(ls ${archive_dir} | wc -l))." - select file in "${files[@]##*/}"; do - { - echo "Archiving $file" - mv "${notes_dir}/${file}" "${archive_dir}/" - notesSync - break - } || - { - echo "bad choice" - break - } - done + createNote fi -## COPY content a note from a list -elif [ "$1" = "copy" ] || [ "$1" = "c" ]; then - files=( $notes_dir/*.md ) +} - if ! [ "$2" = "" ]; then - index=($2-1) - copy_file=${files[$index]} - echo "Copied content of $copy_file" - xclip -sel c < "$copy_file" - else - PS3="Copy file content #: " - echo "Select a note to COPY Content." - select file in "${files[@]##*/}"; do - { - echo "Copied content of $file" - xclip -sel c < "${notes_dir}/${file}" - break - } || - { - echo "bad choice" - break - } - done - fi - - -## CREATE a note (default) -else - createNote -fi +main \ No newline at end of file