diff --git a/new b/new new file mode 100755 index 0000000..1be15de --- /dev/null +++ b/new @@ -0,0 +1,45 @@ +#!/usr/bin/env bash + +export ED='tilde' +# export ED='vi' + +Help() +{ + # Display Help + echo "Add a new post to a hugo blog" + echo + echo "Syntax: new -c contentType -t 'some title'" + echo "options:" + echo "-c [required] Content Type: 'post', 'podcast', 'reading'" + echo "-t [required] Content Title: \"Any Plain Text At All\"" + echo "-h This display." + exit 0 +} + +while getopts c:t:h flag +do + case "${flag}" in + c) contentType=${OPTARG};; + t) title=${OPTARG};; + h) Help;; + *) echo "-h for help" >&2 + exit 1 ;; + esac +done + +if [ -z "$contentType" ]; then + echo "Specify a content type. Eg. '-c post'" + exit 1 +fi + +if [ -z "$title" ]; then + echo "Specify an entry title. Eg. '-t \"The Hamburg Happening\"'" + exit 1 +fi + +tmp=${title// /-} +filename=${tmp,,} +echo "$filename" + +hugo new "${contentType}"/"${filename}".md +$ED content/"${contentType}"/"${filename}".md