diff options
Diffstat (limited to 'webgen')
| -rwxr-xr-x | webgen | 53 |
1 files changed, 53 insertions, 0 deletions
@@ -77,8 +77,57 @@ list_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` + ;; + 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" @@ -112,6 +161,10 @@ do list_tpls exit 0 ;; + '--list-dependencies') + list_dependencies $2 + exit 0 + ;; '--help') show_help exit 0 |
