Add post title extraction
This commit is contained in:
parent
8053b966f5
commit
0a86cfaee6
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
EDITOR=vim
|
||||
TRANSFORM="" # '' / 'markdown'
|
||||
TRANSFORM=('title' 'markdown') # empty or a subset of: 'title' 'markdown'
|
||||
USER="" # WP user to create the post
|
||||
PASSWORD="" # application password generated for your WP user
|
||||
SERVER="" # server hostname, optionally with subdirectories
|
||||
|
40
post.sh
40
post.sh
@ -3,7 +3,7 @@
|
||||
|
||||
# config:
|
||||
EDITOR=vim
|
||||
TRANSFORM="" # '' / 'markdown'
|
||||
TRANSFORM=() # empty or a subset of: 'title' 'markdown'
|
||||
USER="" # WP user to create the post
|
||||
PASSWORD="" # application password generated for your WP user
|
||||
SERVER="" # server hostname, optionally with subdirectories
|
||||
@ -19,19 +19,40 @@ $EDITOR $TMPFILE || exit 1
|
||||
[[ -e $TMPFILE ]] || exit 1
|
||||
|
||||
# transformations
|
||||
if [[ $TRANSFORM -eq "markdown" ]]; then
|
||||
python >$TMPFILE.trans <<EOF
|
||||
import markdown2
|
||||
print(markdown2.markdown_path('$TMPFILE'))
|
||||
cp $TMPFILE $TMPFILE.trans
|
||||
for T in "${TRANSFORM[@]}"; do
|
||||
if [[ "$T" == "title" ]]; then
|
||||
python >$TMPFILE.trans2 <<EOF
|
||||
import re
|
||||
with open('$TMPFILE.trans', 'r') as file:
|
||||
title = ''
|
||||
content = file.read()
|
||||
matches = re.match('^#+ (.+)', content, flags=0)
|
||||
if matches:
|
||||
title = matches.group(1)
|
||||
content = content[len(matches.group(0)) + 1:]
|
||||
with open('$TMPFILE.title', 'w') as titlefile:
|
||||
titlefile.write(title)
|
||||
print(content)
|
||||
EOF
|
||||
CONTENT=`cat $TMPFILE.trans`
|
||||
else
|
||||
CONTENT=`cat $TMPFILE`
|
||||
fi
|
||||
TITLE=`cat $TMPFILE.title`
|
||||
rm $TMPFILE.title
|
||||
mv $TMPFILE.trans2 $TMPFILE.trans
|
||||
elif [[ "$T" == "markdown" ]]; then
|
||||
python >$TMPFILE.trans2 <<EOF
|
||||
import markdown2
|
||||
print(markdown2.markdown_path('$TMPFILE.trans'))
|
||||
EOF
|
||||
mv $TMPFILE.trans2 $TMPFILE.trans
|
||||
fi
|
||||
done
|
||||
CONTENT=`cat $TMPFILE.trans`
|
||||
rm $TMPFILE.trans
|
||||
|
||||
echo "--- START POST ---"
|
||||
echo $CONTENT
|
||||
echo "--- END POST ---"
|
||||
echo "Title: $TITLE"
|
||||
echo "User: $USER"
|
||||
echo "Server: $SERVER"
|
||||
echo "Status: $STATUS"
|
||||
@ -42,6 +63,7 @@ read -p "Press enter to confirm..."
|
||||
|
||||
# push the post!
|
||||
curl --user "$USER:$PASSWORD" -X POST \
|
||||
--data-urlencode "title=$TITLE" \
|
||||
--data-urlencode "content=$CONTENT" \
|
||||
--data-urlencode "status=$STATUS" \
|
||||
--data-urlencode "categories=$CATEGORIES" \
|
||||
|
Loading…
Reference in New Issue
Block a user