Files
dotfiles/bin/markdown-to-pdf

54 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
set -o nounset
usage() {
cat <<EOF >&2
$0 <input file> <output file>
EOF
}
if (( $# != 2 )) ; then
usage
exit 1
fi
markdown_extensions=(
blank_before_header
space_in_atx_header
blank_before_blockquote
yaml_metadata_block
backtick_code_blocks
fancy_lists
native_divs
fenced_divs
task_lists
pipe_tables
)
function join_by { local d=$1; shift; local f=$1; shift; printf %s "$f" "${@/#/$d}"; }
pandoc \
--from markdown+"$(join_by "+" "${markdown_extensions[@]}")"\
--to pdf \
--verbose \
--email-obfuscation=none \
--columns=2000 \
--fail-if-warnings \
--standalone \
--variable tables=true \
--variable euro=yes \
--variable colorlinks=yes \
--variable linestretch=1.3 \
--variable papersize=a4 \
--variable date=$(date --iso-8601=date) \
--variable fontsize=12pt \
--variable fontfamily=libertine \
--variable familydefault=sfdefault \
--variable documentclass=scrartcl \
--variable fontfamilyoptions= \
--variable lof= \
--variable lot= \
-i "${1}" \
--output "${2}" \