#!/bin/bash

# This script returns a random topic for me to revise

# It is aliased to cs-revise in .zshrc

# Choose source directories...
DIRS_TO_PARSE="../Computer_Architecture ../Databases ../Electronics_and_Hardware ../Operating_Systems ../Programming_Languages/Shell ../Logic"

# Return array of all files belonging to source dirs...
for ele in $DIRS_TO_PARSE; do
    FILE_MATCHES+=( $(find $ele -name "*.md" -type f) )
done

# Generate a random integer between 0 and the match array length...
RANDOM_FILE_INDEX=$(( $RANDOM % ${#FILE_MATCHES[@]} + 0 ))

# Return file matching that index...
echo "Revise this topic: ${FILE_MATCHES[$RANDOM_FILE_INDEX]}"
