VorigeSectie [ Webmaster , 3 - Over de RGD WWW server ] SectieVolgende

Sectie 3.4 - Hulpmiddelen

Top van dit scherm document.

1 Public domain hulpmiddelen

De hiervoor beschreven Ontwerp uitgangspunten (3.3) werden gerealiseerd met een aantal tools, die alle op het Internet vrij verkrijgbaar zijn. Voor de conversie van WordPerfect documenten (en Word) werd het zeer handige conversie programma Wp2Html gebruikt, dat weliswaar niet public domain is, maar slechts enkele (Engelse) ponden kost. Met dit programma is bv. de voorconversie van het CCCEE document gedaan (oorspronkelijk in Word en via WP 5.1 DOS format geconverteerd).

[1] Weblint 1.017 [HTML 2.0/3.0/Netscape syntax checker in Perl]
Neil Bowers, Canon Research Centre Europe, Ltd.
URL: http://www.cre.canon.co.uk/~neilb/weblint/
[2] analog [vergaart statistieken van WWW gebruik]
Stephen Turner (University of Cambridge Statistical Laboratory)
URL: http://www.statslab.cam.ac.uk/~sret1/analog/
[3] Netscape [meest populaire WWW browser]
Netscape Communications
URL: http://home.netscape.com
[4] Mosaic [freeware grafische WWW browser]
National Center for Supercomputing Applications (NCSA)
URL: http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html
[5] Lynx [freeware character-based browser]
University of Kansas (oorspronkelijk)
URL: http://lynx.browser.org/
[6] InternetWorks [freeware grafische WWW browser]
NaviSoft, Inc. (subsidiary of America Online)
URL: ftp://ftp.booklink.com/beta
[7] Perl [freeware programmeer hulpmiddel]
Larry Wall (NASA Jet Propulsion Laboratories)
URL: http://www.cis.ufl.edu/perl/ of
URL: http://www.khoros.unm.edu/staff/neilb/perl/ of
URL: http://www.perl.com/
[8] Mapedit [software hulpmiddel voor clickable images]
Thomas Boutell
URL: http://www.boutell.com/mapedit/
[9] Giftool [software hulpmiddel voor bewerking van GIF files]
Home Pages, Inc.
URL: http://www.homepages.com/tools/giftool

2 Zelfgeschreven scripts

Verder worden er een aantal zelfgebrouwen scripts gebruikt voor diverse taken. We geven van een aantal daarvan (partiële) listings.

Dit C shell script hernoemt '.htm' files naar '.html':

#!/bin/csh
# htm2html.csh: rename .htm file(s) to .html in current directory.
echo '.htm  ->  .html'
foreach f ( *.htm )
    echo "/bin/mv -f ${f:r}.htm ${f:r}.html"
          /bin/mv -f ${f:r}.htm ${f:r}.html
end

Het volgende C shell script vervangt een aantal patronen in html files. Een uitbreiding hierop zou bv. tags in lower case naar upper case kunnen zetten. Overigens is Perl [7] voor dit soort zaken meer geschikt. Perl is echter niet standaard aanwezig op Unix systemen.

#!/bin/csh
# replhtml.sh: replace some patterns in all html file(s) in current directory
# -----------  and below (recurse).

foreach f ( `find . -name '*.htm' -print` )
    echo -n "    ${f}"
    if ( ! -w ${f} ) then
        echo error: can not replace ${f}
        exit 1
    endif
    cat < /dev/null > ${f}.$$
    if ( ! -f ${f}.$$ ) then
        echo error: can not write ${f}.$$
        exit 1
    endif
    sed -e 's/http:\/\/internal.machine.name/http:\/\/www.rgd.nl/g' \
        $f > ${f}.$$

    /bin/mv -f ${f}.$$ $f
    echo ''
end

Dit Bourne shell script converteert een ascii file naar HTML, rekening houdend met bijzondere characters als ">". En passant wordt ook een DOS ascii file geconverteerd. Let op: de ^M en ^Z in dit script moeten de werkelijke control characters zijn!

U kunt ook kiezen voor download ascii2html.sh

#!/bin/sh
#
# ascii2html.sh: Bourne shell script.
# Converts ascii file(s) to HTML.
# ALERT!! Replaces the ascii file with the HTML file.
#
# Features:
# 1. Converts the file to an IETF HTML 2.0 file.
# 2. All ascii text is put in a <PRE> formatted block.
# 3. The special characters '&', '<' and '>' are converted to
#    &amp;', '&lt;' and '&gt' respectively.
# 4. Strip decimal 127 and higher from files by replacing it with a space;
#    this is not a bug, we're converting _ascii_, right ;-].
# 5. Replace carriage return and control-Z with nothing (effectively
#    converts a DOS file to Unix newline conventions).
#
# All this is done in a special order, so even Dos files turn out right
# under Unix. Tested under Linux 2.0 only.
#
# Eric Maryniak, e.maryniak@rgd.nl
# 1996-10-25
#
# Other users than me should change "webmaster@rgd.nl" to an appropiate
# e-mail address. Btw, a LINK makes weblint happy ;-)

# Hi there !
echo 'Ascii to HTML converter - Eric Maryniak'

# Internal checks.
MV="/bin/mv"
if [ ! -f /bin/mv ]; then
    echo 'Help, /bin/mv does not exist !'
    exit 1
fi

# If no arguments given, quit.
if [ $# -eq 0 ]; then
    echo 'Usage: ascii2html.sh file1 [ file2 ... ]'
    exit 1
fi

# Verify existence of files.
for f in $* ; do
    if [ ! -f $f ]; then
        echo Error: file \`$f\' does not exist.
        exit 1
    fi
    if [ ! -w $f ]; then
        echo Error: file \`$f\' is not writable \(cannot convert it\).
        exit 1
    fi
done

TEMPIE=ascii2html.sh.$$

for f in $* ; do
    echo -n "Processing \`$f' ..."
    cat <<EOHEAD1 > $TEMPIE
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML>
<HEAD>
<LINK REV=MADE HREF="mailto:webmaster@rgd.nl">
EOHEAD1
    echo "<TITLE>$f: converted from ascii to html</TITLE>" >> $TEMPIE
    echo "<!-- On ISO 8601:1988 date/time: `date '+%Y-%m-%d %H:%M:%S'` -->" >> $TEMPIE
    echo "<!-- By ascii2html.sh, (c) Eric Maryniak, e.maryniak@rgd.nl -->" >> $TEMPIE
    echo "<!-- Conforms to weblint 1.017 and sgmls 1.1.91 -->" >> $TEMPIE
    cat <<EOHEAD2 >> $TEMPIE
</HEAD>
<BODY>
<PRE>
EOHEAD2
# En passant convert a DOS type file as well.
# Note that the "^M" and "^Z" are control characters!
# In vi you can insert control characters with ^V (in insert mode).
# Also replace 8-bit characters with a space (_ascii_ to html!).
    sed -e 's/^M//' -e 's/^Z//' -e 's/&/&amp;/g' $f | \
    sed -e 's/</\&lt;/g' -e 's/>/\&gt;/g'           | \
    tr  '\177-\377' ' '                             >> $TEMPIE
    cat <<EOBODY >> $TEMPIE
</PRE>
</BODY>
</HTML>
EOBODY
    if [ ! -f $TEMPIE ]; then
        echo Error: cannot write temporary file in current directory.
        exit 1
    fi
    $MV $TEMPIE $f
    echo ' done'
done

echo All files done\!

exit 0

 Zoeken in dit handboek


VorigeSectie [ Webmaster , 3 - Over de RGD WWW server ] SectieVolgende