diff options
| author | Philipp Schafft <lion@lion.leolix.org> | 2017-04-30 11:41:59 +0000 |
|---|---|---|
| committer | Philipp Schafft <lion@lion.leolix.org> | 2017-04-30 11:41:59 +0000 |
| commit | 7f5a80cb6129524330e08f33265b002e02ca7469 (patch) | |
| tree | f8bae0d85541a60d6532d1215fad9392c628caa9 /webgen | |
| parent | 0980ae2548ce1d4c5292b72c23bc8b4b7f4c5829 (diff) | |
Cleanup: Updated indenting
Diffstat (limited to 'webgen')
| -rwxr-xr-x | webgen | 552 |
1 files changed, 276 insertions, 276 deletions
@@ -49,33 +49,33 @@ LANGUAGE='' # CODE: setup() { - if [ -e $TPLS -o -e Makefile ] - then - echo 'Error: Environment already initialized.' >&2 - exit 1 - fi - mkdir $TPLS - cd $TPLS - touch \#section-index - touch \#menu-index - touch ./-menu-none - touch ./-menu-mid - { - echo '<html>' - echo ' <head>' - echo ' <title>Demo page</title>' - echo ' </head>' - echo ' <body>' - } > ./-header - { - echo ' <h1>Demo page</h1>' - echo ' <p>This is the webgen demo page. This page was generated by <pre>webgen --setup</pre>.</p>' - } > ./+index - { - echo ' </body>' - echo '</html>' - } > ./-end - cat > ../Makefile <<'EOL' + if [ -e $TPLS -o -e Makefile ] + then + echo 'Error: Environment already initialized.' >&2 + exit 1 + fi + mkdir $TPLS + cd $TPLS + touch \#section-index + touch \#menu-index + touch ./-menu-none + touch ./-menu-mid + { + echo '<html>' + echo ' <head>' + echo ' <title>Demo page</title>' + echo ' </head>' + echo ' <body>' + } > ./-header + { + echo ' <h1>Demo page</h1>' + echo ' <p>This is the webgen demo page. This page was generated by <pre>webgen --setup</pre>.</p>' + } > ./+index + { + echo ' </body>' + echo '</html>' + } > ./-end + cat > ../Makefile <<'EOL' # (mostly) Universal Makefile for webgen. # Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2009-2016 @@ -146,67 +146,67 @@ EOL } list_tpls() { - cd $TPLS - ls -1 -- +* \~* =* 2> /dev/null + cd $TPLS + ls -1 -- +* \~* =* 2> /dev/null } list_dependencies() { - cd $TPLS - - case "$1" in - '+'*|'~'*) - _tpl=`ls -1 -- "$1" 2> /dev/null` - ;; - '='*) - echo "$TPLS$1" - return - ;; - *'.'*'.html') - _mask=`echo "$1" | cut -d. -f1` - _lang=`echo "$1" | cut -d. -f2` - _tpl=`ls -1 -- ?"$_mask" 2> /dev/null` - [ "$LANGUAGE" = '' ] && LANGUAGE="$_lang" - ;; - *'.html') - _mask=`echo "$1" | cut -d. -f1` - _tpl=`ls -1 -- ?"$_mask" 2> /dev/null` - ;; - *) - _tpl="=$1" - ;; - esac - - if [ "$_tpl" = '' ] - then - echo "Template not found: $1" >&2 - exit 1 - fi - MENU=$(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#menu-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); - { - printf "%s\n" $_tpl -header -end $MENU - if [ "$LANGUAGE" != '' ] - then - ls -1 -- "#translate" "#translate.$LANGUAGE" "#translate$_tpl" "#translate$_tpl.$LANGUAGE" 2> /dev/null - fi - ls -1 -- -menu-mid \#menu-index* \#section-index* 2> /dev/null - if [ "$CLEANTPLNAME" = 'FAQ' ] - then - find FAQ/ -type d -not -wholename \*CVS\* | sed 's#^FAQ/##;' | grep -v ^$ - find FAQ/ -type f -not -wholename \*CVS\* -and -name \*.faq - fi - if [ "$CLEANTPLNAME" = 'NEWS' ] - then - ls -1 -- NEWS/*.news 2> /dev/null - fi - } | sed 's#^#tpl/#' + cd $TPLS + + case "$1" in + '+'*|'~'*) + _tpl=`ls -1 -- "$1" 2> /dev/null` + ;; + '='*) + echo "$TPLS$1" + return + ;; + *'.'*'.html') + _mask=`echo "$1" | cut -d. -f1` + _lang=`echo "$1" | cut -d. -f2` + _tpl=`ls -1 -- ?"$_mask" 2> /dev/null` + [ "$LANGUAGE" = '' ] && LANGUAGE="$_lang" + ;; + *'.html') + _mask=`echo "$1" | cut -d. -f1` + _tpl=`ls -1 -- ?"$_mask" 2> /dev/null` + ;; + *) + _tpl="=$1" + ;; + esac + + if [ "$_tpl" = '' ] + then + echo "Template not found: $1" >&2 + exit 1 + fi + MENU=$(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#menu-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); + { + printf "%s\n" $_tpl -header -end $MENU + if [ "$LANGUAGE" != '' ] + then + ls -1 -- "#translate" "#translate.$LANGUAGE" "#translate$_tpl" "#translate$_tpl.$LANGUAGE" 2> /dev/null + fi + ls -1 -- -menu-mid \#menu-index* \#section-index* 2> /dev/null + if [ "$CLEANTPLNAME" = 'FAQ' ] + then + find FAQ/ -type d -not -wholename \*CVS\* | sed 's#^FAQ/##;' | grep -v ^$ + find FAQ/ -type f -not -wholename \*CVS\* -and -name \*.faq + fi + if [ "$CLEANTPLNAME" = 'NEWS' ] + then + ls -1 -- NEWS/*.news 2> /dev/null + fi + } | sed 's#^#tpl/#' } show_help() { - echo "Usage: webgen [--preprocessor PP] [--language LANG] [{+|~|=}][TPL]" - echo " or: webgen [--language LANG] --list-dependencies [{+|~|=}]TPL" - echo " or: webgen --setup" - echo " or: webgen --list" - echo " or: webgen --help" + echo "Usage: webgen [--preprocessor PP] [--language LANG] [{+|~|=}][TPL]" + echo " or: webgen [--language LANG] --list-dependencies [{+|~|=}]TPL" + echo " or: webgen --setup" + echo " or: webgen --list" + echo " or: webgen --help" } TEMPLATES_PAGE="*" @@ -215,228 +215,228 @@ TEMPLATES_RAW="*" while [ ! -z "$1" ] do - case "$1" in - '--preprocessor') - PREPROCESSOR="$2" - shift - ;; - '--language') - if [ "$2" = 'default' ] - then - LANGUAGE='' - else - LANGUAGE="$2" - fi - shift - ;; - '--destdir') - pushd "$2" > /dev/null - OUT=`pwd` - popd > /dev/null - shift; - ;; - '--setup') - setup - exit 0 - ;; - '--list') - list_tpls - exit 0 - ;; - '--list-dependencies') - list_dependencies $2 - exit 0 - ;; - '--help') - show_help - exit 0 - ;; - '--'*) - echo "Error: Unknown option: $1" >&2 - exit 1 - ;; - '+') - TEMPLATES_PAGE="*" - TEMPLATES_DYN="NO-TEMPLATES" - TEMPLATES_RAW="NO-TEMPLATES" - ;; - '~') - TEMPLATES_PAGE="NO-TEMPLATES" - TEMPLATES_DYN="*" - TEMPLATES_RAW="NO-TEMPLATES" - ;; - '=') - TEMPLATES_PAGE="NO-TEMPLATES" - TEMPLATES_DYN="NO-TEMPLATES" - TEMPLATES_RAW="*" - ;; - '+'*) - TEMPLATES_PAGE=`echo "$1" | sed s/^.//` - TEMPLATES_DYN="NO-TEMPLATES" - TEMPLATES_RAW="NO-TEMPLATES" - ;; - '~'*) - TEMPLATES_PAGE="NO-TEMPLATES" - TEMPLATES_DYN=`echo "$1" | sed s/^.//` - TEMPLATES_RAW="NO-TEMPLATES" - ;; - '='*) - TEMPLATES_PAGE="NO-TEMPLATES" - TEMPLATES_DYN="NO-TEMPLATES" - TEMPLATES_RAW=`echo "$1" | sed s/^.//` - ;; - *'.'*'.html') - _mask=`echo "$1" | cut -d. -f1` - _lang=`echo "$1" | cut -d. -f2` - [ "$LANGUAGE" = '' ] && LANGUAGE="$_lang" - TEMPLATES_PAGE="$_mask" - TEMPLATES_DYN="$_mask" - TEMPLATES_RAW="$_mask" - ;; - *'.html') - _mask=`echo "$1" | cut -d. -f1` - TEMPLATES_PAGE="$_mask" - TEMPLATES_DYN="$_mask" - TEMPLATES_RAW="$_mask" - ;; - *) - TEMPLATES_PAGE="$1" - TEMPLATES_DYN="$1" - TEMPLATES_RAW="$1" - ;; - esac - shift + case "$1" in + '--preprocessor') + PREPROCESSOR="$2" + shift + ;; + '--language') + if [ "$2" = 'default' ] + then + LANGUAGE='' + else + LANGUAGE="$2" + fi + shift + ;; + '--destdir') + pushd "$2" > /dev/null + OUT=`pwd` + popd > /dev/null + shift; + ;; + '--setup') + setup + exit 0 + ;; + '--list') + list_tpls + exit 0 + ;; + '--list-dependencies') + list_dependencies $2 + exit 0 + ;; + '--help') + show_help + exit 0 + ;; + '--'*) + echo "Error: Unknown option: $1" >&2 + exit 1 + ;; + '+') + TEMPLATES_PAGE="*" + TEMPLATES_DYN="NO-TEMPLATES" + TEMPLATES_RAW="NO-TEMPLATES" + ;; + '~') + TEMPLATES_PAGE="NO-TEMPLATES" + TEMPLATES_DYN="*" + TEMPLATES_RAW="NO-TEMPLATES" + ;; + '=') + TEMPLATES_PAGE="NO-TEMPLATES" + TEMPLATES_DYN="NO-TEMPLATES" + TEMPLATES_RAW="*" + ;; + '+'*) + TEMPLATES_PAGE=`echo "$1" | sed s/^.//` + TEMPLATES_DYN="NO-TEMPLATES" + TEMPLATES_RAW="NO-TEMPLATES" + ;; + '~'*) + TEMPLATES_PAGE="NO-TEMPLATES" + TEMPLATES_DYN=`echo "$1" | sed s/^.//` + TEMPLATES_RAW="NO-TEMPLATES" + ;; + '='*) + TEMPLATES_PAGE="NO-TEMPLATES" + TEMPLATES_DYN="NO-TEMPLATES" + TEMPLATES_RAW=`echo "$1" | sed s/^.//` + ;; + *'.'*'.html') + _mask=`echo "$1" | cut -d. -f1` + _lang=`echo "$1" | cut -d. -f2` + [ "$LANGUAGE" = '' ] && LANGUAGE="$_lang" + TEMPLATES_PAGE="$_mask" + TEMPLATES_DYN="$_mask" + TEMPLATES_RAW="$_mask" + ;; + *'.html') + _mask=`echo "$1" | cut -d. -f1` + TEMPLATES_PAGE="$_mask" + TEMPLATES_DYN="$_mask" + TEMPLATES_RAW="$_mask" + ;; + *) + TEMPLATES_PAGE="$1" + TEMPLATES_DYN="$1" + TEMPLATES_RAW="$1" + ;; + esac + shift done cd $TPLS cat_file() { - _file="$1" - case "$PREPROCESSOR" in - none) - cat -- "$_file" - ;; - cpp) - cpp -P -o - -D__TEMPLATE__="\"$_tpl\"" -D__TEMPLATE_CLEAN__="\"$CLEANTPLNAME\"" -D __OUTPUT_FILE__="\"$OF\"" ./"$_file" - ;; - *) - echo "Error: Unknown preprocessor: $PREPROCESSOR" >&2 - ;; - esac + _file="$1" + case "$PREPROCESSOR" in + none) + cat -- "$_file" + ;; + cpp) + cpp -P -o - -D__TEMPLATE__="\"$_tpl\"" -D__TEMPLATE_CLEAN__="\"$CLEANTPLNAME\"" -D __OUTPUT_FILE__="\"$OF\"" ./"$_file" + ;; + *) + echo "Error: Unknown preprocessor: $PREPROCESSOR" >&2 + ;; + esac } gen_news() { - if [ ! -d NEWS/ ] - then - return 1 - fi - - ls -1t NEWS/*.news | while read line - do - title=`echo "$line" | sed 's/.news$//; s#^NEWS/##;'` - e=`echo "$title" | sed 's/[^a-zA-Z0-9]/_/g'` - _t=`stat --format='%Z %U' "$line"` - ctime=`echo "$_t" | cut -d' ' -f1` - user=`echo "$_t" | cut -d' ' -f2` - ctime_lr=`date --date "1970-01-01 00:00:00 UTC + ${ctime}sec"` - echo "<h2><a name="\""news.gen.$e"\"">$title</a></h2>" - echo "<p align=\"right\"><small>$ctime_lr by $user</small></p>" - echo " <p>" - sed 's#^$#</p><p>#' < "$line" - echo " </p>" - done + if [ ! -d NEWS/ ] + then + return 1 + fi + + ls -1t NEWS/*.news | while read line + do + title=`echo "$line" | sed 's/.news$//; s#^NEWS/##;'` + e=`echo "$title" | sed 's/[^a-zA-Z0-9]/_/g'` + _t=`stat --format='%Z %U' "$line"` + ctime=`echo "$_t" | cut -d' ' -f1` + user=`echo "$_t" | cut -d' ' -f2` + ctime_lr=`date --date "1970-01-01 00:00:00 UTC + ${ctime}sec"` + echo "<h2><a name="\""news.gen.$e"\"">$title</a></h2>" + echo "<p align=\"right\"><small>$ctime_lr by $user</small></p>" + echo " <p>" + sed 's#^$#</p><p>#' < "$line" + echo " </p>" + done } gen_faq() { - find FAQ/ -type d -not -wholename \*CVS\* | sed 's#^FAQ/##;' | grep -v ^$ | sort > "$OF.FAQCATS" - find FAQ/ -type f -not -wholename \*CVS\* -and -name \*.faq | sed 's#^FAQ/##; s#\.faq$##' | sort > "$OF.FAQINDEX" - echo - echo "<ul>" - while read cat - do - echo " <li><b>$cat</b>" - echo " <ul>" - grep "^$cat/" < "$OF.FAQINDEX" | \ - while IFS='/' read dummy q - do - e=`echo "$q" | sed 's/[^a-zA-Z0-9]/_/g'` - echo " <li><a href="\""#faq.gen.$e"\"">$q</a></li>" - done - echo " </ul>" - echo " </li>" - done < "$OF.FAQCATS" - echo "</ul>" - - [ -f ./-faq_eoh ] && cat_file "-faq_eoh" - - while read cat - do - echo " <h2>$cat</h2>" - echo - grep "^$cat/" < "$OF.FAQINDEX" | \ - while IFS='/' read dummy q - do - e=`echo "$q" | sed 's/[^a-zA-Z0-9]/_/g'` - echo " <h3><a name="\""faq.gen.$e"\"">$q</a></h3>" - echo " <p>" - sed 's#^$#</p><p>#' < "FAQ/$cat/$q.faq" - echo " </p>" - done - done < "$OF.FAQCATS" - - echo + find FAQ/ -type d -not -wholename \*CVS\* | sed 's#^FAQ/##;' | grep -v ^$ | sort > "$OF.FAQCATS" + find FAQ/ -type f -not -wholename \*CVS\* -and -name \*.faq | sed 's#^FAQ/##; s#\.faq$##' | sort > "$OF.FAQINDEX" + echo + echo "<ul>" + while read cat + do + echo " <li><b>$cat</b>" + echo " <ul>" + grep "^$cat/" < "$OF.FAQINDEX" | \ + while IFS='/' read dummy q + do + e=`echo "$q" | sed 's/[^a-zA-Z0-9]/_/g'` + echo " <li><a href="\""#faq.gen.$e"\"">$q</a></li>" + done + echo " </ul>" + echo " </li>" + done < "$OF.FAQCATS" + echo "</ul>" + + [ -f ./-faq_eoh ] && cat_file "-faq_eoh" + + while read cat + do + echo " <h2>$cat</h2>" + echo + grep "^$cat/" < "$OF.FAQINDEX" | \ + while IFS='/' read dummy q + do + e=`echo "$q" | sed 's/[^a-zA-Z0-9]/_/g'` + echo " <h3><a name="\""faq.gen.$e"\"">$q</a></h3>" + echo " <p>" + sed 's#^$#</p><p>#' < "FAQ/$cat/$q.faq" + echo " </p>" + done + done < "$OF.FAQCATS" + + echo } proc_page() { - _tpl="$1" - CLEANTPLNAME=$(echo "$_tpl" | sed 's/^[\-\+\~]//') - if [ "$LANGUAGE" = '' ] - then - LANGUAGE_SUFFIX='' - TRANSLATE_REGEX='s/(translate:\(.*\):)/\1/' - else - LANGUAGE_SUFFIX=".$LANGUAGE" - TRANSLATE_REGEX=`grep "^$LANGUAGE[[:space:]]" "#translate" "#translate$LANGUAGE_SUFFIX" "#translate$_tpl" "#translate$_tpl$LANGUAGE_SUFFIX" 2> /dev/null | sed 's/^[^\t]*\t\t*\([^\t]*\)\t\t*\(.*\)$/s|(translate:\1:)|\2|g;/'`'s/(translate:\(.*\):)/\1/' - fi - OF="$OUT"/"$CLEANTPLNAME""$LANGUAGE_SUFFIX""$PAGE_SUFFIX" - echo "Compiling $CLEANTPLNAME -> $OF" - SECTIONS=`for _sec in $(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#section-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); do O=''; for i in $(tr . ' ' <<<"$_sec"); do O="$O.$i"; echo $O; done; done`' .ALL' + _tpl="$1" + CLEANTPLNAME=$(echo "$_tpl" | sed 's/^[\-\+\~]//') + if [ "$LANGUAGE" = '' ] + then + LANGUAGE_SUFFIX='' + TRANSLATE_REGEX='s/(translate:\(.*\):)/\1/' + else + LANGUAGE_SUFFIX=".$LANGUAGE" + TRANSLATE_REGEX=`grep "^$LANGUAGE[[:space:]]" "#translate" "#translate$LANGUAGE_SUFFIX" "#translate$_tpl" "#translate$_tpl$LANGUAGE_SUFFIX" 2> /dev/null | sed 's/^[^\t]*\t\t*\([^\t]*\)\t\t*\(.*\)$/s|(translate:\1:)|\2|g;/'`'s/(translate:\(.*\):)/\1/' + fi + OF="$OUT"/"$CLEANTPLNAME""$LANGUAGE_SUFFIX""$PAGE_SUFFIX" + echo "Compiling $CLEANTPLNAME -> $OF" + SECTIONS=`for _sec in $(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#section-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); do O=''; for i in $(tr . ' ' <<<"$_sec"); do O="$O.$i"; echo $O; done; done`' .ALL' # echo "Sections: $SECTIONS" - SECTIONS_REGEX=$(for _sec in $SECTIONS; do echo "s/(section==$_sec:\([^)]*\):)/\1/g;"; done; echo "s/(section==.*:.*:)//g") - MENU=$(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#menu-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); - [ "$MENU" = '' ] && MENU="$DEFAULT_MENU" - { - cat_file -$HEADER - [ -n "$MENU" ] && cat_file "$MENU" - [ -e -menu-mid ] && cat_file -menu-mid - cat_file $_tpl - [ "$CLEANTPLNAME" = 'FAQ' ] && gen_faq - [ "$CLEANTPLNAME" = 'NEWS' ] && gen_news - cat_file -$END - } | \ - sed "$SECTIONS_REGEX" | \ - sed "$TRANSLATE_REGEX" | \ - sed 's#href="[+~]\([^"\#(]*\)(same-language)\(\#*[^"]*\)"#href="\1'"$LANGUAGE_SUFFIX""$PAGE_SUFFIX"'\2"#g; s#href="(same-page)\([^"\#(]*\)\(\#*[^"]*\)"#href="'"$CLEANTPLNAME"'\1'"$PAGE_SUFFIX"'\2"#g; s#href="[+~]\([^"\#]*\)\(\#*[^"]*\)"#href="\1'"$PAGE_SUFFIX"'\2"#g; s#href="=\([^"]*\)"#href="\1"#g' > "$OF" + SECTIONS_REGEX=$(for _sec in $SECTIONS; do echo "s/(section==$_sec:\([^)]*\):)/\1/g;"; done; echo "s/(section==.*:.*:)//g") + MENU=$(grep --no-filename -- "^$_tpl[^a-zA-Z0-9-]" '#menu-index'* | sed 's/^[^ \t]*[ \t]*[ \t]//'); + [ "$MENU" = '' ] && MENU="$DEFAULT_MENU" + { + cat_file -$HEADER + [ -n "$MENU" ] && cat_file "$MENU" + [ -e -menu-mid ] && cat_file -menu-mid + cat_file $_tpl + [ "$CLEANTPLNAME" = 'FAQ' ] && gen_faq + [ "$CLEANTPLNAME" = 'NEWS' ] && gen_news + cat_file -$END + } | \ + sed "$SECTIONS_REGEX" | \ + sed "$TRANSLATE_REGEX" | \ + sed 's#href="[+~]\([^"\#(]*\)(same-language)\(\#*[^"]*\)"#href="\1'"$LANGUAGE_SUFFIX""$PAGE_SUFFIX"'\2"#g; s#href="(same-page)\([^"\#(]*\)\(\#*[^"]*\)"#href="'"$CLEANTPLNAME"'\1'"$PAGE_SUFFIX"'\2"#g; s#href="[+~]\([^"\#]*\)\(\#*[^"]*\)"#href="\1'"$PAGE_SUFFIX"'\2"#g; s#href="=\([^"]*\)"#href="\1"#g' > "$OF" } proc_raw() { - _tpl="$1" - CLEANTPLNAME=$(echo "$_tpl" | sed 's/^=//') - OF="$OUT"/"$CLEANTPLNAME" - echo "Compiling $CLEANTPLNAME -> $OF" - cat_file $_tpl > "$OF" + _tpl="$1" + CLEANTPLNAME=$(echo "$_tpl" | sed 's/^=//') + OF="$OUT"/"$CLEANTPLNAME" + echo "Compiling $CLEANTPLNAME -> $OF" + cat_file $_tpl > "$OF" } for i in +$TEMPLATES_PAGE \~$TEMPLATES_DYN do - [ -f "./$i" ] && proc_page "$i" + [ -f "./$i" ] && proc_page "$i" done for i in =$TEMPLATES_RAW do - [ -f "./$i" ] && proc_raw "$i" + [ -f "./$i" ] && proc_raw "$i" done exit 0; |
