46 lines
925 B
Bash
Executable File
46 lines
925 B
Bash
Executable File
#!/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
|