Source

Website Meta Language / src / ANNOUNCE


  A N N O U N C E
  ===============

  This file is the official announcement message for major WML releases.
  It gets posted to the following Newsgroups:

  NEWSGROUPS (REGULAR)
  --------------------
  Subject:   ANNOUNCE: Website META Language (WML) 2.0
  Newsgroup: comp.infosystems.www.servers.unix,
             comp.infosystems.www.authoring.html
             sdm.announce
  
  NEWSGROUPS (MODERATED)
  ----------------------
  Subject:   SOFTWARE: Website META Language (WML) 2.0
  To:        www-announce@boutell.com
  Subject:   Website META Language (WML) 2.0
  To:        linux-announce@news.ornl.gov

  -------------------------------------------------------------------
  __        ___  __ _     
  \ \      / / \/  | |     Website META Language, Version 2.0
   \ \ /\ / / |\/| | |     http://www.engelschall.com/sw/wml/
    \ V  V /| |  | | |___   ftp://ftp.engelschall.com/sw/wml/
     \_/\_/ |_|  |_|_____| 

                 Ralf S. Engelschall     Denis Barbier
                 rse@engelschall.com     barbier@engelschall.com

  WML is a free and extensible Webdesigner's off-line HTML generation toolkit
  for Unix, distributed under the GNU General Public License (GPL v2). It is
  written in ANSI C and Perl 5, build via a GNU Autoconf based source tree
  and runs out-of-the-box on all major Unix derivates. It can be used free
  of charge both in educational and commercial environments.
  
  WML consists of a control frontend driving up to nine backends in a
  sequential pass-oriented filtering scheme. Each backend provides one
  particular core language. While not trivial and idiot proof WML provides
  most of the core features real hackers always wanted for HTML generation: 

    Pass 1: Source Reading and Include File Expansion (backend: IPP)
    Pass 2: High-Level Macro Construct Expansion      (backend: mp4h)
    Pass 3: Perl Programming Construct Expansion      (backend: ePerl)
    Pass 4: Low-Level Macro  Construct Expansion      (backend: GNU m4)
    Pass 5: Diversion Filter                          (backend: Divert)
    Pass 6: Character and String Substitution         (backend: ASubst)
    Pass 7: HTML Tag Fixup                            (backend: HTMLfix)
    Pass 8: HTML Tag and Plain Text Stripping         (backend: HTMLstrip)
    Pass 9: Output Slicing and Final Target Writing   (backend: Slice)

  WML can be used both trivially like
     $ wml <page.wml >page.html
  to create a single output page and in an advanced way like
     $ wml -o '(ALL-LANG_*)uLANG_EN:page.en.html@u+x' \
           -o '(ALL-LANG_*)uLANG_EN:page.de.html@u+x' page.wml
  to create two output pages from a single multi-lingual source.

  For maximum power WML already ships with a well-suited set of include files
  which provide high-level features build on top of the backends core
  languages. Some topics the shipped include files already address:
  
    - generation of URLs through auto-adjustment variables
    - generation of typographically strong headlines via images
    - generation of typographically strong text rendering
    - generation of typical direction+color based background images
    - generation of 1pt dot-images for layout spacing tricks
    - generation of `lowsrc' images
    - generation of flexible grammar-based navigation bars
    - generation of rollover-style image-buttons
    - generation of hyperlinks via simplified tags
    - generation of typical page environments
    - generation of standard page information
    - generation of table structures by grids or positions
    - generation of table-based rectangular boxes
    - generation of verbatim, ISO-Latin-1 and URL-sensitive areas
    - generation of HTML via inlined POD, SDF and structured ASCII Text areas
    - generation of tags in forced lower or upper case
    - generation of inlined client-side out of external server-side imagemaps
    - generation of multi-lingual webpages or other variants through slicing
    - generation of table of contents out of header tags
    - generation of pages via include files acting as templates
    - generation of content statistics for resulting webpages
    - ...

  The same way you can write your own custom HTML tagsets for WML to extend
  its functionality for your particular needs. WML is not a closed toolbox,
  it's only the core upon which you can base your Unix HTML generation
  environment.