You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
958 B
Bash

2 years ago
#!/bin/bash
# nq4t.com page composer
# by: Jay/nq4t
# usage: ./compose.sh [category] [title]
# example: /compose.sh Tech MY AWESOME POST TITLE NO YOU DON'T NEED TO ENCLOSE IT!
# run in the root of your site files/repository
# assumes categories are directories in root
# Variables and category argument
category=$1
pd=$(date +'%Y-%m-%d')
pt=$(date +'%T')
file=blog$$.md
# Ditch the category argument
shift 1
# Read everything else as title.
title=$@
t=${title,,}
t=${t// /-}
fd=$(date +'%Y/%^b/%d')
# Let's write the front matter to our temp file.
printf -- "---\ntitle: $title\nlayout: page\ndate: $pd $pt\ncategory: $category\nexcerpt_separator: <!--more-->\n---\n\n" >> $file
# Write the post in whatever editor you want.
nano + $file
# Move the file to category/_posts replacing spaces with hyphen
mv $file pages/_posts/$pd-${t// /-}.md
# Display some output to verify it's done.
printf "\nPage $title categorized in $tag: pages/_posts/$pd-$t.md\n\n"