From: rse@engelschall.com (Ralf S. Engelschall)
Subject: Website META Language (WML) 1.6
Date: Fri, 20 Feb 1998 09:15:02 GMT
-----BEGIN PGP SIGNED MESSAGE-----
__ ___ __ _
\ \ / / \/ | | Website META Language, Version 1.6
\ \ /\ / / |\/| | | Copyright (c) 1996,1997,1998 Ralf S. Engelschall
\ V V /| | | | |___ http://www.engelschall.com/sw/wml/
\_/\_/ |_| |_|_____| ftp://ftp.engelschall.com/sw/wml/
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: Meta-HTML)
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.
Ralf S. Engelschall
rse@engelschall.com
www.engelschall.com
- --
This article has been digitally signed by the moderator, using PGP.
http://www.iki.fi/mjr/cola-public-key.asc has PGP key for validating signature.
Send submissions for comp.os.linux.announce to: linux-announce@news.ornl.gov
PLEASE remember a short description of the software and the LOCATION.
This group is archived at http://www.iki.fi/liw/linux/cola.html
-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: latin1
iQCVAgUBNO1JllrUI/eHXJZ5AQFD/gQAwPMaLjkS9l9Fcl6j4ez8rl7Bvr2SjeC7
ntWas9mYWE24N/syBF5B1vi28OjLdByHc2eQv11dUaXGsc9DOq7Q3tbkmlYGtuv6
5HtM+phg8DV6i9w+fAsDBv/q0k3DAO84eC9tYpuBNf1OsT5Fg0P+2GM3hzZh28wW
FMtsmCLY7YI=
=b5t1
-----END PGP SIGNATURE-----