Design Studio
Web Tools
  • FTPSync
  • SSB
  • Random
  • Links
    Z Cars Ring

      SSB : Simple Site Builder  

    Download SSB V1.1 (file: size: 26,107 bytes)

    SSB builds simple web sites using templates and the rules about how tags within those templates should be replaced.

    Usage: SSB  [-m <makefile name>]
    [-r(emove extra spaces)]
    [-f(orce remake)]
    [<space separated file list to make>]

    Default makefile name is 'makefile.ssb'

    Following is a structure of the makefile:

    <file contents>  ::= <header> <output file list>
    <header>  ::= "InputDir  = " <path>
    "OutputDir = " <path>
    <output file list>  ::= <output file rule>
    [<output file rule>]
    <output file rule>  ::= <file name> "=" <argument>
    <argument>  ::= "file " <file name> |
    "text " <text> |
    <template>  ::= "template" <argument>
    "{" <template params> "}"
    <template params>  ::= <template param>
    [<template param>]
    <template param>  ::= <template tag name> ":" <argument>

    Tag names in the template, should be places between starting "<!--[" and closing "]-->>" strings. "<!--[title]-->"

    File names can contain ONLY RELATIVE path to the corresponding input or output directory. Text which contains space, '"', '=', '{', '}' or ':' characters should be placed in the double quotes. Two sequential double quote characters in the text will be replaced by one double quote character.

    Comments start with "//"

    The idea is to design a template (or pattern) how your web site should look and then for each page replace the title, body, menu, sub-menu, keywords or similar tags.

    Here is a sample template (lets call it 'main.htm'):

    <title>My Small Web Site - <!--[title]--></title>
    <meta name="Description" content="<!--[description]-->">
    <meta name="Classification" content="<!--[keywords]-->">
    <meta name="KeyWords" content="<!--[keywords]-->">







    Now you can describe your site map in the 'makefile.ssb' file:

    // Makefile for Simple Site Builder

    InputDir  = "c:/MySite/Templates"
    OutputDir = "c:/MySite/LocalHome"

    //*** Main Page

    index.html = template file main.htm {
        title : text "Home"
        description : text "My home page"
        body : file "body.htm"
        menu : file "menu.htm" }

    //*** Links Page

    links.html = template file main.htm {
        title : text "Links"
        description : text "My favorite links page"
        body : file "links.htm"
        menu : file "menu.htm" }


  • If you are using complex directory structure it is usefull to put all references to your local files in the main template file as "<!--[root]-->images/image.gif". Later, you can replace root tag with "../" or "../../" or just leave it empty based on the location of you target file.

  • Remove extra spaces option is useful for minimizing output files size.

  • Use nested templates.

    © 1999

  • Hosting by WebRing.