42 lines
794 B
Text
42 lines
794 B
Text
|
#!/bin/sh -e
|
||
|
|
||
|
REQUIRED="zip"
|
||
|
SYNOPSIS="converts markdown-formatted text to ODT."
|
||
|
|
||
|
### odtref.sh
|
||
|
|
||
|
### common.sh
|
||
|
|
||
|
### tempdir.sh
|
||
|
|
||
|
if [ "$OUTPUT" = "-" ]; then
|
||
|
firstinfile="$(echo $ARGS | sed -ne '1p')"
|
||
|
firstinfilebase="${firstinfile%.*}"
|
||
|
destname="${firstinfilebase:-stdin}.odt"
|
||
|
else
|
||
|
destname="$OUTPUT"
|
||
|
fi
|
||
|
|
||
|
(
|
||
|
cp $REFERENCEODT $THIS_TEMPDIR/new.odt
|
||
|
pandoc -s -r markdown -w opendocument "$@" -o $THIS_TEMPDIR/content.xml
|
||
|
zip -9 -j $THIS_TEMPDIR/new.odt $THIS_TEMPDIR/content.xml
|
||
|
) || exit $?
|
||
|
|
||
|
is_target_exists=
|
||
|
if [ -f "$destname" ]; then
|
||
|
is_target_exists=1
|
||
|
mv "$destname" "$destname~"
|
||
|
fi
|
||
|
|
||
|
mv -f $THIS_TEMPDIR/new.odt "$destname"
|
||
|
|
||
|
errn "Created $destname"
|
||
|
[ -z "$is_target_exists" ] || {
|
||
|
errn " (previous file has been backed up as $destname~)"
|
||
|
}
|
||
|
|
||
|
err .
|
||
|
|
||
|
|