diff --git a/ssb b/ssb index 97b7777..2102aaf 100755 --- a/ssb +++ b/ssb @@ -5,7 +5,6 @@ function usage echo \ "Usage: $0 [-d|-g|-h|-r] [-c CSS_PATH] [-e HEADER_PATH]" \ "[-f FOOTER_PATH] [-m MARKDOWN_RENDERER] [-o OUTPUT_DIR] [-p POSTS_DIR]" - exit 0 } @@ -16,9 +15,11 @@ function parse_optargs d) DISABLE_POSTS=true;; g) - gen_template;; + gen_template + exit 0;; h) - usage;; + usage + exit 0;; r) RECURSE_POSTS=true;; c) @@ -44,8 +45,8 @@ function set_default_args FOOTER_PATH=./footer.html HEADER_PATH=./header.html MARKDOWN_RENDERER=pandoc - OUTPUT_DIR=./ POSTS_DIR=./posts + OUTPUT_DIR=. } function echo_header_template @@ -85,15 +86,87 @@ function echo_footer_template } +function echo_css_template +{ + echo \ +'body {} +nav {} +h1 {} +h2 {} +h3 {} +h4 {} +h5 {} +h6 {} +p {} +a {} +a:hover {} +iframe {} +ul {} +header {} +footer {} +nav {} +hr {} +pre code {} +code {} code a {} +code a:hover {} +a code:hover {} +figure {} +figcaption {} +img {} +video {} +blockquote {} +table {} +th, td {} +li {} + +@media only screen and (max-width: 600px) +{ + body {} +} + +code span.al {} +code span.an {} +code span.at {} +code span.bn {} +code span.bu {} +code span.cf {} +code span.ch {} +code span.cn {} +code span.co {} +code span.cv {} +code span.do {} +code span.dt {} +code span.dv {} +code span.er {} +code span.ex {} +code span.fl {} +code span.fu {} +code span.im {} +code span.in {} +code span.kw {} +code span.op {} +code span.ot {} +code span.pp {} +code span.sc {} +code span.ss {} +code span.st {} +code span.va {} +code span.vs {} +code span.wa {}' +} + + function gen_template { echo_header_template > ./header.html echo_footer_template > ./footer.html + echo_css_template > ./styles.css } function get_posts { + h if [ "$RECURSE_POSTS" = false ]; then DEPTH_LIMITER="-maxdepth 1" fi @@ -120,7 +193,7 @@ function append_posts_list file_base=`basename $post .md` date=`get_mod_date "$post"` post_title=`grep -m 1 "^# .*" $post | cut -c 3-` - post_link="$date — [$post_title]($file_base.html)
" + post_link="$date - [$post_title]($file_base.html)
" posts_list="$posts_list $post_link" done echo $posts_list @@ -131,8 +204,9 @@ function make_html_files { for md_file in $@; do file_base=`basename $md_file .md` - append_posts_list $posts | cat $md_file - | $MARKDOWN_RENDERER > $file_base.html - cat $HEADER_PATH $file_base.html $FOOTER_PATH | tee $file_base.html + output_file="$OUTPUT_DIR/$file_base.html" + append_posts_list $posts | cat $md_file - | $MARKDOWN_RENDERER > $output_file + cat $HEADER_PATH $output_file $FOOTER_PATH | tee $output_file done } @@ -142,6 +216,7 @@ parse_optargs $@ shift `expr $OPTIND - 1` pages="$@" +[ -z "$pages" ] && echo No markdown pages given to render && exit 1 posts=`get_posts` md_files="$pages $posts"