[Refdb-cvs] CVS: refdb/scripts runbib.in,1.14.2.2,1.14.2.3
Status: Beta
Brought to you by:
mhoenicka
From: Markus H. <mho...@us...> - 2004-09-12 21:08:19
|
Update of /cvsroot/refdb/refdb/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4126/scripts Modified Files: Tag: Release_0_9_5_stable runbib.in Log Message: added support for css files Index: runbib.in =================================================================== RCS file: /cvsroot/refdb/refdb/scripts/runbib.in,v retrieving revision 1.14.2.2 retrieving revision 1.14.2.3 diff -u -U2 -r1.14.2.2 -r1.14.2.3 --- runbib.in 8 Sep 2004 20:19:59 -0000 1.14.2.2 +++ runbib.in 12 Sep 2004 21:08:10 -0000 1.14.2.3 @@ -15,4 +15,5 @@ citlistx="<myrefdblib>/xsl/citations.xsl" db2teix="<myrefdblib>/xsl/bibdb2tei.xsl" +makecss="<myrefdblib>/xsl/makecss.xsl" teihtml="<myrefdblib>/xsl/tei-refdb-xsl/tei-html/tei-refdb-html.xsl" teifo="<myrefdblib>/xsl/tei-refdb-xsl/tei-fo/tei-refdb-fo.xsl" @@ -50,4 +51,5 @@ startnumber="1" numopt="" +cssfile="" # this allows to include or ignore marked sections in the SGML file @@ -75,26 +77,53 @@ # one html stylesheet and one fo stylesheet by importing the proper # refdb xsl stylesheets. DocBook gets an additional xhtml stylesheet +# we'll also create a CSS file for all (x)html output local basename=${1%.*} - if [ $2 = "TEI" ]; then - echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teihtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&&' < $1 > $basename.html.xsl" | sh - echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teifo\"/>&' < $1 > $basename.fo.xsl" | sh - elif [ $2 = "DOCBOOK" ]; then - echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&&' < $1 > $basename.html.xsl" | sh - echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkxhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&&' < $1 > $basename.xhtml.xsl" | sh - echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkfo\"/>&' < $1 > $basename.fo.xsl" | sh + $myxsltproc $makecss $1 > $basename.css + +# todo: test whether $cssfile is an url + if [ -n "$cssfile" ] && [ "$cssfile" != "$basename.css" ]; then + if [ $2 = "TEI" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teihtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$cssfile</xsl:param>&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teifo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + elif [ $2 = "DOCBOOK" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$cssfile</xsl:param>&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkxhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$cssfile</xsl:param>&' < $1 > $basename.xhtml.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkfo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + fi + elif [ -s "$basename.css" ]; then + if [ $2 = "TEI" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teihtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$basename.css</xsl:param>&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teifo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + elif [ $2 = "DOCBOOK" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$basename.css</xsl:param>&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkxhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&<xsl:param name=\"html.stylesheet\">$basename.css</xsl:param>&' < $1 > $basename.xhtml.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkfo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + fi + else + if [ $2 = "TEI" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teihtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$teifo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + elif [ $2 = "DOCBOOK" ]; then + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&&' < $1 > $basename.html.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkxhtml\"/>& ; s&<!-- REFDBBIBSTYLE -->.*<!-- /REFDBBIBSTYLE -->&& ; s&<!--CSSFILE/-->&&' < $1 > $basename.xhtml.xsl" | sh + echo "sed 's&<!-- REFDBSTYLESHEET -->.*<!-- /REFDBSTYLESHEET -->&<xsl:import href=\"$docbkfo\"/>& ; s&<!--CSSFILE/-->&&' < $1 > $basename.fo.xsl" | sh + fi fi + rm $1 } # read the command line options -while getopts ":d:E:hi:IN:p:S:t:u:w:" opt; do +while getopts ":d:E:G:hi:IN:p:S:t:u:w:" opt; do case $opt in d ) databaseopt="-d "$OPTARG;; E ) encodingopt="-E "$OPTARG;; + G ) cssfile=$OPTARG;; h ) echo "creates refdb bibliography from a SGML, XML, or Latex document" - echo 'usage: runbib [-d database] [-E encoding] [-h] [-i includevar] [-I] [-N number] [-S style] [-t type] [-u username] [-w password] file1 [file2...]' + echo 'usage: runbib [-d database] [-E encoding] [-G cssfile] [-h] [-i includevar] [-I] [-N number] [-S style] [-t type] [-u username] [-w password] file1 [file2...]' echo "Options: -d select default database" echo " -E set output character encoding" + echo " -G set the path or URL of a CSS file for (x)html output" echo " -h print this help and exit" echo " -i specify variable to include marked sections" @@ -114,5 +143,5 @@ u ) username=$OPTARG;; w ) passwd=$OPTARG;; - \? ) echo 'usage: runbib [-d database] [-h] [-i includevar] [-I] [-N number] [-S style] [-t type] [-u username] [-w password] file1 [file2...]' + \? ) echo 'usage: runbib [-d database] [-G cssfile] [-h] [-i includevar] [-I] [-N number] [-S style] [-t type] [-u username] [-w password] file1 [file2...]' echo 'type runbib -h to invoke help' exit 1;; |