2022-06-12 16:57:12 +00:00
|
|
|
#!/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:"
|
2022-12-25 10:22:02 +00:00
|
|
|
echo "-c [required] Content Type: 'post', 'podcast', 'reading'"
|
|
|
|
echo "-t [required] Content Title: \"Any Plain Text At All\""
|
|
|
|
echo "-h This display."
|
2022-06-12 16:57:12 +00:00
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
|
|
|
while getopts c:t:h flag
|
|
|
|
do
|
|
|
|
case "${flag}" in
|
|
|
|
c) contentType=${OPTARG};;
|
|
|
|
t) title=${OPTARG};;
|
2022-12-25 10:22:02 +00:00
|
|
|
h) Help;;
|
|
|
|
*) echo "-h for help" >&2
|
|
|
|
exit 1 ;;
|
2022-06-12 16:57:12 +00:00
|
|
|
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,,}
|
2023-07-21 20:03:26 +00:00
|
|
|
echo "$filename"
|
2022-06-12 16:57:12 +00:00
|
|
|
|
2023-07-21 20:03:26 +00:00
|
|
|
hugo new "${contentType}"/"${filename}".md
|
|
|
|
$ED content/"${contentType}"/"${filename}".md
|