#!/bin/bash notify_err() { if [[ -z "$1" ]]; then err_msg="unspecified error" else err_msg="${1}" fi notify-send "${err_msg}" exit 1 } if [[ -z ${1} ]]; then echo "meeting type not defined!" notify-send "meeting type not defined!" exit fi minutes_dir="${HOME}/Documents/Housing/SCA/Meetings" template_dir="${minutes_dir}/templates" case "$1" in board) meeting_type=Board ;; house) meeting_type=House ;; *) echo "invalid meeting type!" notify_err "invalid meeting type!" ;; esac year=$(date +%Y) month=$(date +%m) month_locale=$(date +%b) day=$(date +%d) minutes_path="${minutes_dir}/${meeting_type} Meetings/${year}-${month}-${day}.wikitext" meeting_template="${template_dir}/${1}_meeting" if [[ -f "${minutes_path}" ]]; then notify-send "${meeting_type} meeting minutes file for ${year}-${month}-${day} already exists, opening for editing..." else notify-send "Creating ${meeting_type} meeting minutes file for ${year}-${month}-${day}..." printf '* %s %s, %s at the [house]\n' "${month_locale}" "${day}" "${year}" >"${minutes_path}" cat "${meeting_template}" | tail -n+2 | sed 's/ //g' >>"${minutes_path}" fi cd "${template_dir}" || notify_err 'meeting template directory does not exist!' alacritty -e editor "${minutes_path}"