#!/bin/sh # This is a script for setting up all the things I like :3 _install() { echo "Installing!" exit 0 } _print_title() { echo "$(figlet mskor dev-env)" } _notes_locations_print() { echo "\t\ttodo.txt:\t$TODOTXTPATH" echo "\t\twiki:\t\t$VIMWIKIPATH" echo "\t\tvimrc\t\t$MYVIMRC" } _help() { _print_title echo "dev-env.sh usage: $0 [mode]" echo "\txn: Extract notes to:" _notes_locations_print echo "\tsn: Store notes:" _notes_locations_print echo "\tnotes: Launch note making tmux session." exit 1 } _extract_notes() { if [ ! -e "./archive.tar.gz" ]; then echo "archive.tar.gz does not exist." exit 1 fi mkdir tmp tar xzf archive.tar.gz -C . cp -r ./tmp/wiki $(dirname $VIMWIKIPATH) cp ./tmp/todo.txt $TODOTXTPATH cp ./tmp/.vimrc $MYVIMRC rm -r ./tmp echo "Notes successfully extracted from archive." exit 0 } _storage_notes() { mkdir tmp cp $TODOTXTPATH ./tmp/ cp -r $VIMWIKIPATH ./tmp/ cp $MYVIMRC ./tmp/ tar czf archive.tar.gz ./tmp/ rm -r tmp echo "Notes successfully stored!" exit 0 } _launch_notes() { tmux new-session -d 'bash' tmux new-window 'vim $TODOTXTPATH $VIMWIKIPATH/index.md' tmux -2 attach-session -d } # main # check for the neccessary variables if [ -z "$VIMWIKIPATH" ]; then echo "VIMWIKIPATH not set." exit 1 fi if [ -z "$TODOTXTPATH" ]; then echo "TODOTXTPATH not set." exit 1 fi if [ -z "$MYVIMRC" ]; then echo "MYVIMRC not set." exit 1 fi # run the user's command case "$1" in sn ) _storage_notes ;; xn ) _extract_notes ;; notes ) _launch_notes ;; install ) _install ;; * ) _help ;; esac