diff options
Diffstat (limited to 'src/xmlentry')
-rwxr-xr-x | src/xmlentry | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/xmlentry b/src/xmlentry new file mode 100755 index 0000000..c2458d1 --- /dev/null +++ b/src/xmlentry @@ -0,0 +1,48 @@ +#!/bin/sh +set -eu + + +usage() { + echo 'Usage: xmlentry FILENAME' +} + +FILENAME="${1:-}" +eval "$(assert-arg -- "$FILENAME" 'FILENAME')" +. "${FILENAME%.*}.conf" + + +title_html= +url_absolute= +update_xml= +cat <<EOF + <entry xml:lang="$lang"> + <title type="html"> + $title_html + </title> + <link type="text/html" rel="alternative" href="$url_absolute" title="$title_html" /> + <published> + $date_iso + </published> +$update_xml + <id> + $url_absolute + </id> + <author> + <name> + $author + </name> + <email> + $email + </email> + </author> + + <summary type="html"> +EOF + +head -n1 < "${FILENAME%.*}.htmlbody" | htmlesc +printf ' </summary>\n' +printf ' <content type="html" xml:base="%s">\n' "${url:?}" + +htmlesc < "${FILENAME%.*}.htmlbody" +printf ' </content>\n' +printf ' </entry>\n' |